Linux用户管理和文件权限

📅 2026/7/9 4:57:09
Linux用户管理和文件权限
一、Linux安全基础用户账户体系1. 核心安全逻辑Linux依靠UID用户ID、GID组ID实现资源访问隔离所有文件/目录都绑定属主、属组区分所有者、同组用户、其他用户三层权限。2. 用户分类root管理员UID0拥有系统全部权限系统伪用户UID500供后台服务运行禁止登录普通用户UID≥1000日常登录使用。3. 核心配置文件/etc/passwd 所有用户基础信息7个冒号分隔字段用户名、密码占位符x、UID、GID、备注、家目录、登录Shell普通用户可读。/etc/shadow 仅root可读存放加密密码9个字段管控密码有效期、账户锁定规则。/etc/group 用户组信息4字段组名、组密码占位、GID、组内成员列表。4. 切换root方式su - root / sudo -i 执行 exit 退回普通用户。二、用户管理全套命令1. 创建用户useradd 参数化创建useradd -m 用户名 自动创建/home下家目录复制/etc/skel基础配置文件不加-m无家目录、无登录shell常用参数 -c 备注、 -g 主组、 -G 附加组、 -s 指定登录shell、 -e 账户过期时间。adduser Ubuntu交互式自动弹窗输入密码、全名、房间/电话等备注一键生成家目录与配套配置操作更简单。设置密码 passwd 用户名 批量改密码 echo user:pass | chpasswd 。2.修改用户信息usermod、chfn、chsh、chage1. usermod 修改账户核心属性c 改备注、 -aG 追加附加组、 -g 更换主组、 -L 锁定账户、 -U 解锁、 -l 修改用户名。2. chfn 交互式修改用户备注全名、房间、电话等3. chsh -s 路径 用户名 修改登录Shell必须写绝对路径如/bin/dash4. chage 管控密码过期、账户失效时间。3. 删除用户userdel 用户名 仅删账户信息保留家目录userdel -r 用户名 删除账户家目录邮件文件。三、用户组管理1. 创建组 groupadd 组名2. 修改组 groupmod -n 新名 旧名 改名 groupmod -g 修改GID3. 用户加入附加组 usermod -aG 组名 用户名4. 删除组 groupdel 组名5. 共享实现逻辑把多名用户加入同一附加组再修改文件属组同组用户可互相读写文件。四、文件权限体系1. 权限查看与标识ls -l 查看权限10位字符规则第1位文件类型 - 普通文件、 d 目录、 l 软链接后9位分三组所有者u、所属组g、其他用户o每组3位r/w/xr读(4)、w写(2)、x执行(1) - 代表无对应权限。2. umask默认权限掩码控制新建文件/目录初始权限文件基准666目录基准777减去umask默认0022得到实际权限示例umask 0022 → 文件644(rw-r--r--)、目录755(rwxr-xr-x)umask 查看、 umask xxx 临时修改默认掩码。3. chmod修改权限两种模式1. 八进制数字模式 chmod [-R] 数字 文件例 chmod -R 666 * 所有文件读写 chmod 770 dir 目录仅属主/属组完整权限 -R 递归修改目录内所有内容。2. 符号模式 chmod u/g/o/a /-/ rwx 文件u所有者、g组、o其他人、a全部 增加、 - 移除、 覆盖权限。4. chown修改文件归属仅root可执行chown -R 用户:组 文件 同时修改属主、属组chown -R :组 文件 仅修改所属组-R 递归作用于目录全部子文件。五、实操练习题要求1. 创建用户、设置密码通过 /etc/passwd 验证2. 使用 usermod -c 或 chfn 修改用户备注3. groupadd 创建共享组 usermod -aG 将用户加入 groupmod 修改组名4. 在用户家目录新建文件、目录用 ls -l 查看默认权限5. 通过 chown 修改文件属组、 chmod 配置组内读写权限实现文件共享6. 按需删除测试用户。创建新用户并设置用户密码。查看/etc/passwd文件中是否存在该用户2. 修改用户/etc/passwd文件的备注字段并查看使用groupadd为你的组员创建新组在新用户的HOME目录下创建.txt文本和目录并查看权限使用usermod将新用户添加进你所创建的新组中并修改组名6.使用chmod和chown修改当前目录下所有文件的组权限实现组内用户的共享文件并查看7.删除刚刚创建的用户也