Linux/Centos7账号与权限管理(超详细实例操作)

Linux/Centos7账号与权限管理

  1. 管理用户账号、组账号
  2. 查询账号信息
  3. 设置文件和目录的权限
  4. 设置文件和目录的归属

一、前言概述

? 作为多用户、多任务(Multi-Users,Multi-tasks)的服务器操作系统,Linux提供了严格的权限管理机制,主要从用户身份、文件权限两个方面对资源进行限制。Linux基于用户身份对资源访问进行控制。

  • 用户账号类别:
  1. 超级用户——root,权限最高
  2. 普通用户——自定义用户 匿名用户(nobody)类似于Windows中的Guest
  3. 程序用户——控制程序和服务的,无法登陆
  • 组账号——用户的集合(其实可以认为是用户权限的集合)
  1. 基本组(私有组)——伴随着用户创建而创建 与用户同名 也就是说创建一个用户的时候必有其组
  2. 附加组(公有组)——直接创建空组,可以添加已有的用户,给组设置权限,该组中所有用户都具备此权限
  • UID和GID
  1. UID(User IDentity) ——用户标识号 (默认情况下0表示root 1~999 表示(系统)程序用户 1000~60000 表示(登录)普通用户)
  2. GID(Group IDentity)——组标识号


二、用户账号文件

/etc/passwd——保存用户名称、宿主目录、登录shell等基本信息

[[email protected] ~]# head -2 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

root?:x:?0:0:root:/root:/bin/bash——以冒号分隔 下面进行逐一解释

  1. root——用户账号名称
  2. x——使用加密算法加密的密码,这里是不会显示的
  3. 0——用户UID号
  4. 0——所属基本组账号的UID
  5. root——用户全名,可以填写用户详细信息
  6. /root——宿主目录
  7. /bin/bash——指定用户的登录Shell

/etc/shadow——保存用户的密码、账号有效等信息

[[email protected] ~]# head -2 /etc/shadow   //查看头两行信息
root:$6$P0mVYDgJo8HZnZWl$oYlITJyv.hP.6wS/OCuAdc61QoWTkYJMcONdy9aAjRW4Cpmc5Mor40xn/RiZ9Hi1PzhVoX5Chur4VfFB8JmKO1::0:99999:7:::
bin:*:17110:0:99999:7:::
[[email protected] ~]# 

root:$6$P0mVYDgJo8HZnZWl$oYlITJyv.hP.6wS/OCuAdc61QoWTkYJMcONdy9aAjRW4Cpmc5Mor40xn/RiZ9Hi1PzhVoX5Chur4VfFB8JmKO1::0:99999:7:::——以冒号分隔,下面逐一解释

  1. root——用户账号名称
  2. 粗体部分——表示加密算法加密的密码,登录输入该密码是无效的
  3. ::——之间的内容是上次修改时间
  4. 0——密码的最短有效天数
  5. 99999——密码的最长有效天数
  6. 7——提前7天提醒用户口令将过期

    之后的内容是密码和账号过期之后的操作处理

二、管理用户账号

1.添加用户账号——useradd命令

选项

  1. -u ——指定用户的UID号,且该UID号没有被其他用户使用
  2. -d ——指定用户的宿主目录位置(与-M一起使用时不生效!)
  3. -e——账号失效时间(过期时间)
  4. -g——基本组
  5. -G——附加组
  6. -M——不创家目录
  7. -s ——指定用户的登录shell

实例:useradd -d /ftphome/mike (-g mike) -G ftpuser -s /sbin/nologin mike

[[email protected] ~]# useradd -d /opt/mike  -G caiwu -s /sbin/nolgin mike
[[email protected] ~]# tail -2 /etc/passwd    //查看passwd文件最后两行信息
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
mike:x:1001:1001::/opt/mike:/sbin/nolgin
[[email protected] ~]# tail -2 /etc/group
caiwu:x:1002:mike
mike:x:1001:
[[email protected] ~]# tail -2 /etc/shadow
lokott:$6$aq3AU9oDZf/ERE2D$Ol.zBTLNqbsPDdsJYE0yU3Wa7EUU1SonR3rUQ616PsgA2u.DtQ99ecTUbdw2y2RhmlaL75WlcqMsfEUNretgb0:18192:0:99999:7:::
mike:!!:18200:0:99999:7:::
[[email protected] ~]# id mike    //查看mike的id信息
uid=1001(mike) gid=1001(mike) 组=1001(mike),1002(caiwu)
[[email protected] ~]# ls /home/  //因为-d 指定了用户的宿主目录,所以家目录创建在了指定的/opt/mike目录中
demo  lokott
[[email protected] ~]# ls /opt/
demo01.txt  mike  rh  test
[[email protected] ~]#

