溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux系統(tǒng)中chown和chmod命令的用法區(qū)別

發(fā)布時(shí)間:2021-09-15 16:31:46 來源:億速云 閱讀:149 作者:chen 欄目:系統(tǒng)運(yùn)維

本篇內(nèi)容主要講解“Linux系統(tǒng)中chown和chmod命令的用法區(qū)別”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Linux系統(tǒng)中chown和chmod命令的用法區(qū)別”吧!

chown
用法:chown [選項(xiàng)]... [所有者][:[組]] 文件...
 或:chown [選項(xiàng)]... --reference=參考文件 文件...
更改每個(gè)文件的所有者和/或所屬組。
當(dāng)使用 --referebce 參數(shù)時(shí),將文件的所有者和所屬組更改為與指定參考文件相同。

  -c, --changes                 類似 verbose,但只在有更改時(shí)才顯示結(jié)果
      --dereference             受影響的是符號(hào)鏈接所指示的對(duì)象,而非符號(hào)鏈接本身
  -h, --no-dereference          會(huì)影響符號(hào)鏈接本身,而非符號(hào)鏈接所指示的目的地
                                (當(dāng)系統(tǒng)支持更改符號(hào)鏈接的所有者時(shí),此選項(xiàng)才有用)
      --from=當(dāng)前所有者:當(dāng)前所屬組
                                只當(dāng)每個(gè)文件的所有者和組符合選項(xiàng)所指定時(shí)才更改所
                                有者和組。其中一個(gè)可以省略,這時(shí)已省略的屬性就不
                                需要符合原有的屬性。
      --no-preserve-root        不特殊對(duì)待"/"(默認(rèn)值)
      --preserve-root           不允許在"/"上遞歸操作
  -f, --silent, --quiet 去除大部份的錯(cuò)誤信息
      --reference=參考文件      使用參考文件的所屬組,而非指定值
  -R, --recursive               遞歸處理所有的文件及子目錄
  -v, --verbose                 為處理的所有文件顯示診斷信息

以下選項(xiàng)是在指定了 -R 選項(xiàng)時(shí)被用于設(shè)置如何穿越目錄結(jié)構(gòu)體系。
如果您指定了多于一個(gè)選項(xiàng),那么只有最后一個(gè)會(huì)生效。

  -H         如果命令行參數(shù)是一個(gè)通到目錄的符號(hào)鏈接,則遍歷符號(hào)鏈接
  -L         遍歷每一個(gè)遇到的通到目錄的符號(hào)鏈接
  -P         不遍歷任何符號(hào)鏈接(默認(rèn))

      --help            顯示此幫助信息并退出
      --version         顯示版本信息并退出

如果沒有指定所有者,則不會(huì)更改。 所屬組若沒有指定也不會(huì)更改,但當(dāng)加上
":"時(shí) GROUP 會(huì)更改為指定所有者的主要組。所有者和所屬組可以是數(shù)字或名稱。

例1:

代碼如下:


[root@localhost ~]# chown zhangy:zhangy nginx.conf         #將nginx.conf所屬用戶和組改為zhangy,zhangy
[root@localhost ~]# ls -al |grep nginx.conf
-rw-r--r--  1 zhangy zhangy    0  5月  3 15:21 nginx.conf
[root@localhost ~]# chown -R zhangy:zhangy www            #將www目錄,所屬用戶和組改為zhangy,zhangy
[root@localhost ~]# ls -al |grep ww
drwxr-xr-x  2 zhangy zhangy 4096  5月  3 15:20 www             #將www目錄,所屬用戶改為root
[root@localhost ~]# chown root nginx.conf
[root@localhost ~]# ls -al |grep nginx.conf
-rw-r--r--  1 root   zhangy    0  5月  3 15:21 nginx.conf

例2:

代碼如下:


[root@localhost database]# ll
總用量 4592
-rw-r--r--  1 root root    2466 7月  23 18:02 1.html
-rw-r--r--. 1 tank tank 4099771 5月  28 14:42 28toplearning.sql
-rw-r--r--. 1 tank tank  596069 5月  29 00:07 toplearning.tar.gz

