Linux权限实战
groupadd grd/gpm/ghr:添加用户组
cat /etc/group:查看是否添加上用户组信息
useradd -g grd rd1/rd2 :给相应的用户组添加上每个组的用户信息
useradd -g gpm pm1/pm2
useradd -g ghr hr1/hr2
cat /etc/passwd :查看是否添加上用户信息
cd /home/:进去家目录,查看ls
mkdir rdddata/pmdata/hrdata:创建文件目录
ll :查看权限
chown -R :grd rddata/:把rddata所属组改为grd
chmod -R 775 rddata/:赋予rddata文件,用户组和用户都具有可读、可写、可执行的权限;
chown -R :gpm pmdata/:把pmdata所属组改为gpm
chmod -R 775 pmdata/:赋予pmdata文件,用户组和用户都具有可读、可写、可执行的权限;
chown -R :ghr hrdata/:把hrdata所属组改为ghr
chmod -R 775 hrdata/:赋予hrdata文件,用户组和用户都具有可读、可写、可执行的权限;
ll:查看各个文件权限是否赋予成功
passwd rd1/rd2/pm1/pm2/hr1/hr2:给各个用户添加密码
su rd1:切换到rd1用户
cd rddata/ --> touch rd1.txt:查看是否可读写
exit :退出
su pm1:切换到pm1 的用户
cd rddata/:查看pm1用户是否能看到rddata里面的rd1.txt
exit
chown -R 770 rddata/ :赋予rddata文件,当前用户组和用户具有rwx的权限,但是其他用户没有任何权限;
chmod 640 rd1.txt:
chmod 770 pmdata/
chmod 770 hrdata/
su pm1:切换到pm1 用户
cd rddata/:再次查看pm1用户是否具有读取rddata文件的权限。(失败!证明权限分配成功)
exit
cd pmdata/:切换到pmdata目录
mkdir:添加一个prd的目录
chown -R :gpm prd/:给prd目录修改用户组为gpm
chmod -R 750 prd/:对prd文件,给当前用户组和用户添加rwx的权限。
------------需求:研发部(grd)可以看到产品部(gpm)里面prd文件下面的内容------
通过ACL来实现:
getfacl prd/:查看prd文件的权限
setfacl -m g:grd:rwx prd/:修改prd文件权限,给prd文件赋予grd用户组赋予rwx的权限,grd用户组下面的用户都可以看到prd文件的内容,而prd文件是在pmdata文件里面的,需要给pmdata文件也修改权限。
setfacl -m g:grd:rwx pmdata/
getfacl pmdata/:查看pmdata文件权限信息
su rd1:切换到rd1用户
cd pmdata/:检测rd1用户是否具有访问pmdata文件的权限;
cd prd/:再切到prd文件目录下
touch rd1create.txt:用rd1的用户访问pmdata/prd/目录,并且创建一个rd1create.txt文件。
测试成功!
后记:可以测试hr1用户有没有权限访问pmdata/
问题:如果pmdata/目录文件给grd用户组都具有rwx的权限,那么pmdata目录下的其他文件是不是也可以访问?