chgrp 命令
功能:改變文件或目錄所屬的組圆仔。
語(yǔ)法:chgrp [選項(xiàng)] group filename?
參數(shù):
- -c或–changes 效果類似”-v”參數(shù)衙吩,但僅回報(bào)更改的部分。
- -f或–quiet或–silent 不顯示錯(cuò)誤信息改艇。
- -h或–no-dereference 只對(duì)符號(hào)連接的文件作修改,而不更動(dòng)其他任何相關(guān)文件。
- -R或–recursive 遞歸處理媒惕,將指定目錄下的所有文件及子目錄一并處理。
- -v或–verbose 顯示指令執(zhí)行過(guò)程来庭。
- –help 在線幫助妒蔚。
- –reference=<參考文件或目錄> 把指定文件或目錄的所屬群組全部設(shè)成和參考文件或目錄的所屬群組相同。
- –version 顯示版本信息月弛。
該命令改變指定指定文件所屬的用戶組肴盏。其中g(shù)roup可以是用戶組ID,也可以是/etc/group文件中用戶組的組名帽衙。文件名是以空格分開(kāi)的要改變屬組的文件列表菜皂,支持通配符。如果用戶不是該文件的屬主或超級(jí)用戶厉萝,則不能改變?cè)撐募慕M幌墓。
該命令的各選項(xiàng)含義為:
– R 遞歸式地改變指定目錄及其下的所有子目錄和文件的屬組。
例1:
1. $ chgrp - R hadoop /opt/local/book
改變/opt/local/book/及其子目錄下的所有文件的屬組為hadoop冀泻。
chown 命令
功能:更改某個(gè)文件或目錄的屬主和屬組常侣。這個(gè)命令也很常用。例如root用戶把自己的一個(gè)文件拷貝給用戶yusi弹渔,為了讓用戶yusi能夠存取這個(gè)文件胳施,root用戶應(yīng)該把這個(gè)文件的屬主設(shè)為yusi,否則肢专,用戶yusi無(wú)法存取這個(gè)文件舞肆。
語(yǔ)法:chown [選項(xiàng)] 用戶或組 文件
說(shuō)明:chown將指定文件的擁有者改為指定的用戶或組。用戶可以是用戶名或用戶ID博杖。組可以是組名或組ID椿胯。文件是以空格分開(kāi)的要改變權(quán)限的文件列表,支持通配符剃根。
參數(shù)說(shuō)明:
- user : 新的檔案擁有者的使用者 ID
- group : 新的檔案擁有者的使用者群體(group)
- -c : 若該檔案擁有者確實(shí)已經(jīng)更改哩盲,才顯示其更改動(dòng)作
- -f : 若該檔案擁有者無(wú)法被更改也不要顯示錯(cuò)誤訊息
- -h : 只對(duì)于連結(jié)(link)進(jìn)行變更,而非該 link 真正指向的檔案
- -v : 顯示擁有者變更的詳細(xì)資料
- -R : 對(duì)目前目錄下的所有檔案與子目錄進(jìn)行相同的擁有者變更(即以遞回的方式逐個(gè)變更)
- –help : 顯示輔助說(shuō)明
- –version : 顯示版本
例1:把文件yusi123.com的所有者改為yusi。
- $ chown yusi yusi123.com
例2:把目錄/demo及其下的所有文件和子目錄的屬主改成yusi廉油,屬組改成users惠险。
$ chown - R yusi.users /demo
例如:chown qq /home/qq (把home目錄下的qq目錄的擁有者改為qq用戶)
例如:chown -R qq /home/qq (把home目錄下的qq目錄下的所有子文件的擁有者改為qq用戶)
Linux 中將用戶添加到組的指令
useradd -G {group-name} username
例如,我們要?jiǎng)?chuàng)建一個(gè)新用戶 cnzhx 并將其添加到用戶組 developers 中抒线。首先需要以 root 用戶身份登錄到系統(tǒng)中班巩。先確認(rèn)一下是否存在 developers 這個(gè)用戶組,在命令行輸入:
# grep developers /etc/group
輸出類似于:
developers:x:1124:
如果看不到任何輸出嘶炭,那么就需要先創(chuàng)建這個(gè)用戶組了抱慌,使用 groupadd
命令:
# groupadd developers
然后創(chuàng)建用戶 cnzhx 并將其加入到 developers 用戶組:
# useradd -G developers cnzhx
為用戶 cnzhx 設(shè)置密碼:
# passwd cnzhx
為確保已經(jīng)將該用戶正確的添加到 developers 用戶組中,可以查看該用戶的屬性眨猎,使用 id
命令:
# id cnzhx
輸出類似于:
uid=1122(cnzhx) gid=1125(cnzhx) groups=1125(cnzhx),1124(developers)
前面命令中用到的大寫(xiě)的 G (-G) 參數(shù)就是為了將用戶添加到一個(gè)附加用戶組中遥缕,而同時(shí)還會(huì)為此用戶創(chuàng)建一個(gè)屬于他自己的新組 cnzhx。如果要將該用戶同時(shí)增加到多個(gè)附加用戶組中宵呛,可以使用英文半角的逗號(hào)來(lái)分隔多個(gè)附加組名(不要加空格)单匣。例如,同時(shí)將 cnzhx 增加到 admins, ftp, www, 和 developers 用戶組中宝穗,可以輸入以下命令:
# useradd -G admins,ftp,www,developers cnzhx
useradd 示例 – 增加一個(gè)新用戶到主要用戶組?
要增加用戶 cnzhx 到組 developers户秤,可以使用下面的指令:
# useradd -g developers cnzhx
# id cnzhx
輸出類似于:
uid=1123(cnzhx) gid=1124(developers) groups=1124(developers)
請(qǐng)注意如前面的示例的區(qū)別,這里使用了小寫(xiě)字母 g (-g)作為參數(shù)逮矛,此時(shí)用戶的主要用戶組不再是 cnzhx 而直接就是 developers鸡号。
小寫(xiě)字母 g (-g)將新增加的用戶初始化為指定為登錄組(主要用戶組)。此組名必須已經(jīng)存在须鼎。組號(hào)(gid)即是此已有組的組號(hào)鲸伴。
usermod 示例 – 將一個(gè)已有用戶增加到一個(gè)已有用戶組中?
將一個(gè)已有用戶 cnzhx 增加到一個(gè)已有用戶組 apache 中,使此用戶組成為該用戶的附加用戶組晋控,可以使用帶 -a 參數(shù)的 usermod
指令汞窗。-a 代表 append, 也就是將用戶添加到新用戶組中而不必離開(kāi)原有的其他用戶組赡译。不過(guò)需要與 -G 選項(xiàng)配合使用:
# usermod -a -G apache cnzhx
如果要同時(shí)將 cnzhx 的主要用戶組改為 apache仲吏,則直接使用 -g 選項(xiàng):
# usermod -g apache cnzhx
如果要將一個(gè)用戶從某個(gè)組中刪除,則
gpasswd -d user group
但是這個(gè)時(shí)候需要保證 group 不是 user 的主組蝌焚。