所以,我最近在我的计算机上安装了一份新的 Parrot Security OS 副本,并弄乱了我的名字。有什么办法可以更改我的名字吗?我在谷歌上搜索过,但它只说“如何更改主机名”和“如何更改用户名”。那么有什么办法可以做到这一点吗?我对 Linux 也了解不少,我想我会理解任何必须做的事情。
答案1
要更改“全名”,请使用chfn
。
chin -f "Fred Foobar"
要更改帐户名,请使用usermod
。该用户需要完全注销(从技术上讲不需要,但您通常需要重新定位主目录以匹配)。
usermod -l fred -d /home/fred -m ferd
groupmod -n fred ferd
答案2
您的名字存储在 /etc/passwd 文件中,因此如果您编辑该文件并更新相关行上的相应字段,这将起作用。
执行此操作的“正确”方法是使用 vipw(即“sudo vipw”)。如果您没有安装 vipw,您可以以 root 身份编辑文件 /etc/passwd - 实际上,这在单用户系统上是可以的(vipw 会锁定密码文件,以防止多个用户同时尝试修改它)
/etc/passwd文件格式如下:
每个用户 1 行。字段以“:”字符分隔。第一个字段是用户名,然后是密码占位符,然后是用户 ID、组 ID,用户名、主目录和首选 shell。
(如果您感到疑惑,密码通常不存储在 /etc/passwd 中,而是存储在 /etc/shadow 中 - 这是一个遗留问题 - 25 年前,当我开始使用 Unix 时,加密密码保存在 /etc/passwd 中,但由于它是全世界可读的,所以这不是一个好主意。
这有一定的风险,所以我建议在编辑 passwd 文件之前先备份它,然后在另一个窗口/终端中,在仍然以 root 身份登录的情况下,确保在更改后可以登录。如果不能,请恢复到旧文件并重试。