在 VMware Workstation Player 虚拟机上,我一直在尝试更改默认用户帐户名称“kali”。我尝试的命令是usermod -l newname kali
.但它给了我错误usermod: user kali is currently used by process 823
。在有人问之前,是的,我是在以 root 身份登录时执行此操作的。
答案1
您的问题是kali
仍然处于登录状态。
如果您以 身份登录到桌面环境(例如 gnome/kde)kali
,那么该用户将拥有一些图形进程。 kali
不得登录任何图形会话。
如果你使用的是 TTY,那么我猜你会遇到这样的情况:
kali ~ $ su root
root ~ # usermod -l newname kali
usermod: user kali is currently used by process 823
在本例中,您以 登录kali
,然后kali
拥有一个通过 登录的终端root
。如果你遇到ps -ef --forest
这种情况,它会看起来像这样:
kali 290538 1 ? /bin/sh -c i3-sensible-terminal
kali 290539 290538 ? \_ x-terminal-emulator
kali 290542 290539 pts/1 \_ /bin/bash
root 290697 290542 pts/1 \_ su root
root 290698 290697 pts/1 \_ bash
root 290711 290698 pts/1 \_ ps -ef --forest
您可以看到您是root
,但您也可以看到kali
仍然在堆栈中处于活动状态并拥有 root 正在运行的 shell。
如果您依赖桌面环境来访问终端,那么这里有两个选项:
- 创建
newname
、移动所有内容,然后删除kali
- 创建
tempuser
,注销kali
,登录tempuser
,执行您的操作usermod
,然后删除tempuser
答案2
以 root 身份登录,然后打开终端并运行
Kill -9 -u [旧用户名] && 用户名 -l [旧用户名] [新用户名]
之后运行
adduser [新用户名] sudo
能够使用新用户名运行 sudo 命令。
答案3
以 root 身份登录
cat /etc/passwd | grep kali
usermod -l [newusername] [kali]
然后重新启动并使用新用户名登录