巧用Linux2.6核心新功能配置檔案ACL(轉)
如果使用過Unix,就不會對ACL(Access Control List,訪問控制列表)感到陌生。在Linux 2.4核心中,ACL作為補丁存在,而在2.6新核心中,它已經是標準核心的一部分了。
傳統Unix的ACL,只能對檔案設定使用者、組和其他人的許可權,也就是我們常用的755、644之類的許可權。如果想為一個檔案交叉定義若干個不同組的使用者訪問許可權,比如說tom、mary、tony、tod分別屬於不同的組,某一檔案想讓mary和tony只讀,tom和tod可寫,其他使用者不可訪問。這種要求用傳統的Unix ACL是無法實現的。
Linux 2.6核心中的ACL正是為應付類似的需求所設計的。它可以方便地為檔案配置任意使用者和組的訪問許可權。
要想使用ACL功能,首先需要正確編譯2.6核心,並確保有下列選項:
CONFIG_EXT2_FS_POSIX_ACL=yCONFIG_EXT3_FS_POSIX_ACL=yCONFIG_FS_POSIX_ACL=y
用新核心啟動後,還要求在掛載分割槽的時候新增必要的引數“acl”。
mount -t ext3 -o rw,acl /dev/hda8 /your_mount_point
或在 /etc/fstab 中加入下列行,實現自動mount分割槽並且帶有“acl”引數。
/dev/hda8 ext3 /your_mount_point defaults,acl 1 1
正確掛載檔案系統後,就可以使用ACL的命令來修改檔案的ACL屬性了。修改ACL屬性的命令有setfacl、getfacl 和chacl,其中chacl是一個SGI IRIX相容命令,主要適用於那些對SGI IRIX以及XFS檔案系統比較熟悉的使用者。本文只介紹setfacl和getfacl命令,具體用法如下面的例子:
1.使檔案1.txt可以被使用者test讀寫
setfacl -m u:test:rw 1.txt
2.使檔案1.txt可以被qmail組的組員讀,但不能寫
setfacl -m g:qmail:r 1.txt
3.把某一檔案的ACL屬性copy給另一檔案,比如把檔案1.txt的ACL屬性copy給2.txt:
getfacl 1.txt | setfacl -set-file=- 2.txt
4.同時為檔案設定不同使用者或組的許可權
比如對檔案2.txt設定testmail使用者可讀寫,qmail組組員可讀可執行,nofiles 組組員可執行:
setfacl -m u:testmail:rw,g:qmail:rx,g:nofiles:x 2.txt
檢視man page可獲得setfact和getfacl命令更詳細的用法。
在系統管理員的工作中,遇到的最大的困難往往不是高難度的核心問題,也不是配置Apache伺服器之類的問題,而是控制檔案訪問許可權的問題。主管領導常常會提出非常特別的要求,許可權配置經常具體到人,這在配置檔案伺服器Samba時非常難於實現,使用2.6核心中的ACL(訪問控制列表)新功能,問題就會迎刃而解。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-939965/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 支援 ACL 訪問控制、引入 HOCON 全新配置檔案格式
- spring和Mybatis的核心配置檔案SpringMyBatis
- Mybatis基礎:Mybatis對映配置檔案,Mybatis核心配置檔案,Mybatis傳統方式開發MyBatis
- MyBatis 核心配置檔案詳細內容詳解MyBatis
- ACL和NAT配置
- 巧用檔案影像比較工具Kaleidoscope,幫您找出檔案的不同
- Linux核心檔案Linux
- 實驗八————ACL配置
- 【Mycat】Mycat核心開發者帶你看盡Mycat三大核心配置檔案
- Git配置配置檔案Git
- 實驗十八——————ACL配置2
- GBFF檔案轉GFF檔案
- 核心模組建立檔案
- docker 配置檔案Docker
- gitignore 檔案配置Git
- Nginx 配置檔案Nginx
- Maven 配置檔案Maven
- Springboot配置檔案Spring Boot
- MySQL配置檔案MySql
- nginx配置檔案Nginx
- 【SpringBoot】配置檔案Spring Boot
- 配置檔案vimrc
- Maven配置檔案Maven
- SpringBoot(配置檔案)Spring Boot
- vim配置檔案
- 8.4.4 配置檔案
- mysql 配置檔案MySql
- 最全MyBatis核心配置檔案總結,可以作為工具先收藏了MyBatis
- 【Python】配置檔案配置路徑Python
- mongodb配置檔案常用配置項MongoDB
- [轉]關於Linux安裝mysql預設配置檔案位置LinuxMySql
- Linux下玩轉nginx系列(二)——nginx配置檔案說明LinuxNginx
- transfer 全平臺Windows linux mac配置檔案轉換工具WindowsLinuxMac
- PDF檔案轉換為DWF檔案
- php生成配置檔案config.php 生成陣列配置檔案PHP陣列
- 0172-執行核心檔案
- 【VMware VCF】使用 SFTP 伺服器備份 VCF 核心元件的配置檔案。FTP伺服器元件
- C#配置檔案C#
- 後端配置檔案後端