linux用户和用户组、权限及文件访问控制列表ACL

1、新建用户和用户组


groupadd bakerstreet
groupadd scotlandyard

usermod -G bakerstreet holmes
usermod -G bakerstreet watson
usermod -G scotlandyard lestrade
usermod -G scotlandyard gregson
usermod -G scotlandyard jones


cat /etc/group

bakerstreet❌1003:holmes,watson
scotlandyard❌1004:lestrade,grepson,gregson,jones

##2、 权限和授权

mkdir -p /shares/cases
cd /shares/cases
touch test1.txt
echo 123456 > test1.txt

chgrp -R bakerstreet /shares/cases/
chmod g+s /shares/cases/
chmod 660 /shares/cases/*

3、设置ACL访问控制列表


setfacl -Rm g:bakerstreet:rwX /shares/cases

setfacl -Rm g:scotlandyard:rwX /shares/cases
setfacl -Rm u:jones:rX /shares/cases

setfacl -m d:g:scotlandyard:rwx /shares/cases
setfacl -m d:u:jones:rX /shares/cases

getfacl /shares/cases

##4、 验证

以holmes身份登陆
sudo -i -u holmes
cd /shares/cases
sudo echo hello >holmes.txt
cat holmes.txt
mkdir holmes.dir
echo hello > holmes.dir/test.txt
ls -ld holmes.dir
getfacl holmes.dir

注释:这个用户是能读写执行的。


以lestrade身份登陆
sudo -i -u lestrade
cd /shares/cases
sudo echo hello >lestrade.txt
cat lestrade.txt
mkdir lestrade.dir
echo hello > lestrade.dir/test.txt
ls -ld lestrade.dir
getfacl lestrade.dir

注释:这个用户是能读写执行的。

以jones身份登陆
sudo -i -u jones
cd /shares/cases
echo hello > jones.txt
cat holmes.txt
mkdir jones.dir
cat holmes/test.txt

おすすめ

転載: blog.csdn.net/qq_40168905/article/details/115934709