Linux權(quán)限管理--ACL權(quán)限

Linux setfacl 命令幫助:

選項(xiàng)

-b,--remove-all:刪除所有擴(kuò)展的acl規(guī)則商乎,基本的acl規(guī)則(所有者娶桦,群組暮胧,其他)將被保留好唯。
-k,--remove-default:刪除缺省的acl規(guī)則。如果沒有缺省規(guī)則穴店,將不提示。 
-n拿穴,--no-mask:不要重新計(jì)算有效權(quán)限泣洞。setfacl默認(rèn)會(huì)重新計(jì)算ACL mask,除非mask被明確的制定默色。 
--mask:重新計(jì)算有效權(quán)限球凰,即使ACL mask被明確指定。 
-d腿宰,--default:設(shè)定默認(rèn)的acl規(guī)則呕诉。 
--restore=file:從文件恢復(fù)備份的acl規(guī)則(這些文件可由getfacl -R產(chǎn)生)。通過這種機(jī)制可以恢復(fù)整個(gè)目錄樹的acl規(guī)則吃度。此參數(shù)不能和除--test以外的任何參數(shù)一同執(zhí)行甩挫。 
--test:測試模式,不會(huì)改變?nèi)魏挝募腶cl規(guī)則椿每,操作后的acl規(guī)格將被列出伊者。 
-R英遭,--recursive:遞歸的對(duì)所有文件及目錄進(jìn)行操作。 
-L亦渗,--logical:跟蹤符號(hào)鏈接挖诸,默認(rèn)情況下只跟蹤符號(hào)鏈接文件,跳過符號(hào)鏈接目錄法精。 
-P多律,--physical:跳過所有符號(hào)鏈接,包括符號(hào)鏈接文件搂蜓。 
--version:輸出setfacl的版本號(hào)并退出菱涤。 
--help:輸出幫助信息。 
--:標(biāo)識(shí)命令行參數(shù)結(jié)束洛勉,其后的所有參數(shù)都將被認(rèn)為是文件名 
-:如果文件名是-粘秆,則setfacl將從標(biāo)準(zhǔn)輸入讀取文件名。 
選項(xiàng)-m和-x后邊跟以acl規(guī)則收毫。多條acl規(guī)則以逗號(hào)(,)隔開攻走。
選項(xiàng)-M和-X用來從文件或標(biāo)準(zhǔn)輸入讀取acl規(guī)則。 
選項(xiàng)--set和--set-file用來設(shè)置文件或目錄的acl規(guī)則此再,先前的設(shè)定將被覆蓋昔搂。 選項(xiàng)-m(--modify)和-M(--modify-file)選項(xiàng)修改文件或目錄的acl規(guī)則。 
選項(xiàng)-x(--remove)和-X(--remove-file)選項(xiàng)刪除acl規(guī)則输拇。 
當(dāng)使用-M摘符,-X選項(xiàng)從文件中讀取規(guī)則時(shí),setfacl接受getfacl命令輸出的格式策吠。

Linux權(quán)限管理--ACL權(quán)限

ACL權(quán)限不是針對(duì)某個(gè)文件或某個(gè)目錄的逛裤,它是針對(duì)分區(qū)而言的。

使用df -h 查看系統(tǒng)分區(qū)
[linuxidc@linuxidc ~]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3              16G  2.9G  12G  20% /
tmpfs                947M    0  947M  0% /dev/shm
/dev/sda1            291M  35M  242M  13% /boot
/dev/sr0              3.0G  3.0G    0 100% /media/cdrom

可以看到/的分區(qū)號(hào)是/dev/sda3,查看/dev/sda3是否支持acl權(quán)限

使用命令dumpe2fs查看是否支持acl

[root@linuxidc ~]# dumpe2fs -h /dev/sda3
dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name:  <none>
Last mounted on:          /
Filesystem UUID:          4e32f639-ccc9-4942-ac35-b281fdfbb79e
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:        signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:        clean
Errors behavior:          Continue

可以看到Default mount options項(xiàng)是支持acl的

一般操作系統(tǒng)默認(rèn)是支持acl權(quán)限的.如果不支持可開啟分區(qū)的alc權(quán)限

使用mount命令重新掛載/分區(qū),并支持acl權(quán)限

[root@linuxidc ~]# mount -o remount,acl /

使用mount命令重新掛載并支持acl權(quán)限只是臨時(shí)生效,系統(tǒng)重啟后失效

[root@linuxidc ~]# vim /etc/fstab

