西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁編程開發(fā) → linux 系統(tǒng)中的chmod命令整理

linux 系統(tǒng)中的chmod命令整理

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:本站整理時間:2011/3/1 0:19:46字體大。A-A+

作者:佚名點擊:165次評論:0次標簽: linux

  • 類型:電子資料大。768KB語言:中文 評分:10.0
  • 標簽:
立即下載
chmod 命令用的很多,但是對這個命令卻不是很了解。 在網(wǎng)上搜了一下。 整理如下。

命令格式:
chmod [-cfvR] [--help] [--version] mode file...

[root@qs-wg-db2 ~]# chmod --help
Usage: chmod [OPTION]... MODE[,MODE]... FILE...
or: chmod [OPTION]... OCTAL-MODE FILE...
or: chmod [OPTION]... --reference=RFILE FILE...
Change the mode of each FILE to MODE.

-c, --changes like verbose but report only when a change is made
--no-preserve-root do not treat `/' specially (the default)
--preserve-root fail to operate recursively on `/'
-f, --silent, --quiet suppress most error messages
-v, --verbose output a diagnostic for every file processed
--reference=RFILE use RFILE's mode instead of MODE values
-R, --recursive change files and directories recursively
--help display this help and exit
--version output version information and exit

Each MODE is of the form `[ugoa]*([-+=]([rwxXst]*|[ugo]))+'.

Report bugs to <bug-coreutils@gnu.org>.
[root@qs-wg-db2 ~]#


參數(shù)說明:
1. -cfvR 部分
-c : 若該檔案權(quán)限確實已經(jīng)更改,才顯示其更改動作
-f : 若該檔案權(quán)限無法被更改也不要顯示錯誤訊息
-v : 顯示權(quán)限變更的詳細資料
-R : 對目前目錄下的所有檔案與子目錄進行相同的權(quán)限變更(即以遞回的方式逐個變更), 這個-R 用的還是很多的。

2. Mode 部分
這部分可以分成如下3塊: [who] operator [permission]
`[ugoa]*([-+=]([rwxXst]*|[ugo]))+'.

who的含義是:
u 文件屬主權(quán)限
g 同組用戶權(quán)限
o 其它用戶權(quán)限
a 所有用戶(包括以上三種)
operator的含義:
+ 增加權(quán)限
- 取消權(quán)限
= 唯一設(shè)定權(quán)限
permission的含義:
r 讀權(quán)限
w 寫權(quán)限
x 執(zhí)行權(quán)限
X 表示只有當該檔案是個子目錄或者該檔案已經(jīng)被設(shè)定過為可執(zhí)行。
s 文件屬主和組id
l 給文件加鎖,使其它用戶無法訪問

如: chmod a+x

3. 示例:
(1)將檔案 file1.txt 設(shè)為所有人皆可讀取 :
chmod ugo+r file1.txt
(2)將檔案 file1.txt 設(shè)為所有人皆可讀取 :
chmod a+r file1.txt
(3)將檔案 file1.txt 與 file2.txt 設(shè)為該檔案擁有者,與其所屬同一個群體者可寫入,但其他以外的人則不可寫入 :
chmod ug+w,o-w file1.txt file2.txt
(4)將 ex1.py 設(shè)定為只有該檔案擁有者可以執(zhí)行 :
chmod u+x ex1.py
(5)將目前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀取 :
chmod -R a+r *
(6)收回所有用戶的對file1的執(zhí)行權(quán)限
chmod a-x file1

4. 使用數(shù)字來賦權(quán)

4.1 先看一下文件的權(quán)限格式

[root@qs-wg-db2 scripts]# ll
total 20
-rw-r--r-- 1 oracle oinstall 0 Feb 24 00:00 alertlogbyday.log
-rwxr-xr-x 1 oracle oinstall 430 Feb 20 01:10 alertlogbyday.sh
-rwxr-xr-x 1 oracle oinstall 7 Feb 24 05:00 del_st_arch.log
-rwxr-xr-x 1 oracle oinstall 648 Feb 19 00:51 del_st_archive.sh
-rwxr-xr-x 1 oracle oinstall 9 Feb 24 05:00 max_sn.log
drwxr-xr-x 3 root root 4096 Feb 23 23:40 pymonitor

ll的結(jié)果返回七列,分別表示如下含義:
第一欄 [文件屬性]
第二欄 [文件數(shù)]
第三欄 [擁有者]
第四欄 [所有者群組]
第五欄 [大小]
第六欄 [建檔日期]
第七欄 [檔名]

我們設(shè)置文件的權(quán)限就是這是第一欄里的文件屬性。

文件屬性這塊共有十個字段,如:drwxr-xr-x

我們把這10個列分成4塊:[d] [rwx] [r-x] [r-x]
第一塊:也就是第一列,用來表示這個文件的類型,有如下值:
(1)[ d ]則是目錄,我這里的是d,表示的是一個目錄
(2)[ - ]則是文件;
(3)[ l ]則表示為連結(jié)檔(link file);
(4)[ b ]則表示為裝置文件里面的可供儲存的接口設(shè)備;
(5)[ c ]則表示為裝置文件里面的串行端口設(shè)備,例如鍵盤、鼠標。
第二塊:第 2到4 列,表示文件擁有者的權(quán)限。
第三塊:第5到7 列,表示擁有者同組人的權(quán)限。
第四塊:第8到10列,表示是非擁有者組人的權(quán)限。

這些權(quán)限均有[rwx] 三個參數(shù)表示,而且分別對應(yīng)不同的位置。每塊由3個列組成,每列對應(yīng)一個值。 [ r ]代表可讀、[ w ]代表可寫、[ x ]代表可執(zhí)行。
舉例: 如果擁有者只有只讀的權(quán)限,那么第2到4列就是[r--],有讀寫的權(quán)限就是[rw-],有讀寫和執(zhí)行的權(quán)利就是[rwx].

4.2 使用數(shù)字賦權(quán)
在4.1 中了解準備知識之后,就可以使用數(shù)字賦權(quán)了。 每塊用戶有3個權(quán)限[rwx]. 他們對應(yīng)數(shù)字:
r -->4
w-->2
x-->1

使用數(shù)字賦權(quán)的命令格式如下:
chmod abc filename
其中的abc 分別代表3個數(shù)字,并且分別對應(yīng)問個不同的屬組。 即:
數(shù)字a 對應(yīng) 第2到4位,表示擁有者的權(quán)限。
數(shù)字b 對應(yīng) 第5到7位,表示同組用戶的權(quán)限。
數(shù)字c 對應(yīng)第8到10位,表示其他組的權(quán)限。

rwx 對應(yīng)4,2,1. 那么只讀的權(quán)限用4表示[r--],讀寫用6(4+2)表示[rw-],寫加執(zhí)行用7(4+2+1)表示[rwx]。 只讀加執(zhí)行用5(4+1)表示[r-x]。

示例:
chmod 755 file1
chmod 777 file1 <==> chmod a=rwx file
chmod 771 file <==> chmod ug=rwx,o=x file

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字數(shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)
    推薦文章

    沒有數(shù)據(jù)

      沒有數(shù)據(jù)
    最新文章
      沒有數(shù)據(jù)