代碼如下:


[root@localhost database]# chown .tank 1.html       #只改變組
[root@localhost database]# ll
總用量 4592
-rw-r--r--  1 root tank    2466 7月  23 18:02 1.html       #組已改變
-rw-r--r--. 1 tank tank 4099771 5月  28 14:42 28toplearning.sql
-rw-r--r--. 1 tank tank  596069 5月  29 00:07 toplearning.tar.gz

chmod
用法:chmod [選項(xiàng)]... 模式[,模式]... 文件...
 或:chmod [選項(xiàng)]... 八進(jìn)制模式 文件...
 或:chmod [選項(xiàng)]... --reference=參考文件 文件...
將每個(gè)文件的模式更改為指定值。

  -c, --changes         類似 --verbose,但只在有更改時(shí)才顯示結(jié)果
      --no-preserve-root        不特殊對(duì)待根目錄(默認(rèn))
      --preserve-root           禁止對(duì)根目錄進(jìn)行遞歸操作
  -f, --silent, --quiet 去除大部份的錯(cuò)誤信息
  -v, --verbose         為處理的所有文件顯示診斷信息
      --reference=參考文件      使用指定參考文件的模式,而非自行指定權(quán)限模式
  -R, --recursive               以遞歸方式更改所有的文件及子目錄
      --help            顯示此幫助信息并退出
      --version         顯示版本信息并退出

每種 MODE 都應(yīng)屬于這類形式"[ugoa]*([-+=]([rwxXst]*|[ugo]))+"。

操作對(duì)像

   u 文件屬主權(quán)限
   g 同組用戶權(quán)限
   o 其它用戶權(quán)限
   a 所有用戶(包括以上三種)

權(quán)限設(shè)定

   + 增加權(quán)限
   - 取消權(quán)限
   =  唯一設(shè)定權(quán)限

權(quán)限類別

   r 讀權(quán)限
   w 寫權(quán)限
   x 執(zhí)行權(quán)限
   X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過為可執(zhí)行。
   s 文件屬主和組id
   l 給文件加鎖,使其它用戶無法訪問

   r-->4
   w-->2
   x-->1

例1:

代碼如下:


[root@localhost ~]# chmod ugo+r nginx_bak.conf        #所有人皆可讀取
[root@localhost ~]# chmod a+r nginx_bak.conf          #所有人皆可讀取
[root@localhost ~]# chmod ug+w,o-w nginx_bak.conf     #設(shè)為該檔案擁有者,與其所屬同一個(gè)群體者可寫入,但其他以外的人則不可寫入
[root@localhost ~]# chmod u+x nginx_bak.conf          #創(chuàng)建者擁有執(zhí)行權(quán)限
[root@localhost ~]# chmod -R a+r ./www/             #將www下的所有檔案與子目錄皆設(shè)為任何人可讀取
[root@localhost ~]# chmod a-x nginx_bak.conf          #收回所有用戶的對(duì)nginx_bak.conf的執(zhí)行權(quán)限
[root@localhost ~]# chmod 777 nginx_bak.conf          #所有人可讀,寫,執(zhí)行


例2:

代碼如下:


# chmod a+s test.ppt    #chmod g+s ,為某個(gè)文件設(shè)置替代組標(biāo)識(shí)
# ls -al |grep test.ppt
-rwSr-Sr--.  1 tank tank    2320384 11月 18 19:29 test.ppt


第一個(gè)S指示用戶替代標(biāo)識(shí)(suid)已經(jīng)被設(shè)置。
第二個(gè)S指示替代組標(biāo)識(shí)(sgid)已經(jīng)被設(shè)置。

這樣,每一個(gè)運(yùn)行該程序的用戶將給予和程序擁有者同樣有效的用戶標(biāo)識(shí),和用戶所屬組同樣有效的組標(biāo)識(shí)。

到此,相信大家對(duì)“Linux系統(tǒng)中chown和chmod命令的用法區(qū)別”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI