Linux用户管理命令
2019-12-11 本文已影响0人
LiuShaodong
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须向系统管理员申请账号,然后在相应的账号下操作。
创建/修改/删除新用户
useradd -m -g 组名 用户名 # -m 会自动创建用户的 /home/user 目录,并设置相应的目录权限,-g 指定用户所在的组,如果不指定组,系统会自动创建一个与用户名同名的组
sudo useradd -m -g dev liushaodong # 新建一个 liushaodong 用户放到 dev 组
sudo passwd liushaodong # 对新建的 liushaodong 用户设置密码
sudo usermod -g 组名 用户名 # 修改用户的主组,用户的主组是在创建用户的时候指定的,通常不会去修改用户的主组
sudo usermod -G 附加组名 用户名 # 将用户添加到附加组中
sudo usermod -G sudo liushaodong # 把liushaodong添加到sudo组中,让其具备使用sudo以root身份执行命令的权限
注意,新建的用户信息会保存在/etc/passwd
文件中,如果我们在新建用户的时候忘记了指定-m
,那么建议直接删除该用户重新建,因为后续的新建/home/user
目录等将会是一个非常繁琐的过程
sudo userdel -r 用户名 # `-r` 选项会自动删除用户的/home/user目录
sudo groupadd test # 创建一个test组
sudo groupdel test # 删除test组
id # 查看用户信息
- id [用户名] # 查看用户的 uid 和 gid 信息,如果省略用户名则为查当前用户的信息
- uid为用户标识,gid为组标识,uid保存在 /etc/passwd中,gid保存在 /etc/group中
- id liushaodong # uid = 1001(liushaodong) gid = 1001(dev) groups = 1001(dev)
who # 查看所有活跃的用户列表
whoami # 打印当前用户名
which # 查看执行命令的所在位置
which ls # 查看ls命令所在为位置
在Linux中,绝大多数的可执行文件都是保存在 /bin; /sbin; /usr/bin; /usr/sbin
- /bin(binary) # 二进制执行文件目录,主要用于具体应用
- /sbin(system binary) # 系统管理元专用的二进制代码存放目录,主要用于系统管理
- /usr/bin(user commands for applications) # 后期安装的一些软件
- /usr/sbin(super user commands for applications) # 超级用户的一些管理程序
su # 切换用户
su - 用户名 # 切换到指定用户的 /home/user 目录下,“-” 代表切换到指定用户的 /home/user目录,如果省略用户名,则默认切换到 root 用户
exit # 退出当前登陆的账户