#
# /etc/fstab
# Created by anaconda on Sun May  1 09:19:06 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=4e32f639-ccc9-4942-ac35-b281fdfbb79e /                      ext4    defaults        1 1
UUID=7e2ce555-c044-41f8-9cd5-18c7d5293cf1 /boot                  ext4    defaults        1 2
UUID=fa77a5dd-1f7f-4428-bcc4-79f7742ed320 swap                    swap    defaults        0 0

系統(tǒng)默認(rèn)是支持acl權(quán)限的,如果默認(rèn)不支持,我們可以在對(duì)應(yīng)的分區(qū)后面加上acl選項(xiàng),如下所示,以/分區(qū)為例

9 UUID=4e32f639-ccc9-4942-ac35-b281fdfbb79e /                      ext4    defaults,acl        1 1

有時(shí)候一個(gè)文件的擁有者,所屬組,其他人三種角色對(duì)文件的權(quán)限并不能完全滿足猴抹、適合某一個(gè)用戶所需要對(duì)文件的操作權(quán)限,這時(shí)就需要對(duì)特殊的用戶單獨(dú)設(shè)置權(quán)限,下面舉例說明

查看home目錄中l(wèi)inuxidc目錄的訪問權(quán)限

[root@linuxidc home]# getfacl linuxidc
# file: linuxidc
# owner: linuxidc
# group: linuxidc
user::rwx
group::---
other::---

可以看到只有用戶linuxidc(root除外)才對(duì)自己家目錄有rwx權(quán)限.所屬組和其他人沒有任何權(quán)限.
現(xiàn)在有這樣一個(gè)用戶,只能讓他進(jìn)入linuxidc目錄,查看里面有哪些文件和文件內(nèi)容,但是不能讓他創(chuàng)建文件
可以先找一個(gè)存在的用戶試試,看看能不能對(duì)/home/linuxidc目錄做任何操作

[linuxidc@linuxidc home]$ tail -3 /etc/passwd
named:x:25:25:Named:/var/named:/sbin/nologin
linuxidc:x:501:501::/home/linuxidc:/bin/bash
iaknehc:x:502:502::/home/iaknehc:/bin/bash

[iaknehc@linuxidc home]$ cd linuxidc
-bash: cd: linuxidc: Permission denied

可以看到當(dāng)切換到iaknehc時(shí),用戶對(duì)linuxidc目錄沒有任何權(quán)限,這里只是測試了一下其他人對(duì)linuxidc的權(quán)限,其實(shí)所屬組的用戶也一樣,可以自己試試.所以我們需要一種更靈活的權(quán)限設(shè)置方法.這就是acl.

[linuxidc@linuxidc home]$ setfacl -m u:iaknehc:rx linuxidc    //將目錄linuxidc的rx權(quán)限分配給用戶iaknehc
[linuxidc@linuxidc home]$ getfacl linuxidc
# file: linuxidc
# owner: linuxidc
# group: linuxidc
user::rwx
user:iaknehc:r-x
group::---
mask::r-x
other::---

下面切換到iaknehc用戶試試權(quán)限是否生效