2.设置/更改用户口令passwd

passwd 选项 .... 用户名

  1. -d 清除密码
  2. -l 锁定
  3. -S 查看是否锁还是未锁
  4. -u 解锁
[[email protected] ~]# useradd -d /opt/lisi -s /sbin/nologin lisi
[[email protected] ~]# tail -2 /etc/passwd
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
lisi:x:1001:1001::/opt/lisi:/sbin/nologin   //这里/sbin/nologin是表示用户无法登录
[[email protected] ~]# passwd lisi
更改用户 lisi 的密码 。
新的 密码:                             //需要你输入密码
无效的密码: 密码少于 8 个字符           //因为输入了简单密码,可以继续输入一次也行,当然复杂密码就没问题
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# su - lisi
最后一次失败的登录:四 10月 31 18:49:45 CST 2019从 :1:1 上
最有一次成功登录后有 1 次失败的登录尝试。
This account is currently not available.  // 表示无法登录,因为登录的shell是/sbin/nologin
[[email protected] ~]# pwd
/root
[[email protected] ~]# vim /etc/passwd            //进入passwd文件中将该用户的/sbin/nologin改为/bin/bash
[[email protected] ~]# su - lisi                  //root切换用户时不需要输入密码
上一次登录:四 10月 31 18:52:42 CST 2019pts/2 上
[[email protected] ~]$ pwd
/opt/lisi
[[email protected] ~]$ su   //相当于su - root  下面的结果表明普通用户切换root时需要密码,输入的密码不会显示
密码:
[[email protected] lisi]# pwd
/opt/lisi
[[email protected] lisi]# cd
[[email protected] ~]# pwd                        //说明切换到root用户
/root
[[email protected] ~]#passwd -l lisi              //锁定lisi的密码
锁定用户 lisi 的密码 。
passwd: 操作成功
[[email protected] ~]# passwd -S lisi             //查看lisi用户的密码状态
lisi LK 2019-10-31 0 99999 7 -1 (密码已被锁定。)
[[email protected] ~]# su - lisi
上一次登录:四 10月 31 19:01:10 CST 2019pts/2 上
[[email protected] ~]$ pwd         //可以看出虽然被锁定了但是root可以切换登录且无需密码
/opt/lisi
[[email protected] ~]$
[[email protected] ~]# passwd -u lisi
解锁用户 lisi 的密码。
passwd: 操作成功
[[email protected] ~]# passwd -S lisi
lisi PS 2019-10-31 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

该实例可以作以下总结:

  1. 其中/sbin/nologin 用户无法直接登录和被切换登录
  2. 执行passwd -l lisi 后用户被锁定,在图形用户界面是无法登录的,但是可以从root用户切换登录(而且root切换时不需要密码)

3.修改用户账号的属性usermod

  1. -u 修改用户的UID号
  2. -d 修改用户的宿主目录位置
  3. -e 修改用户账户失效时间
  4. -s 指定用户的登录shell
  5. -l 更改用户登录账号名称
  6. -L 锁定 ----- 相当于passwd -l
  7. -U 解锁 ----- 相当于passwd -u

其中1-4与useradd类似,演示以下-l的操作

