05 Linux系统用户与组管理
Linux系统用户与组管理
-
用户信息管理
-
用户增删改查
-
用户权限管理
-
用户组管理
nginx / tomcat
用户登录
[root@myserver ~] #
-
用户名称@主机名称 位置 (可以使用 hostname命令查看当前的主机名)
- 代表的宿主目录, 用户的家目录 ~ == /root
#
超级管理员用户
$
普通用户
用户信息
id命令:
-
uid: 用户的id
-
gid: 用户所属的组的id
默认情况下创建了一个用户会有一个与用户同名的组。
whoami命令 返回当前的用户名称。
添加用户
useradd 命令
- -d 指定宿主目录位置
- -M 不创建宿主目录
- -u 指定uid
- -g 指定gid
- -s 指定shell
创建一个默认的用户 useradd xiaoxu
/etc/passwd
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
用户名
用户密码
用户id
组id
宿主目录
shell
root用户的组id和用户id都是0
查看系统中可用的shell,shell就是一个解释器。 shell命令
[root@myserver ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/bash 是默认分配给用户的。
/sbin/nologin 禁止登入系统。
练习useradd命令选项
useradd xiaob -u 1009 -g 1004 -M -s /sbin/nologin
创建用户xiaob uid=1009 gid=1004 不创建宿主目录 使用/sbin/nologin解释器,表示用户不能通过终端登陆
扩展查看文件内容
head -5 /etc/passwd 查看/etc/passwd文件的前5行
tail -5 /etc/passwd 查看/etc/passwd文件的后5行
用户切换
su 切换用户
su xiaoxu : 切换到xiaoxu用户
exit 退出当前用户
su xiaoxu -c id : -c运行的shell命令, 在不切换用户的情况下执行命令(用xiaoxu的用户执行命令,但是不会切换用户)
su - xiaoxu : 切换用户,并切换为用户的环境变量
实验验证禁止用户登录
[root@myserver home]# tail -5 /etc/passwd
rngd:x:975:973:Random Number Generator Daemon:/var/lib/rngd:/sbin/nologin
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
[root@myserver home]# su - xiaob
su: warning: cannot change directory to /home/xiaob: No such file or directory
This account is currently not available.
[root@myserver home]# su - xiaoa
su: warning: cannot change directory to /home/xiaoa: No such file or directory
[xiaoa@myserver home]$
实验指定用户的宿主目录
[root@myserver home]# useradd xiaoc -d /opt/xiaoc
[root@myserver home]# tail -2 /etc/passwd
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
xiaoc:x:1010:1010::/opt/xiaoc:/bin/bash
[root@myserver home]# su - xiaoc
[xiaoc@myserver ~]$ pwd
/opt/xiaoc
[xiaoc@myserver ~]$
删除用户
userdel 删除
userdel xiaoc : 删除xiaoc(用户的home目录数据还是存在的)
[root@myserver home]# tail -5 /etc/passwd
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
xiaoc:x:1010:1010::/opt/xiaoc:/bin/bash
[root@myserver home]# userdel xiaoc
[root@myserver home]# tail -5 /etc/passwd
rngd:x:975:973:Random Number Generator Daemon:/var/lib/rngd:/sbin/nologin
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
[root@myserver home]# ls /opt/
xiaoc
userdel -r xiaod : 连同宿主目录一并删除。
[root@myserver home]# userdel -r xiaod
[root@myserver home]# ls
vncserver vncuser xiaoc xiaoxu zeyang
[root@myserver home]# tail -5 /etc/passwd
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
xiaoc:x:1010:1010::/home/xiaoc:/bin/bash
修改用户属性
usermod
-d 修改home目录
[root@myserver ~]# usermod -d /opt/xiaoc xiaoc
[root@myserver ~]# tail -5 /etc/passwd
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
xiaoc:x:1010:1010::/opt/xiaoc:/bin/bash
-g 修改group
[root@myserver ~]# usermod -g 1004 xiaoc
[root@myserver ~]# tail -5 /etc/passwd
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/sbin/nologin
xiaoc:x:1010:1004::/opt/xiaoc:/bin/bash
-s 修改shell
[root@myserver ~]# usermod -s /bin/bash xiaob
[root@myserver ~]# tail -5 /etc/passwd
vncserver:x:1003:1003::/home/vncserver:/bin/bash
xiaoxu:x:1004:1004::/home/xiaoxu:/bin/bash
xiaoa:x:1008:1004::/home/xiaoa:/bin/bash
xiaob:x:1009:1004::/home/xiaob:/bin/bash
xiaoc:x:1010:1004::/opt/xiaoc:/bin/bash
[root@myserver ~]#
用户密码设置
passwd 修改密码
/etc/shadow 密码配置文件
[root@myserver ~]# passwd
Changing password for user root.
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password:
passwd: all authentication tokens updated successfully.
权限管理
用户分类: 管理员 普通用户 系统用户
chown 修改文件目录的归属
chown xiaoc:xiaoc c.txt : 修改用户和组
chown xiaob c.txt: 仅修改归属用户
chown :root c.txt: 仅修改归属组
清屏 ctrl + L / clear命令
Group组管理
groupadd 添加组
groupdel xiaoming 删除组
/etc/group 组管理配置文件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构