Ubuntu系统admin用户名
在Ubuntu安装过程中,有一个创建用户帐号的步骤,也就是创建一个可以通过 sudo 切换为 root 的用户帐号。但是,因为在某些Linux预设中 admin 是一个保留的系统组名,所以安装程序不允许创建 admin 帐号。
但是,我在 FreeBSD 以及 RedHat Linux 中通常都设置一个 admin 帐号来作为日常用户帐号,不仅通用而且明确是用于可以通过 sudo 升级为 root 的特定帐号。
例如,在FreeBSD系统中,我使用 admin 帐号的id如下:
在FreeBSD中当前admin用户的id
uid=1000(admin) gid=1000(admin) groups=44(video),1000(admin)
而对比Ubuntu系统,当前我在Installer过程中创建的 huatai 帐号的id如下:
在Ubuntu中当前huatai用户的id
uid=1000(huatai) gid=1000(huatai) groups=1000(huatai),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),101(lxd)
可以看到其实两者用户的id是完全一致的(uid/gid都是1000),差别仅在名字上(强迫症不能忍),所以调整Ubuntu的用户名相对比较简单。
激活
root登录:sudo passwd root,这样确保能够只使用root登录系统,完全在系统中退出huatai帐号就能够修改名字如果通过 ssh服务 远程登录系统,还需要配置
/etc/ssh/sshd_config确保PermitRootLogin设置正确(默认是prohibit-password),也就是需要为root用户添加密钥认证,以便能够远程登录先确保
root用户能够登录系统(本地或ssh),然后退出所有以huatai用户登录的会话:
在root用户直接登录的会话里面杀掉所有huatai的会话
pkill -u huatai
修改组名:
修改组名
# -n 参数表示 --new-name NEW_GROUP
groupmod -n admin huatai
修改用户名以及HOME目录: 会同步修改
/etc/passwd中登录名,并将/home/huatai重命名为/home/admin
修改用户名
# -l 表示 --login NEW_LOGIN 即修订成新的登录名
# -d 表示 --home HOME_DIR 即修订成新的HOME目录
# -m 表示 --move-home 移动home目录的内容到新的位置,只能和 -d 参数配合使用
usermod -l admin -d /home/admin -m huatai
(可选)修改用户的Full Name:
修改用户的Full Name
chfn -f "Admin" admin
其他需要检查:
需要对系统做一些检查,确保不因为修改用户名影响运行
# 检查HOME目录下是否有脚本引用了旧路径
grep -r "/home/huatai" /home/admin
# 检查 /etc/sudoers 是否有配置旧用户名的设置,通常只要admin用户在 sudo 组就能满足设置
groups admin
# 确保输出中包含 sudo
# 部分桌面环境(如 GNOME)可能会缓存旧的头像或显示名称
# 刷新账号服务缓存
systemctl restart accounts-daemon