[[email protected] ~]# usermod -l zhangsan lisi
usermod: user lisi is currently used by process 71736
[[email protected] ~]# ps -ef | grep lisi
root      71735  71117  0 19:01 pts/2    00:00:00 su - lisi
lisi      71736  71735  0 19:01 pts/2    00:00:00 -bash
root      72433  71829  0 19:11 pts/2    00:00:00 su - lisi
lisi      72435  72433  0 19:11 pts/2    00:00:00 -bash
root      73325  72935  0 19:24 pts/2    00:00:00 grep --color=auto lisi
[[email protected] ~]# kill 71735   //也可以重启,自动就会结束进程
[[email protected] ~]#
Session terminated, killing shell... ...已杀死。
[[email protected] ~]# exit
[[email protected] ~]# usermod -l zhangsan lisi
[[email protected] ~]# tail -2 /etc/passwd
mike:x:1001:1001::/opt/mike:/sbin/nolgin
zhangsan:x:1002:1003::/opt/lisi:/bin/bash  //只是把lisi用户名字改了但是家目录的名字还是原来的
[[email protected] ~]#ls /opt
demo01.txt  lisi  mike  rh  test
[[email protected] ~]# 

4.删除用户账号userdel

-r 宿主目录一起删除,下面的演示接着上面的操作

