Linux系统之文件共享目录设置方法
一、本次实践目的
1./data/soft的用户组为admin
2./data/soft目录能被admin组的成员读取、写入和访问,除了root用户外其余用户无此权限。
3.admin组用户有zhangsan/lisi/admin,kitty用户主组为kitty,属组为IT。
4.在/data/soft下创建的文件,其组所有权为admin组。
二、检查本地系统环境
1.检查系统版本
[root@jeven ~]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
2.检查系统内核
[root@jeven ~]# uname -r
6.1.8-1.el7.elrepo.x86_64
三、创建相关用户及用户组
1.创建共享目录
[root@jeven ~]# mkdir -p /data/soft
[root@jeven ~]# cd /data/soft/
[root@jeven soft]#
2.创建测试用户账号
直接创建zhangsan/lisi/kitty/admin三个用户。
[root@jeven soft]# useradd -d /home/zhangsan zhangsan
[root@jeven soft]# useradd -d /home/lisi lisi
[root@jeven soft]# useradd -d /home/kitty kitty
[root@jeven soft]# useradd -d /home/admin admin
3.创建用户组
创建admin和IT用户组
groupadd admin && groupadd IT
4.设置用户的属组
- 设置admin用户组的用户为/zhangsan/lisi/admin
[root@jeven soft]# groupmems -g admin -a zhangsan
[root@jeven soft]# groupmems -g admin -a lisi
- 设置IT用户组内的用户为kitty
[root@jeven soft]# groupmems -g IT -a kitty
5.查看admin和IT用户组成员
查看admin和IT用户组成员
[root@jeven soft]# groupmems -g IT -l
kitty
[root@jeven soft]# groupmems -g admin -l
admin zhangsan lisi
6.查看所有用户信息
查看admin/lisi/zhangsan/kitty用户信息
[root@jeven soft]# id admin
uid=1000(admin) gid=1000(admin) groups=1000(admin)
[root@jeven soft]# id zhangsan
uid=1002(zhangsan) gid=1002(zhangsan) groups=1002(zhangsan),1000(admin)
[root@jeven soft]# id lisi
uid=1003(lisi) gid=1003(lisi) groups=1003(lisi),1000(admin)
[root@jeven soft]# id kitty
uid=1004(kitty) gid=1004(kitty) groups=1004(kitty),1005(IT)
[root@jeven soft]#
四、共享目录权限设置
1.设置/data/soft的所有组为admin
设置/data/soft的所有组为admin
[root@jeven soft]# chgrp admin /data/soft
[root@jeven soft]# ll -d /data/soft/
drwxr-xr-x. 2 root admin 6 Feb 6 17:00 /data/soft/
2.设置/data/soft目录基本权限
设置/data/soft目录的所有组权限为读取、写入和访问
[root@jeven soft]# chmod g+w,o-rx /data/soft/
[root@jeven soft]# ll -d /data/soft/
drwxrwx---. 2 root admin 6 Feb 6 17:00 /data/soft/
3.设置/data/soft目录的
- sgid权限为介绍
1.当一个文件有sgid的权限时,那么其他用户来执行该文件时,临时获得文件拥有组的权限。
2.当一个目录有sgid的权限时,那么任何人在该目录下创建文件(包括目录)时,该文件的拥有组继承目录的组。
- 设置设置/data/soft目录sgid权限
[root@jeven soft]# chmod g+s /data/soft/
[root@jeven soft]# ll -d /data/soft/
drwxrws---. 2 root admin 6 Feb 6 17:00 /data/soft/
五、权限测试工作
1.不同用户在/data/soft创建文件
以下经过测试,admin/zhangsan/lisi用户都能在/data/soft目录下创建文件,kitty用户则权限拒绝。
- admin用户创建文件
[root@jeven soft]# su - admin
[admin@jeven ~]$ cd /data/soft/
[admin@jeven soft]$ touch admin.txt
[admin@jeven soft]$ exit
logout
- zhangsan用户创建文件
[root@jeven soft]# su - zhangsan
[zhangsan@jeven ~]$ cd /data/soft/
[zhangsan@jeven soft]$ touch zhangsan.txt
[zhangsan@jeven soft]$ exit
logout
- lisi用户创建文件
[root@jeven soft]# su - lisi
[lisi@jeven ~]$ cd /data/soft/
[lisi@jeven soft]$ touch lisi.txt
[lisi@jeven soft]$ ls
admin.txt lisi.txt zhangsan.txt
[lisi@jeven soft]$ exit
- kitty用户创建文件
[root@jeven soft]# su - kitty
[kitty@jeven ~]$ cd /data/soft/
-bash: cd: /data/soft/: Permission denied
[kitty@jeven ~]$
2.查看/data/soft下创建文件的权限
发现在/data/soft下创建的文件或目录的属组都为admin。
[root@jeven soft]# pwd
/data/soft
[root@jeven soft]# ls
admin.txt lisi.txt zhangsan.txt
[root@jeven soft]# mkdir kubernetes
[root@jeven soft]# touch wwssss.txt
[root@jeven soft]# ll
total 0
-rw-rw-r--. 1 admin admin 0 Feb 6 17:35 admin.txt
drwxr-sr-x. 2 root admin 6 Feb 6 17:40 kubernetes
-rw-rw-r--. 1 lisi admin 0 Feb 6 17:36 lisi.txt
-rw-r--r--. 1 root admin 0 Feb 6 17:40 wwssss.txt
-rw-rw-r--. 1 zhangsan admin 0 Feb 6 17:36 zhangsan.txt