3. Linux 用户与权限管理

1. 用户组和用户的基本管理命令

用户基本命令

  1. useradd 用户名 #添加用户,所在用户组与用户名同名
  2. useradd -g 组名 用户名 #添加用户,指定其所在的组
  3. useradd -d 目录 用户名 #添加用户,制定其用户的家目录,没有指定所在组时,默认用户名就为用户组名
  4. usermod -c 注释信息 用户名 #为指定用户名添加注释
  5. usermod -l 新用户名 旧用户名 #更改用户名
  6. usermod -d 目录 用户名 #更改用户个人文件夹的路径
  7. usermod -g 新用户组 用户名 #更改指定用户的所属组
  8. userdel 用户名 #删除用户,但是不删除用户个人文件夹里的文件
  9. userdel -r 用户名 #删除用户并且删除用户个人文件夹里的文件

用户组基本命令

  1. groupadd 组名 #添加用户组
  2. groupadd -g 组编号 组名 #添加用户组并指定组编号
  3. groupmod -n 新组名 原组名 #更改用户组名称
  4. groupmod -g 组编号 组名 #更改用户组编号
  5. groupdel 组名 #删除用户组

用户和用户组进阶命令

锁定账号:passwd -l 用户名
解锁账号:passwd -u 用户名
删除用户密码:passwd -d 用户名
给用户添加附属组:gpasswd -a 用户名 用户组
删除用户附属组:gpasswd -d 用户名 用户组
设置用户组密码:gpasswd 用户组名称
既指定主要组又指定附属组:useradd -g group1 -G group1,group2

2. 权限管理命令

修改文件权限方法:(假设文件名aa)

  1. chmod u+x aa //给拥有者u增加x权限
    chmod u+x,g+w aa //给拥有者u增加x权限,所属组增加写权限
  2. chmod u-x aa //给拥有者取消x权限
  3. chmod u=rwx aa //给拥有者u的权限是rwx
    chmod u=rwx,g=rw aa //给拥有者u的权限是rwx,给所属组权限是rw
  4. chmod a=rw aa //给u,g,o权限都设置为rw
  5. chmod 755 aa //aa的权限为rwx r_x r_x 可执行文件
    chmod 644 aa //aa的权限为rw_ r__ r__ 文本文件

修改文件的所有者

chown 用户名 文件名(如果没有该用户 会提示错误)
chown ds fengj.av

修改文件的所属组(只要有ds这个用户名 就会有这个组)

chgrp 组名 文件名

同时修改所属组、所属用户

chown root:root 123

chown root.root 123

3. 用户配置文件

1)/etc/group存储当前系统中所有用户组的信息

-Group : x : 123 :abc,def,xyz
-组名称 :组密码占位符 :组编号 :组中用户名列表

(2)/etc/gshadow 储存系统用户组密码信息
-Group: * : : abc,def
-组名:组密码 :组管理者:组中用户名列表 (注明:组管理者一般为空代表该组所有用户都可以管理该组)

(3)/etc/passwd 存储当前系统中所有用户信息
-user : x : 123 : 456 : xxxxxxxx:/home/user :/bin/bash
-用户名:密码占位符:用户编号 :用户组编号:用户注释 :用户主目录 :shell类型
注意:除了root用户外,创建用户时,会在home下创建一个和用户名一样的文件夹, 超级管理员root编号为0。

(4)/etc/shadow 存储当前系统中所有用户密码
-user :passw:::::
-用户名:密码 :::::
以上四个配置文件包含了有关用户和用户组的所有配置信息,无论是用户还是用户组的配置信息都单独保存。

你可能感兴趣的:(3. Linux 用户与权限管理)