Linux基礎(chǔ)命令之: Linux常用命令
7.chmod
(1)作用。
改變文件的訪問權(quán)限。
(2)格式。
chmod可使用符號標記進行更改和八進制數(shù)指定更改兩種方式,因此它的格式也有兩種不同的形式。
①符號標記:chmod[選項]…符號權(quán)限[符號權(quán)限]…文件
其中的符號權(quán)限可以指定為多個,也就是說,可以指定多個用戶級別的權(quán)限,但它們中間要用逗號分開表示,若沒有顯式指出則表示不作更改。
②八進制數(shù):chmod[選項]…八進制權(quán)限文件…
其中的八進制權(quán)限是指要更改后的文件權(quán)限。
(3)選項參數(shù)。
chmod主要選項參數(shù)如表2.16所示。
表2.16 chmod命令常見參數(shù)列表
選項 | 參數(shù)含義 |
-c | 若該文件權(quán)限確實已經(jīng)更改,才顯示其更改動作 |
-f | 若該文件權(quán)限無法被更改也不要顯示錯誤信息 |
-v | 顯示權(quán)限變更的詳細資料 |
(4)使用實例。
chmod涉及文件的訪問權(quán)限,在此對相關(guān)的概念進行簡單的回顧。
在1.3.1節(jié)中已經(jīng)提到,文件的訪問權(quán)限可表示成:-rwxrwxrwx。在此設(shè)有3種不同的訪問權(quán)限:讀(r)、寫(w)和運行(x)。3個不同的用戶級別:文件擁有者(u)、所屬的用戶組(g)和系統(tǒng)里的其他用戶(o)。在此,可增加一個用戶級別a(all)來表示所有這3個不同的用戶級別。
①第一種符號連接方式的chmod命令中,用加號“+”代表增加權(quán)限,用減號“−”代表刪除權(quán)限,等于號“=”代表設(shè)置權(quán)限。
例如,原先筆者系統(tǒng)中有文件uClinux20031103.tgz,其權(quán)限如下所示。
[root@localhosttest]#ls–l
-rw-r--r--1rootroot79708616Mar242005uClinux20031103.tgz
[root@localhosttest]#chmoda+rx,u+wuClinux20031103.tgz
[root@localhosttest]#ls–l
-rwxr-xr-x1rootroot79708616Mar242005uClinux20031103.tgz
可見,在執(zhí)行了chmod之后,文件擁有者除擁有所有用戶都有的可讀和執(zhí)行的權(quán)限外,還有可寫的權(quán)限。
②對于第二種八進制數(shù)指定的方式,將文件權(quán)限字符代表的有效位設(shè)為“1”,即“rw-”、“rw-”和“r--”的八進制表示為“110”、“110”、“100”,把這個二進制串轉(zhuǎn)換成對應(yīng)的八進制數(shù)就是6、6、4,也就是說該文件的權(quán)限為664(三位八進制數(shù))。這樣對于轉(zhuǎn)化后八進制數(shù)、二進制及對應(yīng)權(quán)限的關(guān)系如表2.17所示。
表2.17 轉(zhuǎn)化后八進制數(shù)、二進制及對應(yīng)權(quán)限的關(guān)系
轉(zhuǎn)換后八進制數(shù) | 二進制 | 對應(yīng)權(quán)限 | 轉(zhuǎn)換后八進制數(shù) | 二進制 | 對應(yīng)權(quán)限 |
0 | 000 | 沒有任何權(quán)限 | 1 | 001 | 只能執(zhí)行 |
2 | 010 | 只寫 | 3 | 011 | 只寫和執(zhí)行 |
4 | 100 | 只讀 | 5 | 101 | 只讀和執(zhí)行 |
6 | 110 | 讀和寫 | 7 | 111 | 讀、寫和執(zhí)行 |
同上例,原先筆者系統(tǒng)中有文件genromfs-0.5.1.tar.gz,其權(quán)限如下所示。
[root@localhosttest]#ls–l
-rw-rw-r--1daviddavid20543Dec292004genromfs-0.5.1.tar.gz
[root@localhosttest]#chmod765genromfs-0.5.1.tar.gz
[root@localhosttest]#ls–l
-rwxrw-r-x1daviddavid20543Dec292004genromfs-0.5.1.tar.gz
可見,在執(zhí)行了chmod765之后,該文件的擁有者權(quán)限、文件組權(quán)限和其他用戶權(quán)限都恰當?shù)貙?yīng)了。
(5)使用說明
n 使用chmod必須具有root權(quán)限。
想一想 | chmodo+xuClinux20031103.tgz是什么意思?它所對應(yīng)的八進制數(shù)指定更改應(yīng)如何表示? |
評論