[[email protected] ~]# tail -2 /etc/passwd         //显示两个用户
mike:x:1001:1001::/opt/mike:/sbin/nolgin
zhangsan:x:1002:1003::/opt/lisi:/bin/bash
[[email protected] ~]# userdel -r mike             //删除mike用户并且“抄家”
[[email protected] ~]# tail -3 /etc/passwd
tcpdump:x:72:72::/:/sbin/nologin
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
zhangsan:x:1002:1003::/opt/lisi:/bin/bash
[[email protected] ~]# ls -l /opt/mike             //表明-r的作用将指定的家目录删除
ls: 无法访问/opt/mike: 没有那个文件或目录
[[email protected] ~]# ls /opt                    //当前在/opt下有lisi家目录(名字在上面改成了zhangsan)
demo01.txt  lisi  rh  test
[[email protected] ~]# userdel -r zhangsan        //删除zhangsan用户,同时也会将lisi目录删除
[[email protected] ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
[[email protected] ~]# ls -l /opt                  //因删除了zhangsan用户且-r删除家目录,不加参数则不会删除
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 root root 32 10月 31 18:33 test
[[email protected] ~]# useradd wang               //创建一个新的用户
[[email protected] ~]# usermod -l sung wang        //改用户名
[[email protected] ~]# tail -2 /etc/passwd         //查看passwd信息
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
sung:x:1001:1003::/home/wang:/bin/bash
[[email protected] ~]# userdel sung               //删除sung用户但是不会删除wang
[[email protected] ~]# ls /home/
demo  lokott  wang

5.用户账号的初始配置文件

文件来源——新建用户账号是从/etc/skel目录中复制过来 (cd到家目录中用ls -a)

  1. ~/.bash_profile 表示进入bash后被加载
  2. ~/.bashrc 用户登录时被加载
  3. ~/.bash_logout 注销的时候执行

三、管理组账号

组账号文件——与用户账号文件类似

  1. /etc/group:保存组账号基本信息
  2. /etc/shadow:保存组账号的密码信息(一般不会设置)

1.添加组账号groupadd命令

groupadd 选项 组名

-g ——指定GID

[[email protected] ~]# groupadd lisi                   //添加lisi组
[[email protected] ~]# tail /etc/group                 //查看group信息
postdrop:x:90:
postfix:x:89:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
tcpdump:x:72:
lokott:x:1000:
printadmin:x:985:
caiwu:x:1002:
lisi:x:1003:
[[email protected] ~]# groupadd -g 1005 wangwu       //添加wangwu组且给其配置GID为1005
[[email protected] ~]# tail -2 /etc/group
lisi:x:1003:
wangwu:x:1005:
[[email protected] ~]# 

2.添加组成员和删除组成员

添加——gpasswd
  1. -a 向组中添加一个用户 a不会覆盖
  2. -d 从组中删除一个用户
  3. -M 逗号分隔设置组的成员列表,会覆盖组成员,将原有的给踢出
[[email protected] ~]# tail -2 /etc/group             //查看组信息
lisi:x:1003:
wangwu:x:1005:
[[email protected] ~]# tail -2 /etc/passwd            //查看用户信息
tcpdump:x:72:72::/:/sbin/nologin
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
[[email protected] ~]# useradd lisi                   //添加lisi用户会失败,因为上面显示lisi组已经存在
useradd:lisi 组已经存在 - 如果您想将此用户加入到该组,请使用 -g 参数。
[[email protected] ~]# useradd -g lisi lisi           //将lisi用户添加到lisi组中
[[email protected] ~]# useradd zhangsan               //再添加一个zhangsan用户
[[email protected] ~]# tail -2 /etc/passwd            //查看用户信息
lisi:x:1001:1003::/home/lisi:/bin/bash
zhangsan:x:1002:1006::/home/zhangsan:/bin/bash
[[email protected] ~]# gpasswd -a lisi wangwu          //添加lisi到wangwu组中
正在将用户“lisi”加入到“wangwu”组中
[[email protected] ~]# id lisi                         //查看lisi的UID
uid=1001(lisi) gid=1003(lisi) 组=1003(lisi),1005(wangwu)
[[email protected] ~]# gpasswd -d lisi wangwu          //从wangwu组中删除lisi
正在将用户“lisi”从“wangwu”组中删除
[[email protected] ~]# id lisi                         //查看lisi的UID,已经不属于wnagwu组了
uid=1001(lisi) gid=1003(lisi) 组=1003(lisi)

[[email protected] ~]# tail -5 /etc/passwd              //显示用户信息
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lokott:x:1000:1000:lokott:/home/lokott:/bin/bash
lisi:x:1001:1003::/home/lisi:/bin/bash
zhangsan:x:1002:1006::/home/zhangsan:/bin/bash
[[email protected] ~]# tail -5 /etc/group                 //显示组信息
printadmin:x:985:
caiwu:x:1002:
lisi:x:1003:
wangwu:x:1005:
zhangsan:x:1006:
[[email protected] ~]# gpasswd -M lisi,zhangsan wangwu   //将两个用户批量添加到wangwu组中
[[email protected] ~]# tail -5 /etc/group
printadmin:x:985:
caiwu:x:1002:
lisi:x:1003:
wangwu:x:1005:lisi,zhangsan                         //查看到信息
zhangsan:x:1006:
[[email protected] ~]# useradd hh                         //添加两个新的用户,为了验证-M的覆盖功能
[[email protected] ~]# useradd ww
[[email protected] ~]# gpasswd -M hh,ww wangwu
[[email protected] ~]# tail -5 /etc/group
lisi:x:1003:
wangwu:x:1005:hh,ww                                //原本的lisi和zhangsan都被踢出去了
zhangsan:x:1006:
hh:x:1007:
ww:x:1004:
删除——groupdel 组账号

注意!!!不能使用 groupdel 命令随意删除群组。此命令仅适用于删除那些 "不是任何用户初始组" 的群组,换句话说,如果有群组还是某用户的初始群组,则无法使用 groupdel 命令成功删除。例如:

[[email protected] ~]# tail  -10 /etc/group
stapdev:x:158:
tcpdump:x:72:
lokott:x:1000:
printadmin:x:985:
caiwu:x:1002:
lisi:x:1003:
wangwu:x:1005:hh,ww
zhangsan:x:1006:
hh:x:1007:
ww:x:1004:
[[email protected] ~]# groupdel caiwu
[[email protected] ~]# groupdel lisi
groupdel:不能移除用户“lisi”的主组
[[email protected] ~]# groupdel wangwu
[[email protected] ~]# groupdel zhangsan
groupdel:不能移除用户“zhangsan”的主组
[[email protected] ~]# groupdel hh
groupdel:不能移除用户“hh”的主组
[[email protected] ~]# groupdel ww
groupdel:不能移除用户“ww”的主组
[[email protected] ~]#

如果真的要删除,可以将创建改组的初始成员删除后再删除

[[email protected] note]# tail -1 /etc/passwd
ww:x:10000:10000::/home/ww:/bin/bash
[[email protected] note]# groupdel ww
groupdel:不能移除用户“ww”的主组
[[email protected] note]# userdel ww
[[email protected] note]# tail -1 /etc/group
zhangsan:x:1006:
[[email protected] note]#
命令lastb是用来查看最近登录的信息
[[email protected] ~]# lastb
lisi     :1           :1               Thu Oct 31 18:49 - 18:49  (00:00)
root     pts/1                         Thu Oct 31 17:07 - 17:07  (00:00)
root     :0           :0               Thu Oct 24 14:43 - 14:43  (00:00)
root     :0           :0               Thu Oct 24 14:43 - 14:43  (00:00)
root     :0           :0               Thu Oct 24 14:43 - 14:43  (00:00)    

btmp begins Thu Oct 24 14:43:01 2019
[[email protected] ~]#

四、文件/目录的权限及归属

1.访问权限

读取r:允许查看文件内容、显示目录列表

写入w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录

可执行: 允许运行程序、切换目录

2.归属(所有权)

属主:用于该文件或目录的用户账号

属组:用于该文件或目录的组账号

3.结合实例介绍权限

[[email protected] ~]# ls -l
总用量 8
-rw-------. 1 root root 1785 10月 23 12:21 anaconda-ks.cfg
-rw-r--r--. 1 root root 1833 10月 23 12:24 initial-setup-ks.cfg
drwxr-xr-x. 4 root root   73 10月 30 22:03 note  //以此为例介绍

下面对drwxr-xr-x. 4 root root 73 10月 30 22:03 note 进行解释

  1. d ——文件类型(d表示目录、l表示链接文件、c表示字符设备(输入输出)文件、b块设备(存储)文件 - 普通文件)
  2. rwx 、 r-x、r-x分别代表是属主权限(这里表示可读可写可执行)、属组权限(这里表示可读可执行)、other权限(这里表示可读可执行)
  3. 4 ——子目录的数量
  4. root—— 属主
  5. root ——属组
  6. 73——大小
  7. 10月 30 22:03 ——创建时间
  8. note ——目录名(文件)

4.设置文件和目录的权限chmod 命令(-R 递归)

  1. chmod 【ugoa】【+-=】【rwx】
  2. chmod nnn 文件或目录(优先选择)
//下面是对文件的权限操作
[[email protected] note]# touch 2.sh
[[email protected] note]# ls -l 2.sh                  //2.sh权限是644
-rw-r--r--. 1 root root 0 10月 31 21:41 2.sh
[[email protected] note]# chmod u+x 2.sh
[[email protected] note]# ls -l 2.sh
-rwxr--r--. 1 root root 0 10月 31 21:41 2.sh
[[email protected] note]# chmod ugo+w 2.sh
[[email protected] note]# ls -l 2.sh
-rwxrw-rw-. 1 root root 0 10月 31 21:41 2.sh
[[email protected] note]# chmod 655 2.sh
[[email protected] note]# ls -l 2.sh
-rw-r-xr-x. 1 root root 0 10月 31 21:41 2.sh

//下面是对目录的权限操作
[[email protected] note]# ll                        //ll是ls -l --color 的别名
总用量 8
-rwxrwxrwx. 1 root root   0 10月 31 21:40 1.txt
-rw-r-xr-x. 1 root root   0 10月 31 21:41 2.sh
-rwxrwxrwx. 1 root root 286 10月 30 22:03 ifcfg-ens33
drwxrwxrwx. 2 root root  26 10月 23 13:20 linux-cmd
-rwxr-xr-x. 1 root root  30 10月 30 22:02 readme.txt
drwxrwxrwx. 2 root root 173 10月 30 21:56 shell
drwxr-xr-x. 2 root root   6 10月 31 21:38 test
[[email protected] note]# which ll
alias ll=‘ls -l --color=auto‘
    /usr/bin/ls
[[email protected] note]# chmod  777 test/      更改权限为777
[[email protected] note]# ll
总用量 8
-rwxrwxrwx. 1 root root   0 10月 31 21:40 1.txt
-rw-r-xr-x. 1 root root   0 10月 31 21:41 2.sh
-rwxrwxrwx. 1 root root 286 10月 30 22:03 ifcfg-ens33
drwxrwxrwx. 2 root root  26 10月 23 13:20 linux-cmd
-rwxr-xr-x. 1 root root  30 10月 30 22:02 readme.txt
drwxrwxrwx. 2 root root 173 10月 30 21:56 shell
drwxrwxrwx. 2 root root   6 10月 31 21:38 test
[[email protected] note]# touch test/1.sh
[[email protected] note]# ls -l test/1.sh
-rw-r--r--. 1 root root 0 10月 31 21:50 test/1.sh   //目录的权限与其子目录与文件权限无关除非递归—R
[[email protected] note]# chmod 777 -R test/     //递归更改权限 即test和其子目录的所有文件权限都是777
[[email protected] note]# ls -l test/1.sh
-rwxrwxrwx. 1 root root 0 10月 31 21:50 test/1.sh

如果给予属组和其他用户只有写权限(622),可以强制写入,但会覆盖原本的内容!

[[email protected] test]# pwd                             //当前所在目录的绝对路径
/opt/test
[[email protected] test]# ll                              //显示详细信息
总用量 8
-rw-r--r--. 1 root root 13 10月 31 16:33 1.txt        //除了root的其余用户权限为只读
-rw--w--w-. 1 root root 18 10月 31 18:33 2.txt         //除了root的其余用户权限为只写
[[email protected] test]# cat 1.txt
tehsda
hello
[[email protected] test]# cat 2.txt                          //这边原本的2.txt的内容如下
231354
2222244878
[[email protected] lisi]# su - lisi                          //切换到lisi用户
上一次登录:四 10月 31 22:36:45 CST 2019pts/1 上
[[email protected] ~]$ cd /opt/test/
[[email protected] test]$ ll                                  //没有ls的权限
ls: 无法打开目录.: 权限不够
[[email protected] test]$ cat 1.txt                           //表示可以查看1.txt内容
tehsda
hello
[[email protected] test]$ vim 1.txt                          //尝试写入数据
[[email protected] test]$ cat 1.txt                           //可以wq!强制保存退出,结果是可以写入数据的
tehsda
hello
dada
asdaadas
[[email protected] test]$ cat 2.txt
cat: 2.txt: 权限不够
[[email protected] test]$ vim 2.txt
[[email protected] test]$ cat 2.txt                             //似乎强制写入数据之后就可以查看
ssdad
dsawdad
[[email protected] test]$ ls -l 2.txt
-rw--w--w-. 1 lisi lisi 14 10月 31 22:45 2.txt
//使用echo命令重定向和追加形式写入数据到文本中
[[email protected] test]$ echo "123123" > 2.txt
[[email protected] test]$ cat 2.txt
123123
[[email protected] test]$ echo "123456" >> 2.txt
[[email protected] test]$ cat 2.txt
123123
123456
[[email protected] test]$ su
密码:
[[email protected] test]# ls -l
总用量 8
-rw-r--r--. 1 lisi lisi 27 10月 31 22:43 1.txt
-rw--w--w-. 1 lisi lisi 14 10月 31 22:47 2.txt
[[email protected] test]# cat 2.txt
123123
123456
[[email protected] test]# 

5.设置文件和目录的归属chown

  1. chown 属主
  2. chown :属组
  3. chown 属主:属组
[[email protected] opt]# ls -l
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 root root 32 10月 31 22:45 test
[[email protected] opt]# chown lisi test
[[email protected] opt]# ls -l
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 lisi root 32 10月 31 22:45 test        //test目录自身属主变成lisi而属组未发生改变

[[email protected] opt]# chown root:lisi test
[[email protected] opt]# ls -l
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 root lisi 32 10月 31 22:45 test        //test目录自身属主变成root而属组变为lisi

[[email protected] opt]# chown :root test
[[email protected] opt]# ls -l
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 root root 32 10月 31 22:45 test        //test目录自身属组变为root

6.权限掩码umask

作用:控制新建的文件或者目录的权限

默认权限去除umask的权限为

[[email protected] opt]# mkdir umasktest
[[email protected] opt]# umask 000 umasktest/
[[email protected] opt]# ll
总用量 0
-rw-r--r--. 1 root root  0 10月 31 16:19 demo01.txt
drwxr-xr-x. 2 root root  6 3月  26 2015 rh
drwx-wx-wx. 2 root lisi 32 10月 31 22:45 test
drwxrwxrwx. 2 root root  6 10月 31 23:26 umasktest
[[email protected] opt]# cd umasktest/
[[email protected] umasktest]# mkdir 2019
[[email protected] umasktest]# touch 1.txt
[[email protected] umasktest]# ll
总用量 0
-rw-rw-rw-. 1 root root 0 10月 31 23:26 1.txt             //文件权限为666
drwxrwxrwx. 2 root root 6 10月 31 23:26 2019              //目录权限为777

[[email protected] umasktest]# cd ..
[[email protected] opt]# umask  111 umasktest/
[[email protected] opt]# cd umasktest/
[[email protected] umasktest]# mkdir 2018
[[email protected] umasktest]# touch 2.txt
[[email protected] umasktest]# ll
总用量 0
-rw-rw-rw-. 1 root root 0 10月 31 23:26 1.txt
drw-rw-rw-. 2 root root 6 10月 31 23:28 2018            //目录权限为666
drwxrwxrwx. 2 root root 6 10月 31 23:26 2019
-rw-rw-rw-. 1 root root 0 10月 31 23:28 2.txt           // 2.txt权限为666

[[email protected] umasktest]# cd ..
[[email protected] opt]# umask  666 umasktest/
[[email protected] opt]# cd umasktest/
[[email protected] umasktest]# mkdir 2017
[[email protected] umasktest]# touch 3.txt
[[email protected] umasktest]# ll
总用量 0
-rw-rw-rw-. 1 root root 0 10月 31 23:26 1.txt
d--x--x--x. 2 root root 6 10月 31 23:29 2017              //目录权限为111
drw-rw-rw-. 2 root root 6 10月 31 23:28 2018
drwxrwxrwx. 2 root root 6 10月 31 23:26 2019
-rw-rw-rw-. 1 root root 0 10月 31 23:28 2.txt
----------. 1 root root 0 10月 31 23:29 3.txt            //文件3.txt权限全为0
[[email protected] umasktest]# umask                          //查看umask值
0666

五、总结

主要是对Linux/Centos7中账号与权限管理的介绍,主要是命令的选项结合操作对象的演示案例需要注意许多与正常思维不一致的地方,需要自己多试验多尝试!本文结合实例详细介绍了关于账号与权限管理的实际操作,主要内容如下:

用户与组管理、用户账号、组账号;查询账号信息;设置文件和目录的权限;设置文件和目录的归属

谢谢阅读!

原文地址:https://blog.51cto.com/14557673/2446952

时间: 2024-10-13 02:26:27

Linux/Centos7账号与权限管理(超详细实例操作)的相关文章

Linux系统账号和权限管理

前言:与Windowns操作系统相比,Linux系统中的用户账号和组账号的作用在本质上是一样的,同样都是基于用户身份来控制对资源的访问,只不过在表现形式及个别细节方面存在些许差异. 用户账号 超级用户:即root用户,对本主机拥有最大的权限 . 普通用户: 普通账号需要由root用户或其他管理员用户创建,拥有权限受到一定限制,一般只在用户自己的宿主目录中拥有完整的权限. 程序用户:仅用于维持系统或某个程序的正常运行,一般不可人为登录系统. 用户账号相关的配置文件有二个,分别是 /etc/pass

Part1 Linux系统账号和权限管理

useradd /etc/passwd 用户名:密码占位符:UID:GID:注释信息:家目录:默认shell 定制用户属性 /etc/group 用户名:x:GID:以此组为额外组的用户列表: /etc/shadow登录名:加密密码:最近以此密码修改的时间:密码最短使用期限:密码最长使用期限:密码到期警告天数:账号的非活动天数:账号过期期限:预留段 从1970年1月1日开始至上次修改密码时的天数 -u UID,有效范围0-65535 例:useradd -u UID Ubuntu -g GID,

linux中账号和权限管理

实验要求: 1.建立用户目录 /tech/benet 和 /tech/accp,分别用于存放项目组中的账号的宿主文件夹. 2.添加组账号 项目组两个分别是benet和accp,GID分别为1001和1002 技术组是tech,GID为200 3.添加用户 benet组中包含三个用户kylin tsengia obama,宿主目录均使用/tech/benet/下的同名目录,其中kylin用户账号设置为2013年12月31日后失效. 4.添加用户 accp组中包含两个用户handy cucci,宿主

Linux中的账号和权限管理(理论讲解部分)

小伙伴们本次给大家带来的是Linux中的账号和权限管理,这里我们首先要明确的就是这个权限是文件或者目录的权限.接下来我们会从以下几个部分进行了解: 用户账号和组账号概述 用户账号和组账号管理 查询账号信息 查看目录或文件的属性 设置目录或文件的权限 设置目录或文件的归属 用户账号和组账号概述Linux基于用户身份对资源访问进行控制1.用户账号:? 超级用户? 普通用户? 匿名用户(everyone)? 程序用户(人为不可使用,单独管理系统中某个应用程序存在的服务)2.组账号:组是系统用户权限的集

linux基础概念和个人笔记总结(2)——账号和权限管理实验验证

特此感谢! 教员:张仁珑 班主任:傅春华 我想给予他们最崇高的敬意 防伪码:滴水之恩,涌泉相报 感想:当我今天在首页上看到了自己发的文章,这是我的第九篇文档,觉得心里特别开心,也真正理解了 "努力和收获是成正比的."这句话.刚好也正准备整理Linux相关笔记,心里五味杂陈,仿佛就在昨天,似乎就在眼前. 总而言之,没有他们就没有今天的我! 第四章:账号和权限管理 实验要求: 1.建立用户目录 /benet/teachers 和 /benet/students,分别用于存放不同身份用户的宿

linux     第六章 账号和权限管理

linux     第六章 账号和权限管理 享受生活热爱挑战 明远分享 每章一段话: 每一个优秀的人,都有一段沉默的时光.人总会有困难丶会被别人不理睬丶这个时候就是你最关键的时候,我们需要相信生活,不放弃,命运不会抛弃你,苦过方可甜. 今天我们要学习在linux中的用户和组的各种配置和管理,其实不要想命令多难记,其实多敲几遍就记住了,想它越简单你就越容易达成你的目标. 理论: Linux基于用户身份对资源访问进行控制     我们先来看下linux用户帐号和组的分类: ①超级用户root    

linux账号和权限管理

账号和权限管理 要求: 一,建立用户目录: 创建目录/tech/benet和/tech/accp,分别用于存放各项目组中用户账户的宿主文件. 步骤:如图所示: 二,添加组账号: 为两个项目添加组账号benet.accp,GID号分别设置为1001 .1002 为技术部添加组账号tech,GID号设置为200 步骤:如图所示: 添加.删除.修改组账号: groupadd命令-添加组账号 gpasswd命令-添加.设置.删除组成员 ? 添加成员时,使用"-a"选项 ? 删除成员时,使用&q

理论:账号和权限管理 理论讲解

[TOC] 前言: 账号和权限管理 理论讲解 一:用户账号和组账号概述 1.1:linux基于用户身份对资源访问进行控制 用户账号 超级用户(root,不可被替代) 普通用户(自己创建,取用户名) 程序用户(人无法登录,是给程序使用的,以使程序可以正常运转) 匿名用户(windows的guest,linux的nobody,普通用户中的最低权限用户) 组账号(用户权限的集合) 基本组(私有组,伴随着用户的创建而创建,与用户同名) 附加组(公有组,直接创建一个空组,可以添加已有用户,给组设置相关权限

Linux的用户和权限管理

欢迎大家来到我的博客,首先声明此文是我的***作:若文中有不当之处,还请各位前辈大神多多指点,小生在这里先谢过了.生活总有各种不如意,对我来说眼前的一切就是最好的安排:说实话我并不是很喜欢软件这个专业,我是一个文科男,软件世界里的沟沟坎坎对我来说走起来真的有些吃力,来到大学莫名其妙的进了这个专业,成了IT大海里一个小石头.没办法,既来之则安之:唯有迎头向前才能彰显我辈精神啊:大学毕业我这个小石头便阴差阳错的接触到了软件运维这个行业,带着满满的信心怀揣着美好的前景我加入的Linux培训的大军.这不