在 Linux 上給用戶賦予指定目錄的讀寫權(quán)限
在本篇文章中,我們將向您介紹如何將Linux上指定目錄的讀寫權(quán)限賦予用戶。
有兩種方法可以實現(xiàn)這個目標(biāo):***種是使用ACL(訪問控制列表),第二種是創(chuàng)建用戶組來管理文件權(quán)限,下面會一一介紹。
為了完成這個教程,我們將使用以下設(shè)置。
操作系統(tǒng):CentOS7
測試目錄:/shares/project1/reports
測試用戶:tecmint
文件系統(tǒng)類型:ext4
請確認所有的命令都是使用root用戶執(zhí)行的,或者使用sudo命令來享受與之同樣的權(quán)限。
讓我們開始吧!下面,先使用mkdir命令來創(chuàng)建一個名為reports的目錄。
- #mkdir-p/shares/project1/reports
使用ACL來為用戶賦予目錄的讀寫權(quán)限
重要提示:打算使用此方法的話,您需要確認您的Linux文件系統(tǒng)類型(如ext3和ext4,NTFS,BTRFS)支持ACL。
1、首先,依照以下命令在您的系統(tǒng)中檢查當(dāng)前文件系統(tǒng)類型,并且查看內(nèi)核是否支持ACL:
- #df-T|awk'{print$1,$2,$NF}'|grep"^/dev"
- #grep-iacl/boot/config*
從下方的截屏可以看到,文件系統(tǒng)類型是ext4,并且從CONFIG_EXT4_FS_POSIX_ACL=y選項可以發(fā)現(xiàn)內(nèi)核是支持POSIXACL的。
2、接下來,查看文件系統(tǒng)(分區(qū))掛載時是否使用了ACL選項。
- #tune2fs-l/dev/sda1|grepacl
通過上邊的輸出可以發(fā)現(xiàn),默認的掛載項目中已經(jīng)對ACL進行了支持。如果發(fā)現(xiàn)結(jié)果不如所愿,你可以通過以下命令對指定分區(qū)(此例中使用/dev/sda3)開啟ACL的支持。
- #mount-oremount,acl/
- #tune2fs-oacl/dev/sda3
3、現(xiàn)在是時候指定目錄reports的讀寫權(quán)限分配給名為tecmint的用戶了,依照以下命令執(zhí)行即可。
- #getfacl/shares/project1/reports#CheckthedefaultACLsettingsforthedirectory
- #setfacl-muser:tecmint:rw/shares/project1/reports#Giverwaccesstousertecmint
- #getfacl/shares/project1/reports#ChecknewACLsettingsforthedirectory
在上方的截屏中,通過輸出結(jié)果的第二行getfacl命令可以發(fā)現(xiàn),用戶tecmint已經(jīng)成功的被賦予了/shares/project1/reports目錄的讀寫權(quán)限。
下面我們來看看如何使用第二種方法來為目錄賦予讀寫權(quán)限。
使用用戶組來為用戶賦予指定目錄的讀寫權(quán)限
1、如果用戶已經(jīng)擁有了默認的用戶組(通常組名與用戶名相同),就可以簡單的通過變更文件夾的所屬用戶組來完成。
- #chgrptecmint/shares/project1/reports
另外,我們也可以通過以下方法為多個用戶(需要賦予指定目錄讀寫權(quán)限的)新建一個用戶組。如此一來,也就創(chuàng)建了一個共享目錄。
- #groupaddprojects
2、接下來將用戶tecmint添加到projects組中:
- #usermod-aGprojectstecmint #addusertoprojects
- #groupstecmint #checkusersgroups
3、將目錄的所屬用戶組變更為projects:
- #chgrpprojects/shares/project1/reports
4、現(xiàn)在,給組成員設(shè)置讀寫權(quán)限。
- #chmod-R0760/shares/projects/reports
- #ls-l/shares/projects/ #checknewpermissions
好了!這篇教程中,我們向您展示了如何在Linux中將指定目錄的讀寫權(quán)限賦予用戶。若有疑問,請在留言區(qū)中提問。