[linuxidc@linuxidc home]$ su - iaknehc
Password: 
[iaknehc@linuxidc ~]$ cd ..
[iaknehc@linuxidc home]$ cd linuxidc
[iaknehc@linuxidc linuxidc]$ ll      //iaknehc可以進(jìn)入linuxidc目錄,并瀏覽目錄中的文件
total 4
-rw-rw-r-- 1 linuxidc vampire 12 May 16 23:21 linuxidc
[iaknehc@linuxidc linuxidc]$ cat vampire    //iaknehc可以查看文件類容
just a test
[iaknehc@linuxidc linuxidc]$ touch test    //iaknehc不能在linuxidc目錄中創(chuàng)建文件
touch: cannot touch `test': Permission denied

可以看到針對(duì)目錄linuxidc設(shè)置的acl權(quán)限已經(jīng)生效.

先查看目錄linuxidc的acl權(quán)限

[root@linuxidc home]# getfacl linuxidc
# file: linuxidc/
# owner: linuxidc
# group: linuxidc
user::rwx
user:iaknehc:r-x
group::---
mask::r-x
other::---

mask是用來指定最大有效權(quán)限的,如果給用戶賦予了ACL權(quán)限,是需要和mask的

權(quán)限"相與"才能得到用戶的真正權(quán)限.

將用戶iaknehc的權(quán)限設(shè)置為rwx在查看acl權(quán)限

[linuxidc@linuxidc home]$ setfacl -m u:iaknehc:rwx linuxidc
[vampire@linuxidc home]$ getfacl linuxidc
# file: linuxidc
# owner: linuxidc
# group: linuxidc
user::rwx
user:iaknehc:rwx
group::---
mask::rwx
other::---

設(shè)置acl最大權(quán)限后再查看iaknehc的acl權(quán)限

[linuxidc@linuxidc home]$ setfacl -m m:rx linuxidc  //修改最大有效權(quán)限,即mask的值
[linuxidc@linuxidc home]$ getfacl linuxidc
# file: linuxidc
# owner: linuxidc
# group: linuxidc
user::rwx
user:iaknehc:rwx        #effective:r-x    //雖然之前設(shè)置了rwx權(quán)限,但是后來通過mask限制了最大權(quán)限,現(xiàn)在用戶實(shí)際權(quán)限為rx
group::---
mask::r-x
other::---

setfacl -m m:rx linuxidc 

通過執(zhí)行該命令后,文件所屬組,其他人和通過acl設(shè)置的用戶對(duì)該文件最大權(quán)限只有rx,可以防止
設(shè)置權(quán)限不能準(zhǔn)確把握時(shí),導(dǎo)致設(shè)置權(quán)限過大,但該命令不影響文件擁有者的權(quán)限.

acl相關(guān)命令選項(xiàng)

setfacl -m 給用戶或組設(shè)置acl權(quán)限
setfacl -m u:iaknehc:rx linuxidc //給用戶iaknehc設(shè)置acl權(quán)限
setfacl -m g:iaknehc:rx linuxidc //給組iaknehc設(shè)置acl權(quán)限

修改最大有效權(quán)限

setfacl -m m:rx linuxidc //修改文件vampire的最大有效權(quán)限為rx,一般只有文件所屬者或root才能修改文件最大有效權(quán)限

setfacl -x 刪除指定用戶的acl權(quán)限
setfacl -x u:iaknehc linuxidc //刪除用戶iaknehc對(duì)文件linuxidc的acl權(quán)限
setfacl -x g:iaknehc linuxidc //刪除組iaknehc對(duì)文件linuxidc的acl權(quán)限

setfacl -b 刪除文件所有acl權(quán)限
setfacl -b linuxidc //刪除文件vampire的所有acl權(quán)限,所有用戶的acl權(quán)限都被刪除

setfacl -d 設(shè)置文件默認(rèn)acl權(quán)限

setfacl -k 刪除默認(rèn)的acl權(quán)限

setfacl -R 遞歸設(shè)置acl權(quán)限
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末带族,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蟀给,更是在濱河造成了極大的恐慌蝙砌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件跋理,死亡現(xiàn)場離奇詭異择克,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)前普,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門肚邢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人汁政,你說我怎么就攤上這事道偷∽号裕” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵勺鸦,是天一觀的道長并巍。 經(jīng)常有香客問我,道長换途,這世上最難降的妖魔是什么懊渡? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮军拟,結(jié)果婚禮上剃执,老公的妹妹穿的比我還像新娘。我一直安慰自己懈息,他們只是感情好肾档,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著辫继,像睡著了一般怒见。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上姑宽,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天遣耍,我揣著相機(jī)與錄音,去河邊找鬼炮车。 笑死舵变,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的瘦穆。 我是一名探鬼主播纪隙,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼难审!你這毒婦竟也來了瘫拣?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤告喊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后派昧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體黔姜,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年蒂萎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了秆吵。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡五慈,死狀恐怖纳寂,靈堂內(nèi)的尸體忽然破棺而出主穗,到底是詐尸還是另有隱情,我是刑警寧澤毙芜,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布忽媒,位于F島的核電站,受9級(jí)特大地震影響腋粥,放射性物質(zhì)發(fā)生泄漏晦雨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一隘冲、第九天 我趴在偏房一處隱蔽的房頂上張望闹瞧。 院中可真熱鬧,春花似錦展辞、人聲如沸奥邮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽洽腺。三九已至,卻和暖如春靡砌,著一層夾襖步出監(jiān)牢的瞬間已脓,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國打工通殃, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留度液,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓画舌,卻偏偏與公主長得像堕担,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子曲聂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 簡介 ACL權(quán)限控制主要目的是提供傳統(tǒng)的 owner,group,other 的 read,wirte,execu...
    honehou閱讀 1,154評(píng)論 0 1
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,168評(píng)論 2 33
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言旭咽,發(fā)作 oo-boon-too 的音贞奋。了解發(fā)音是有意...
    螢火蟲de夢閱讀 99,271評(píng)論 9 467
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)穷绵,斷路器轿塔,智...
    卡卡羅2017閱讀 134,657評(píng)論 18 139
  • 第一節(jié) ACL權(quán)限的簡介與開啟 1.ACL權(quán)限簡介 解決用戶身份不足的情況下,文件對(duì)用戶的權(quán)限無法分配的問題 2....
    littlexjing閱讀 448評(píng)論 0 1