chmod ug s oracle,Linux命令——chmod命令修改文件權限

chmod 命令用的很多,但是對這個命令卻不是很了解。 在網上搜了一下。 整理如下。

命令格式:

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]*(-+=)+’.[root@qs-wg-db2 ~]#

參數說明:

1. -cfvR 部分-c : 若該檔案權限確實已經更改,才顯示其更改動作

-f : 若該檔案權限無法被更改也不要顯示錯誤訊息

-v : 顯示權限變更的詳細資料

-R : 對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞回的方式逐個變更), 這個-R 用的還是很多的。

2. Mode 部分

這部分可以分成如下3塊: [who] operator [permission]

`[ugoa]*(-+=)+’.

who的含義是:u 文件屬主權限

g 同組用戶權限

o 其它用戶權限

a 所有用戶(包括以上三種)

operator的含義:+ 增加權限

- 取消權限

= 唯一設定權限

permission的含義:r 讀權限

w 寫權限

x 執行權限

X 表示只有當該檔案是個子目錄或者該檔案已經被設定過為可執行。

s 文件屬主和組id

l 給文件加鎖,使其它用戶無法訪問

如: chmod a+x

3. 示例:

(1)將檔案 file1.txt 設為所有人皆可讀取 :chmod ugo+r file1.txt

(2)將檔案 file1.txt 設為所有人皆可讀取 :chmod a+r file1.txt

(3)將檔案 file1.txt 與 file2.txt 設為該檔案擁有者,與其所屬同一個群體者可寫入,但其他以外的人則不可寫入 :chmod ug+w,o-w file1.txt file2.txt

(4)將 ex1.py 設定為只有該檔案擁有者可以執行 :chmod u+x ex1.py

(5)將目前目錄下的所有檔案與子目錄皆設為任何人可讀取 :chmod -R a+r *

(6)收回所有用戶的對file1的執行權限chmod a-x file1

4. 使用數字來賦權

4.1 先看一下文件的權限格式[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的結果返回七列,分別表示如下含義:第一欄 [文件屬性]

第二欄 [文件數]

第三欄 [擁有者]

第四欄 [所有者群組]

第五欄 [大小]

第六欄 [建檔日期]

第七欄 [檔名]

4.1.1 第一欄 [文件屬性]

包括文件的類型和文件的權限。這塊共有十個字段,如:drwxr-xr-x,

我們把這10個列分成四塊:[d] [rwx] [r-x] [r-x]第一塊(也就是第一列):用來表示這個文件的類型,有如下值:

(1)[ d ]則是目錄,我這里的是d,表示的是一個目錄

(2)[ - ]則是文件;

(3)[ l ]則表示為連結檔(link file);

(4)[ b ]則表示為裝置文件里面的可供儲存的接口設備;

(5)[ c ]則表示為裝置文件里面的串行端口設備,例如鍵盤、鼠標。

第二塊(第 2到4 列):表示文件擁有者的權限。

第三塊(第 5到7 列):表示擁有者同組人的權限。

第四塊(第 8到10 列):表示是非擁有者組人的權限。

解釋:這些權限均有[rwx] 三個參數表示,而且分別對應不同的位置。每塊由3個列組成,每列對應一個值。 [ r ]代表可讀、[ w ]代表可寫、[ x ]代表可執行。

舉例: 如果擁有者只有只讀的權限,那么第2到4列就是[r--],有讀寫的權限就是[rw-],有讀寫和執行的權利就是[rwx].

4.1.2 其它欄

4.2 使用數字賦權

在4.1 中了解准備知識之后,就可以使用數字賦權了。 每塊用戶有3個權限[rwx]. 他們對應數字:r-->4

w-->2

x-->1

使用數字賦權的命令格式如下:chmod abc filename

其中的abc 分別代表3個數字,並且分別對應問個不同的屬組。 即:數字a 對應 第2到4位,表示擁有者的權限。

數字b 對應 第5到7位,表示同組用戶的權限。

數字c 對應第8到10位,表示其他組的權限。

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

示例:chmod 755 file1

chmod 777 file1 <==> chmod a=rwx file

chmod 771 file <==> chmod ug=rwx,o=x file

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值