掌握Shell用户管理,让你的系统运行更顺畅!_docker

用户帐号

帐号操作主要是增、删、改、禁。Linux 系统提供了底层的 useradduserdel 和 usermod 来完成相关操作,也提供了进一步的简化封装:adduserdeluser。为了避免混淆,咱们这里只介绍最底层的指令,这些指令设计上已经够简洁明了方便。

由于只有系统管理员才能创建新用户,请确保以 root 帐号登录或者可以通过 sudo 切换为管理员帐号。


添加

创建家目录并指定登录 Shell:

# useradd -s /bin/bash -m test
# groups test
test : test

并加入所属组:

# useradd -s /bin/bash -m -G docker test
# groups test
test : test docker


删除

删除用户以及家目录等:

# userdel -r test


修改

常常用来修改默认的 Shell:

# usermod -s /bin/bash test

或者把用户加入某个新安装软件所属的组:

# usermod -a -G docker test

修改登录用户名并搬到新家:

# usermod -d /home/new_test -m -l new_test test


禁用

如果想禁用某个帐号:

# usermod -L test
# usermod --expiredate 1 test


用户口令

口令操作主要是设置、删除、修改和禁用。Linux 系统提供了 passwd 命令来管理用户口令。


设置

设置用户 test 的初始密码:

$ passwd test
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully


删除

让用户 test 无须密码登录(密码为空):

$ passwd -d test

这个很方便某些安全无关紧要的条件下(比如已登录主机中的虚拟机),可避免每次频繁输入密码。


修改

$ passwd test
Changing password for test.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully


禁用

禁止用户通过密码登录:

$ passwd -l user

为了安全起见或者为了避免暴力PJ,我们通常可以禁用密码登录,而只允许通过 SSH Key 登录。

如果要真地禁用整个帐号的使用,需要用上一节提到的 usermod --expiredate 1

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: shell