- 用户创建与密码设置
- Linux中新建用户使用
useradd
命令,只有root
用户才能执行,若useradd
命令直接输入不管用,可使用绝对路径/usr/sbin/useradd
。 - 设置用户登录密码使用
passwd
命令。
- Linux中新建用户使用
su
命令相关su
代表switch user
,用于切换用户。- 切换用户的方式不同会影响环境变量的加载,
login-shell
方式(su - <user_name>
)会加载目标用户的环境变量和设置,non-login-shell
方式(su <user_name>
)使用当前用户的环境变量和设置。 - 通过
su -
可默认切换到root
用户,su - <user_name>
可切换到指定用户。 su -c "指令串"
可以在当前用户下以另一个用户的方式执行命令,执行后返回当前用户。
sudo
命令相关sudo
的英文全称是super user do
,用于以超级用户(root
用户)的方式执行命令。- 用户能否使用
sudo
命令取决于/etc/sudoers
文件的设置。 - 只有
root
用户有权限使用visudo
命令编辑/etc/sudoers
文件,该文件有特定语法,不能直接用vim
或vi
编辑。 sudo
命令使用时,若设置了无需密码则可直接执行,否则需输入当前用户密码,两次相邻sudo
操作,间隔在5min
内,第二次无需重新输入密码。sudo su -
和sudo -i
可切换到root
用户,需提供当前用户密码。
- 二者差异
su -
切换到root
用户需提供root
账户密码;sudo su -
切换到root
用户需提供当前用户密码。对于多用户系统,sudo
方式更安全,因为不需要暴露root
账户密码,且root
可通过/etc/sudoers
文件控制哪些用户可切换到root
。
命令使用方法
- 用户创建与密码设置
- 创建用户:
useradd -m <user_name>
(-m
参数用于创建用户主目录),如root@VM-0-14-ubuntu:~# useradd -m test_user
- 设置密码:
passwd <user_name>
,如root@VM-0-14-ubuntu:~# passwd test_user
- 创建用户:
su
命令使用方法- 切换用户(
login-shell
方式):su - <user_name>
,如ubuntu@VM-0-14-ubuntu:~$ su - test_user
- 切换用户(
non-login-shell
方式):su <user_name>
,如ubuntu@VM-0-14-ubuntu:~$ su
(默认切换到root
用户) - 以其他用户方式执行命令:
su -c "指令串"
,如ubuntu@VM-0-14-ubuntu:~$ su -c "tail -n 4 /etc/shadow"
- 切换用户(
sudo
命令使用方法- 以
sudo
执行命令:sudo <命令>
,如ubuntu@VM-0-14-ubuntu:~$ sudo tail -n 3 /etc/shadow
- 切换到
root
用户:sudo su -
或sudo -i
- 编辑
sudoers
文件:visudo
(只有root
用户有权限)
- 以
- 查看环境变量
env | grep <user_name>
用于查看指定用户相关的环境变量,如ubuntu@VM-0-14-ubuntu:~$ env | grep ubuntu
仅供参考学习,具体命令请登录官网。