chmod 是一条在Unix系统中用于控制用户对文件的权限的命令
chmod 是一條在Unix系統(tǒng)中用于控制用戶對(duì)文件的權(quán)限的命令(change mode單詞前綴的組合)和函數(shù)。只有文件所有者和超級(jí)用戶可以修改文件或目錄的權(quán)限。可以使用絕對(duì)模式,符號(hào)模式指定文件的權(quán)限。
?用法
chmod使用語法
$ chmod [options] mode[,mode] file1 [file2 ...]使用ls命令的查看文件或目錄的屬性
$ ls -l file?八進(jìn)制語法
chmod命令可以使用八進(jìn)制數(shù)來指定權(quán)限。文件或目錄的權(quán)限位是由9個(gè)權(quán)限位來控制,每三位為一組,它們分別是文件所有者(user)的讀、寫、執(zhí)行,用戶組(group)的讀、寫、執(zhí)行以及(other)其它用戶的讀、寫、執(zhí)行。歷史上,文件權(quán)限被放在一個(gè)比特掩碼中,掩碼中指定的比特位設(shè)為1,用來說明一個(gè)類具有相應(yīng)的優(yōu)先級(jí)。
chmod的八進(jìn)制語法的數(shù)字說明;
r 4
w 2
x 1
- 0
所有者的權(quán)限用數(shù)字表達(dá):屬主的那三個(gè)權(quán)限位的數(shù)字加起來的總和。如rwx ,也就是4+2+1 ,應(yīng)該是7。
用戶組的權(quán)限用數(shù)字表達(dá):屬組的那個(gè)權(quán)限位數(shù)字的相加的總和。如rw- ,也就是4+2+0 ,應(yīng)該是6。
其它用戶的權(quán)限數(shù)字表達(dá):其它用戶權(quán)限位的數(shù)字相加的總和。如r-x ,也就是4+0+1 ,應(yīng)該是5。
例如修改文件myfile的權(quán)限
$ chmod 664 myfile $ ls -l myfile -rw-rw-r-- 1 57 Jul 3 10:13 myfile?符號(hào)模式
使用符號(hào)模式可以設(shè)置多個(gè)項(xiàng)目:who(用戶類型),operator(操作符)和permission(權(quán)限),每個(gè)項(xiàng)目的設(shè)置可以用逗號(hào)隔開。 命令chmod將修改who指定的用戶類型對(duì)文件的訪問權(quán)限,用戶類型由一個(gè)或者多個(gè)字母在who的位置來說明,如who的符號(hào)模式表所示:
| u | user | 文件所有者 |
| g | group | 文件所有者所在組 |
| o | others | 所有其他用戶 |
| a | all | 所用用戶, 相當(dāng)于 ugo |
operator的符號(hào)模式表:
| + | 為指定的用戶類型增加權(quán)限 |
| - | 去除指定用戶類型的權(quán)限 |
| = | 設(shè)置指定用戶權(quán)限的設(shè)置,即將用戶類型的所有權(quán)限重新設(shè)置 |
permission的符號(hào)模式表:
| r | 讀 | 設(shè)置為可讀權(quán)限 |
| w | 寫 | 設(shè)置為可寫權(quán)限 |
| x | 執(zhí)行權(quán)限 | 設(shè)置為可執(zhí)行權(quán)限 |
| X | 特殊執(zhí)行權(quán)限 | 只有當(dāng)文件為目錄文件,或者其他類型的用戶有可執(zhí)行權(quán)限時(shí),才將文件權(quán)限設(shè)置可執(zhí)行 |
| s | setuid/gid | 當(dāng)文件被執(zhí)行時(shí),根據(jù)who參數(shù)指定的用戶類型設(shè)置文件的setuid或者setgid權(quán)限 |
| t | 粘貼位 | 設(shè)置粘貼位,只有超級(jí)用戶可以設(shè)置該位,只有文件所有者u可以使用該位 |
?符號(hào)模式實(shí)例
對(duì)目錄的所有者u和關(guān)聯(lián)組g增加讀r和寫w權(quán)限:
$ chmod ug+rw mydir $ ls -ld mydir drw-rw---- 2 unixguy uguys 96 Dec 8 12:53 mydir對(duì)文件的所有用戶ugo刪除寫w權(quán)限:
$ chmod a-w myfile $ ls -l myfile -r-xr-xr-x 2 unixguy uguys 96 Dec 8 12:53 myfile對(duì)mydir的所有者u和關(guān)聯(lián)組g設(shè)置成讀r和可執(zhí)行x權(quán)限:
$ chmod ug=rx mydir $ ls -ld mydir dr-xr-x--- 2 unixguy uguys 96 Dec 8 12:53 mydir命令使用實(shí)例
| chmod a+r file | 增加讀權(quán)限對(duì)file的所有用戶 |
| chmod a-x file | 刪除執(zhí)行權(quán)限對(duì)file的所有用戶 |
| chmod a+rw file | 增加讀寫權(quán)限對(duì)file的所有用戶 |
| chmod +rwx file | 增加讀寫執(zhí)行權(quán)限對(duì)file的所有用戶 |
| chmod u=rw,go= file | 設(shè)置讀寫權(quán)限對(duì)file的所有者,清空所有權(quán)限對(duì)file的用戶組和其他用戶 |
| chmod -R u+r,go-r docs | 對(duì)目錄docs和其子目錄層次結(jié)構(gòu)中的所有文件增加所有用戶的讀權(quán)限,而對(duì)用戶組和其他用戶刪除讀權(quán)限 |
| chmod 664 file | 設(shè)置讀寫權(quán)限對(duì)file的所有者和用戶組, 為其其他用戶設(shè)置讀權(quán)限 |
| chmod 0755 file | 相當(dāng)于u=rwx (4+2+1),go=rx (4+1 & 4+1)。0 沒有特殊模式。 |
| chmod 4755 file | 4設(shè)置了設(shè)置用戶ID位,剩下的相當(dāng)于 u=rwx (4+2+1),go=rx (4+1 & 4+1)。 |
| find path/ -type d -exec chmod a-x {} \; | 刪除可執(zhí)行權(quán)限對(duì)path/以及其所有的目錄(不包括文件)的所有用戶,使用‘-type f'匹配文件 |
| find path/ -type d -exec chmod a+x {} \; | 允許所有用戶瀏覽或通過目錄path/ |
轉(zhuǎn)載于:https://www.cnblogs.com/zhenmingliu/archive/2012/04/27/2473902.html
總結(jié)
以上是生活随笔為你收集整理的chmod 是一条在Unix系统中用于控制用户对文件的权限的命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为GridView添加表头thead
- 下一篇: ubuntu 12.04 开启root