偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

chgrp和newgrp命令簡介

系統(tǒng) Linux
在最近的一篇文章中,我介紹了 chown 命令,它用于修改系統(tǒng)上的文件所有權(quán)?;叵胍幌?,所有權(quán)是分配給一個對象的用戶和組的組合。chgrp 和 newgrp 命令為管理需要維護組所有權(quán)的文件提供了幫助。

[[278194]]

chgrp 和 newgrp 命令可幫助你管理需要維護組所有權(quán)的文件。

在最近的一篇文章中,我介紹了 chown 命令,它用于修改系統(tǒng)上的文件所有權(quán)?;叵胍幌?,所有權(quán)是分配給一個對象的用戶和組的組合。chgrpnewgrp 命令為管理需要維護組所有權(quán)的文件提供了幫助。

使用 chgrp

chgrp 只是更改文件的組所有權(quán)。這與 chown :<group> 命令相同。你可以使用:

  1. $chown :alan mynotes

或者:

  1. $chgrp alan mynotes

遞歸

chgrp 和它的一些參數(shù)可以用在命令行和腳本中。就像許多其他 Linux 命令一樣,chgrp 有一個遞歸參數(shù) -R。如下所示,你需要它來對文件夾及其內(nèi)容進行遞歸操作。我加了 -v(詳細)參數(shù),因此 chgrp 會告訴我它在做什么:

  1. $ ls -l . conf
  2. .:
  3. drwxrwxr-x 2 alan alan 4096 Aug  5 15:33 conf
  4.  
  5. conf:
  6. -rw-rw-r-- 1 alan alan 0 Aug  5 15:33 conf.xml
  7. # chgrp -vR delta conf
  8. changed group of 'conf/conf.xml' from alan to delta
  9. changed group of 'conf' from alan to delta

參考

當你要更改文件的組以匹配特定的配置,或者當你不知道具體的組時(比如你運行一個腳本時),可使用參考文件 (--reference=RFILE)。你可以復(fù)制另外一個作為參考的文件(RFILE)的組。比如,為了撤銷上面的更改 (請注意,點 . 代表當前工作目錄):

  1. $ chgrp -vR --reference=. conf

報告更改

大多數(shù)命令都有用于控制其輸出的參數(shù)。最常見的是 -v 來啟用詳細信息,而且 chgrp 命令也擁有詳細模式。它還具有 -c--changes)參數(shù),指示 chgrp 僅在進行了更改時報告。chgrp 還會報告其他內(nèi)容,例如是操作不被允許時。

參數(shù) -f--silent、--quiet)用于禁止顯示大部分錯誤消息。我將在下一節(jié)中使用此參數(shù)和 -c 來顯示實際更改。

保持根目錄

Linux 文件系統(tǒng)的根目錄(/)應(yīng)該受到高度重視。如果命令在此層級犯了一個錯誤,那么后果可能是可怕的,并會讓系統(tǒng)無法使用。尤其是在運行一個會遞歸修改甚至刪除的命令時。chgrp 命令有一個可用于保護和保持根目錄的參數(shù)。它是 --preserve-root。如果在根目錄中將此參數(shù)和遞歸一起使用,那么什么也不會發(fā)生,而是會出現(xiàn)一條消息:

  1. [root@localhost /]# chgrp -cfR --preserve-root a+w /
  2. chgrp: it is dangerous to operate recursively on '/'
  3. chgrp: use --no-preserve-root to override this failsafe

不與遞歸(-R)結(jié)合使用時,該選項無效。但是,如果該命令由 root 用戶運行,那么 / 的權(quán)限將會更改,但其下的其他文件或目錄的權(quán)限則不會被更改:

  1. [alan@localhost /]$ chgrp -c --preserve-root alan /
  2. chgrp: changing group of '/': Operation not permitted
  3. [root@localhost /]# chgrp -c --preserve-root alan /
  4. changed group of '/' from root to alan

令人驚訝的是,它似乎不是默認參數(shù)。而選項 --no-preserve-root 是默認的。如果你在不帶“保持”選項的情況下運行上述命令,那么它將默認為“無保持”模式,并可能會更改不應(yīng)更改的文件的權(quán)限:

  1. [alan@localhost /]$ chgrp -cfR alan /
  2. changed group of '/dev/pts/0' from tty to alan
  3. changed group of '/dev/tty2' from tty to alan
  4. changed group of '/var/spool/mail/alan' from mail to alan

關(guān)于 newgrp

newgrp 命令允許用戶覆蓋當前的主要組。當你在所有文件必須有相同的組所有權(quán)的目錄中操作時,newgrp 會很方便。假設(shè)你的內(nèi)網(wǎng)服務(wù)器上有一個名為 share 的目錄,不同的團隊在其中存儲市場活動照片。組名為 share。當不同的用戶將文件放入目錄時,文件的主要組可能會變得混亂。每當添加新文件時,你都可以運行 chgrp 將錯亂的組糾正為 share

  1. $ cd share
  2. ls -l
  3. -rw-r--r--. 1 alan share 0 Aug  7 15:35 pic13
  4. -rw-r--r--. 1 alan alan 0 Aug  7 15:35 pic1
  5. -rw-r--r--. 1 susan delta 0 Aug  7 15:35 pic2
  6. -rw-r--r--. 1 james gamma 0 Aug  7 15:35 pic3
  7. -rw-rw-r--. 1 bill contract  0 Aug  7 15:36 pic4

我在 chmod 命令的文章中介紹了 setgid 模式。它是解決此問題的一種方法。但是,假設(shè)由于某種原因未設(shè)置 setgid 位。newgrp 命令在此時很有用。在任何用戶將文件放入 share 目錄之前,他們可以運行命令 newgrp share。這會將其主要組切換為 share,因此他們放入目錄中的所有文件都將有 share 組,而不是用戶自己的主要組。完成后,用戶可以使用以下命令切換回常規(guī)主要組(舉例):

  1. newgrp alan

總結(jié)

了解如何管理用戶、組和權(quán)限非常重要。知道一些替代方法來解決可能遇到的問題,因為并非所有環(huán)境都以相同的方式設(shè)置。 

 

責任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2017-03-01 13:36:14

Linuxchattr命令chgrp命令

2010-03-08 16:55:32

Linux chgrpchown命令

2010-06-24 16:55:47

Linux chgrp

2009-12-14 11:15:34

Linux chgrp

2010-06-24 16:47:45

Linux Chgrp

2010-06-24 17:02:07

Linux chgrp

2011-08-15 11:15:06

newgrp中文man

2010-06-24 16:58:25

Linux chgrp

2011-08-11 17:35:07

chgrp中文man

2010-01-06 11:24:27

Linux命令

2010-04-27 16:25:53

AIX內(nèi)存

2011-03-15 15:47:25

iptables安裝命令

2009-12-31 13:56:16

Ubuntu shel

2010-04-27 10:04:52

Oracle rman

2010-11-24 15:33:59

mysql命令行參數(shù)

2016-11-15 15:23:27

2010-04-26 10:41:12

Aix ftp

2011-07-12 15:18:01

SQLite數(shù)據(jù)庫引擎

2009-12-25 15:23:18

Linux shell

2010-06-24 17:14:16

Linux chkco
點贊
收藏

51CTO技術(shù)棧公眾號