如何在Linux中管理文件和文件夾的權(quán)限?
譯文【51CTO精選譯文】對(duì)許多Linux用戶來(lái)說,習(xí)慣于文件的權(quán)限和所有權(quán)可能有點(diǎn)難度。人們通常認(rèn)為,想進(jìn)入到這種使用級(jí)別,必須使用命令行。雖然總是可以獲得強(qiáng)大得多的功能和靈活性,但是運(yùn)行貌似復(fù)雜的命令并非總是必不可少。借助現(xiàn)有的一些用起來(lái)極其方便的桌面界面,你幾乎不需要使用什么命令行,就能如愿以償,哪怕是在管理文件權(quán)限和所有權(quán)方面。
確實(shí)如此,這可能讓許多新用戶大吃一驚;你可以從文件管理器里面來(lái)管理文件和文件夾。但是在我們探討圖形用戶界面(GUI)之前,***對(duì)其工作機(jī)理有一個(gè)深入的了解。所以,我們先從命令行開始入手。
命令行:文件權(quán)限
改動(dòng)文件權(quán)限和所有權(quán)的兩個(gè)命令如下:
- chmod - 更改權(quán)限
- chown - 更改所有權(quán)
上面兩個(gè)命令用起來(lái)都不難。不過你要明白,只有用戶是當(dāng)前所有者或根用戶,才能夠?qū)嶋H更改文件的權(quán)限或所有權(quán),這一點(diǎn)很重要。所以,如果你是用戶Bethany,要是不借助根權(quán)限(或sudo),就無(wú)法對(duì)用戶Jacob擁有的文件和文件夾進(jìn)行更改。比如說:
數(shù)據(jù)分區(qū)上創(chuàng)建了一個(gè)新的文件夾,名為/DATA/SHARE。Bethany和Jacob這兩個(gè)用戶都需要擁有讀取和寫入該文件夾的訪問權(quán)限。有許多方法可以實(shí)現(xiàn)這一點(diǎn)(其中一個(gè)方法是,把兩個(gè)用戶加入到一個(gè)特殊的用戶組――我們會(huì)在另一篇文章中探討如何管理用戶組)。如果Bethany和Jacob是系統(tǒng)上的唯一兩個(gè)用戶(而且你知道自己的網(wǎng)絡(luò)很安全――這很重要),就可以更改該文件夾的權(quán)限,為他們授予訪問權(quán)。為此,一個(gè)方法就是執(zhí)行該命令。
- sudo chmod -R ugo+rw /DATA/SHARE
上面這個(gè)命令的詳細(xì)分解如下:
- sudo - 這用于為使用sudo的任何系統(tǒng)上的命令獲得管理員權(quán)限(不然你就得使用'su'以獲得根權(quán)限,運(yùn)行不帶'sudo'的上面這個(gè)命令)
- chmod - 改動(dòng)權(quán)限的命令
- -R - 這改動(dòng)父文件夾及其里面子對(duì)象的權(quán)限
- ugo+rw - 這為User(用戶)、Group(用戶組)及Other(其他對(duì)象)授予讀取和寫入訪問權(quán)限。
你可能也猜測(cè)到了,這個(gè)命令完全開放了SHARE文件夾的權(quán)限,那樣系統(tǒng)上的任何人都能訪問該文件夾。正如我在前面提到的那樣,一種更安全的方法就是使用用戶組。但我們使用這種方法僅僅是為了演示。
權(quán)限的詳細(xì)分解如下:
- u - 用戶
- g - 用戶組
- o - 其他對(duì)象
"其他對(duì)象"這個(gè)條目是個(gè)危險(xiǎn)的條目,因?yàn)樗鼘?shí)際上為每個(gè)人賦予了文件夾/文件的權(quán)限。你為某文件或文件夾所能賦予的權(quán)限如下:
- r - 讀取
- w- 寫入
- x - 執(zhí)行
使用-R這個(gè)參數(shù)選項(xiàng)符很重要。如果你在SHARE目錄里面有許多子文件夾和文件,又希望權(quán)限從父對(duì)象(包含文件夾)應(yīng)用到子對(duì)象(子文件夾和文件),就必須使用-R(遞歸)這個(gè)參數(shù)選項(xiàng)符,那樣同樣的權(quán)限就可以一路應(yīng)用到父文件夾里面包含的最深層文件夾。
命令行:文件所有權(quán)
更改文件或文件夾的所有權(quán)同樣很簡(jiǎn)單。假設(shè)Jacob為Bethany把一個(gè)文件夾移入到SHARE目錄里面,但是Jacob仍擁有所有權(quán)。只要借助一個(gè)簡(jiǎn)單的命令,就可以更改這個(gè)所有權(quán):
- sudo chown -R bethany /DATA/SHARE
讓我們?cè)敿?xì)分解這個(gè)命令。
- sudo - 必須用到管理員權(quán)限,因?yàn)槲覀兯幚淼氖菍儆诹硪粋€(gè)用戶的文件夾
- chown - 更改所有權(quán)的命令·-R - 這個(gè)遞歸參數(shù)選項(xiàng)符確保所有子對(duì)象都獲得同樣的所有權(quán)變更。
- bethany - 文件夾的新所有者
- /DATA/SHARE - 所要修改的目錄
要是Bethany將文件夾發(fā)回給Jacob,就需要再次更改所有權(quán)(如果使用用戶組,同樣可以簡(jiǎn)化這一步)。
GUI:用戶權(quán)限
我準(zhǔn)備在Ubuntu 13.10系統(tǒng)上,使用Nautilus文件管理器,演示如何更改文件權(quán)限。
假設(shè)你需要允許每個(gè)人都獲得讀取/寫入文件夾TEST的權(quán)限。為此,在Nautilus文件管理器里面,采取下面這些步驟:
1.打開Nautilus
2.瀏覽至目標(biāo)文件或目標(biāo)文件夾
3.鼠標(biāo)右擊該文件或文件夾
4.選擇Properties(屬性)
5.點(diǎn)擊Permissions(權(quán)限)選項(xiàng)卡
6.點(diǎn)擊Others(其他)部分中的Access files(訪問文件)
7.選擇"Create and delete files"(創(chuàng)建并刪除文件)
8.點(diǎn)擊Change Permissions for Enclosed Files(更改所附文件的權(quán)限)
9.在隨后彈出的窗口中,選擇Files(文件)下的Read and Write(讀取和寫入),選擇Folders(文件夾)下的Create and delete files(創(chuàng)建并刪除文件),見圖A。
10.點(diǎn)擊Change(更改)。
11.點(diǎn)擊Close(關(guān)閉)。
如果你需要更改不屬于你的文件夾的權(quán)限,戲法就會(huì)出現(xiàn)??梢詫?shí)現(xiàn)這一幕,但必須在擁有管理員訪問權(quán)的前提下啟動(dòng)Nautilus。為此,采取下面這些步驟:
1.打開終端窗口
2.執(zhí)行命令sudo -i
3.執(zhí)行命令nautilus
sudo -i命令為你賦予了持久訪問sudo的權(quán)限,直到你輸入exit命令,清除該訪問權(quán)。一旦Nautilus打開,你可以更改文件夾或文件的權(quán)限,如上所述――即便你不是該文件夾或文件的所有者。
注意:如果你所使用的發(fā)行版并不使用sudo,就要把上述指令改成如下:
1.打開終端窗口
2.執(zhí)行命令su
3.鍵入你的根密碼,按回車鍵
4.執(zhí)行命令nautilus。
在你完成這項(xiàng)任務(wù)之后,關(guān)閉Nautilus窗口,然后關(guān)閉終端窗口。
GUI:更改所有權(quán)
更改文件或文件夾的所有權(quán)常常需要使用管理員權(quán)限。所以為此,你需要采用上面介紹的方法來(lái)啟動(dòng)Nautilus。
想借助Nautilus更改文件夾或文件的所有權(quán),請(qǐng)采取下面這些步驟:
1.在借助管理員權(quán)限打開的Nautilus窗口中,找到相應(yīng)的文件夾或文件
2.鼠標(biāo)右擊該文件夾(或文件)
3.點(diǎn)擊Permissions(權(quán)限)選項(xiàng)卡
4.從Owner(所有者)下拉框中選擇新的所有者(見下圖)
5.點(diǎn)擊Close(關(guān)閉)。
就是這樣?,F(xiàn)在,你借助命令行或GUI,更改文件或文件夾的權(quán)限或所有權(quán)時(shí)應(yīng)該不會(huì)有任何問題了。使用用戶組讓你可以更改權(quán)限和所有權(quán),卻擁有更強(qiáng)大的功能和更高的安全性――我們以后會(huì)介紹這方面?,F(xiàn)在,請(qǐng)享受更改文件和文件夾的便利吧!
原文鏈接:http://www.linux.com/learn/tutorials/760276-how-to-manage-file-and-folder-permissions-in-linux