Debian 系统是一各非常优秀的 Linux 操作系统,Ubuntu 是基于 Debian 的衍生版本,具有相同的包管理工具和系统命令。有时候我们需要给 Debian 系统的服务器添加用户,那么可以通过如下命令非常简单的操作。本篇演示默认在 root 用户下操作。
使用 adduser 添加用户
该命令是 Perl 脚本命令,可以交互式的创建用户,需要设置新用户密码,并同时创建同名用户组和家目录。
将该用户添加到 sudo 次组(主组名同用户名)中,使其具有 sudo 权限,命令如下
1 2 3
| usermod -a -G sudo jinzhongxu
gpasswd -a jinzhongxu sudo
|
从 sudo 组中删除用户
1
| gpasswd -d jinzhongxu sudo
|
使用 deluser 删除用户
有时候不想再使用用户了,可以删除用户,同时也可以删除该用户所有的文件,使用如下命令
1
| deluser --remove-all-files jinzhongxu
|
其他添加用户命令
其实,除了上面比较方面的 Perl 脚本命令,用更加强大的 Linux 命令 useradd 和 userdel 来添加用户和删除用户,但是,需要的参数比较多,记忆比较复杂,下面列出各参数
useradd 添加用户
-c 备注:备注出现在 /etc/passwd 第 5 项字段中
-d 用户主文件夹:指定用户登录所进入的目录,同时赋予用户对该目录的的完全控制权
-e 有效期:指定用户的有效期限。格式为 YYYY-MM-DD,信息存储在 /etc/shadow 中
-f 缓冲天数:限定密码过期后多少天,将该用户帐号停用
-g 主要组:设置用户所属的主要组
-G 次要组:设置用户所属的次要组,可设置多组
-M 强制不创建用户主文件夹
-m 强制建立用户主文件夹,并将 /etc/skel/ 当中的文件复制到用户的根目录下
-p 密码:设置用户密码
-s shell:指导用户登录 shell
-u uid:指定用户标志符 user id,即 uid
建一个带有家目录并且可以登录 bash 的用户
1
| useradd -m -s /bin/bash jinzhongxu
|
指定创建用户家目录的路径
1
| useradd -m -d /home/jinzhongxu jinzhongxu
|
创建时把用户加入不同的用户组
1
| useradd -m -G sudo jinzhongxu
|
创建类似于 adduser 方法的用户
1
| useradd -m -s /bin/bash -d /home/jinzhongxu -G sudo jinzhongxu
|
创建用户的同时设置密码
1 2 3 4 5 6
| useradd -m -s /bin/bash -d /home/jinzhongxu -G sudo -p "$(openssl passwd -1 121212)" jinzhongxu
useradd -m -s /bin/bash -d /home/jinzhongxu -G sudo -p `openssl passwd -1 -salt 'salt' 121212` jinzhongxu
echo "jinzhongxu:121212" | sudo chpasswd
|
userdel 删除用户
锁定账号
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| passwd -l jinzhongxu
passwd -u jinzhongxu
passwd --status jinzhongxu passwd -S jinzhongxu
man passwd
passwd [-l] [-u] [-S] [-n 日数] [-x 日数] [-w 日数] [-i 日期] 帐号 功能选项与参数: -l :是 Lock 的意思,会将 /etc/shadow 第二栏最前面加上 ! 使密码失效; -u :与 -l 相对,是 Unlock 的意思! -S :列出密码相关参数,亦即 shadow 文件内的大部分信息。--status -n :后面接天数,shadow 的第 4 字段,多久不可修改密码天数 -x :后面接天数,shadow 的第 5 字段,多久内必须要更动密码 -w :后面接天数,shadow 的第 6 字段,密码过期前的警告天数 -i :后面接“日期”,shadow 的第 7 字段,密码失效日期
|
强制用户登录时改密码
1 2 3 4 5 6 7 8 9 10 11 12 13
| chage -d 0 jinzhongxu
chage [-ldEImMW] 帐号名 选项与参数: -l :列出该帐号的详细密码参数; -d :后面接日期,修改 shadow 第三字段(最近一次更改密码的日期),格式 YYYY-MM-DD -E :后面接日期,修改 shadow 第八字段(帐号失效日),格式 YYYY-MM-DD -I :后面接天数,修改 shadow 第七字段(密码失效日期) -m :后面接天数,修改 shadow 第四字段(密码最短保留天数) -M :后面接天数,修改 shadow 第五字段(密码多久需要进行变更) -W :后面接天数,修改 shadow 第六字段(密码过期前警告日期)
|
账号信息更正
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| usermod [-cdegGlsuLU] username 选项与参数: -c :后面接帐号的说明,即 /etc/passwd 第五栏的说明栏,可以加入一些帐号的说明。 -d :后面接帐号的主文件夹,即修改 /etc/passwd 的第六栏; -e :后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 内的第八个字段数据啦! -f :后面接天数,为 shadow 的第七字段。 -g :后面接初始群组,修改 /etc/passwd 的第四个字段,亦即是 GID 的字段! -G :后面接次要群组,修改这个使用者能够支持的群组,修改的是 /etc/group 啰~ -a :与 -G 合用,可“增加次要群组的支持”而非“设置”喔! -l :后面接帐号名称。亦即是修改帐号名称, /etc/passwd 的第一栏! -s :后面接 Shell 的实际文件,例如 /bin/bash 或 /bin/csh 等等。 -u :后面接 UID 数字啦!即 /etc/passwd 第三栏的数据; -L :暂时将使用者的密码冻结,让他无法登陆。其实仅改 /etc/shadow 的密码栏。 -U :将 /etc/shadow 密码栏的 ! 拿掉,解冻啦!
|
账号说明信息
下面的命令都是让一般使用者修改 /etc/passwd 这个系统文件的。
查看账号信息
1 2 3 4 5 6 7
| sudo apt install finger
finger [-s] username 选项与参数: -s :仅列出使用者的帐号、全名、终端机代号与登陆时间等等; -m :列出与后面接的帐号相同者,而不是利用部分比对 (包括全名部分),默认参数
|
更改账号说明信息
1 2 3 4 5 6
| chfn [-foph] [帐号名] 选项与参数: -f :后面接完整的大名; -o :您办公室的房间号码; -p :办公室的电话号码; -h :家里的电话号码!
|
更改账号登录 shell
1 2 3 4 5 6 7 8 9
| chsh [-s] 选项与参数: -s :设置修改 Shell 啰
cat -n /etc/shells
chsh -s /bin/zsh
|