目录
Linux用户管理
Linux创建用户命令
Linux中使用 useradd 命令来创建一个新用户。
命令格式格式:useradd [命令参数] 参数
常见命令参数:
- -d<登入目录>:指定用户登入时的启始目录;
- -D:查看或变更预设值;
- -g<群组>:指定用户所属的群组;
- -m:自动建立用户的登入目录;
- -M:不要自动建立用户的登入目录;
- -s:指定用户登入后所使用的shell。
useradd 必须以root权限才能执行,如果是普通用户想创建一个新用户时,需要在命令前加 sudo 命令来提升权限为root权限。
参数 | 说明 |
---|---|
GROUP | 指新创建的用户将被添加到用户组ID为100的公共用户组中 |
HOME | 指新创建的用户将在/home目录下创建一个HOME账户 |
INACTIVE | 指当密码逾期时,用户将不会被禁用 |
EXPIRE | 指新创建的用户不会在设定日期被设置为逾期 |
SHELL | 指新创建的用户使用/bin/sh(也就是bash)作为默认shell |
SKEL | 指系统会将/etc/skel目录中的内容复制到新创建的用户的HOME目录 |
CREATE_MAIL_SPOOL | 指系统不会在邮件目录中创建一个文件用于新创建用户账户接受邮件 |
Linux删除用户命令
Linux中使用userdel命令来删除一个已经存在的用户。
命令格式:userdel [命令参数] 参数
常见命令参数:
- -f:强制删除用户,即使用户当前已登录;
- -r:删除用户的同时,删除与用户相关的所有文件。
userdel 必须以root权限才能执行,如果是普通用户想使用该命令时,需要在命令前加 sudo 命令来提升权限为root权限。
Linux 用户密码管理
用户密码存放地及方式
Linux中用户的登录密码是存放在/etc/shadow
文件中,/etc/shadow
文件中存放的是加密过后的密码,所以在/etc/shadow
文件中看到的密码是加密过后的密文。
在第一个冒号和第二个冒号之间存放的是加密过后的密码,密码是以密文的方式存放,其中密文是由用户密码和其它信息加密后组成的,我们只需要知道如果第一个冒号和第二个冒号之间是*或者!或者空,则表示该用户没有密码,否则,则表示该用户是有密码。
使用passwd命令修改用户密码
命令格式:passwd [命令参数] 参数
常见命令参数:
- -d 删除密码;
- -l 停止账号使用;
- -S 显示密码信息。
passwd 必须以root权限才能执行,如果是普通用户想执行passwd时,需要在命令前加 sudo 命令来提升权限为root权限。
使用chpasswd命令修改用户密码
chpasswd命令通常是用于批量修改用户密码,从标准输入批量读取成对的用户名和密码,其中输入的用户名和密码的格式为用户名:密码
。
要批量更新用户密码,将用户名和密码写入到一个文件中,格式为:
cat 文件名
用户名1:密码1
用户名2:密码2
用户名3:密码3
......
然后执行执行如下命令来更新密码:
sudo chpasswd < 文件名
<
符号表示输入重定向,接下来的实训中我们会详细的介绍。
命令格式:chpasswd [命令参数] 参数
常见命令参数
- -e:输入的密码是加密后的密文;
- -h:显示帮助信息并退出。
chpasswd 必须以root权限才能执行,如果是普通用户执行时,需要在命令前加 sudo 命令来提升权限为root权限。
Linux用户权限切换
图形化界面登录
Linux中添加用户后,用户在图形界面登录系统的方式和Windows一样,都是选择要登录的用户后直接输入登录密码即可。
使用login命令登录
login 命令是让用户登录系统,可通过它的功能随时更换登入身份。当 /etc
目录里含名称为 nologin 的文件时,系统只允许root帐号登入系统,其他用户一律不准登入。
当使用 login 命令登录系统后,可以使用 logout 命令或者 exit 命令来退出当前用户登录,返回到登录前的用户状态。
命令格式:login [命令参数] 参数
参数为登录的用户名,可以不输入登录的用户名,直接输入login命令后回车,然后根据提示再输入用户名和密码。
常见命令参数
- -p:告诉 login 指令不销毁环境变量;
- -h:指定远程服务器的主机名。
login 必须以root权限才能执行,如果是普通用户执行时,需要在命令前加 sudo 命令来提升权限为root权限。
使用su命令切换用户身份
su 命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号的密码。
当使用 su 命令切换用户后,使用 exit 命令退出当前身份,返回原有登录用户身份。
注:如果当前用户身份是root,则使用su命令切换到其他用户的时候不需要相应用户的密码
命令格式:su [命令参数] 参数
参数为登录的用户名,如果没有参数,则默认切换为root用户。
常见命令参数
- -c<指令>或–command=<指令>:执行完指定的指令后,即恢复原来的身份;
- -l或–login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;
- -m,-p或–preserve-environment:变更身份时,不要变更环境变量;
- -s或–shell=:指定要执行的shell。
su 命令所有使用者都可以执行。