溫馨提示×

溫馨提示×

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

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

linux修改權(quán)限命令是什么

發(fā)布時間:2021-07-27 10:39:49 來源:億速云 閱讀:579 作者:chen 欄目:建站服務(wù)器

這篇文章主要講解了“l(fā)inux修改權(quán)限命令是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“l(fā)inux修改權(quán)限命令是什么”吧!

linux權(quán)限命令:1、chgrp命令,用于修改文件和目錄的所屬組;2、chown命令,用于修改文件和目錄的所有者和所屬組;3、chmod命令,可以修改文件或目錄的權(quán)限;4、umask命令,可以令新建文件和目錄擁有默認(rèn)權(quán)限。

本教程操作環(huán)境:CentOS 6系統(tǒng)、Dell G3電腦。

Linux chgrp命令:修改文件和目錄的所屬組

chgrp 命令用于修改文件(或目錄)的所屬組。

為了方便初學(xué)者記憶,可以將 chgrp 理解為是 "change group" 的縮寫。

chgrp 命令的用法很簡單,其基本格式為:

[root@localhost ~]# chgrp [-R] 所屬組 文件名(目錄名)
  • -R(注意是大寫)選項長作用于更改目錄的所屬組,表示更改連同子目錄中所有文件的所屬組信息。

使用此命令需要注意的一點是,要被改變的群組名必須是真實存在的,否則命令無法正確執(zhí)行,會提示 "invaild group name"。

舉個例子,當(dāng)以 root 身份登錄 Linux 系統(tǒng)時,主目錄中會存在一個名為 install.log 的文件,我們可以使用如下方法修改此文件的所屬組:

[root@localhost ~]# groupadd group1
#新建用于測試的群組 group1
[root@localhost ~]# chgrp group1 install.log
#修改install.log文件的所屬組為group1
[root@localhost ~]# ll install.log
-rw-r--r--. 1 root group1 78495 Nov 17 05:54 install.log
#修改生效
[root@localhost ~]# chgrp testgroup install.log
chgrp: invaild group name 'testgroup'

可以看到,在具有 group1 群組的前提下,我們成功修改了 install.log 文件的所屬組,但我們再次試圖將所屬組修改為 testgroup 時,命令執(zhí)行失敗,就是因為系統(tǒng)的 /etc/group 文件中,沒有 testgroup 群組。

Linux chown命令:修改文件和目錄的所有者和所屬組

chown 命令,可以認(rèn)為是 "change owner" 的縮寫,主要用于修改文件(或目錄)的所有者,除此之外,這個命令也可以修改文件(或目錄)的所屬組。

當(dāng)只需要修改所有者時,可使用如下 chown 命令的基本格式:

[root@localhost ~]# chown [-R] 所有者 文件或目錄
  • -R(注意大寫)選項表示連同子目錄中的所有文件,都更改所有者。

如果需要同時更改所有者和所屬組,chown 命令的基本格式為:

[root@localhost ~]# chown [-R] 所有者:所屬組 文件或目錄

注意,在 chown 命令中,所有者和所屬組中間也可以使用點(.),但會產(chǎn)生一個問題,如果用戶在設(shè)定賬號時加入了小數(shù)點(例如 zhangsan.temp),就會造成系統(tǒng)誤判。因此,建議大家使用冒號連接所有者和所屬組。

當(dāng)然,chown 命令也支持單純的修改文件或目錄的所屬組,例如 chown :group install.log 就表示修改 install.log 文件的所屬組,但修改所屬組通常使用 chgrp 命令,因此并不推薦大家使用 chown 命令。

另外需要注意的一點是,使用 chown 命令修改文件或目錄的所有者(或所屬者)時,要保證使用者用戶(或用戶組)存在,否則該命令無法正確執(zhí)行,會提示 "invalid user" 或者 "invaild group"。

【例 1】

其實,修改文件的所有者,更多時候是為了得到更高的權(quán)限,舉一個實例:

[root@localhost ~]# touch file
#由root用戶創(chuàng)建file文件
[root@localhost ~]# ll file
-rw-r--r--. 1 root root 0 Apr 17 05:12 file
#文件的所有者是root,普通用戶user對這個文件擁有只讀權(quán)限
[root@localhost ~]# chown user file
#修改文件的所有者
[root@localhost ~]# ll file
-rw-r--r--. 1 user root 0 Apr 17 05:12 file
#所有者變成了user用戶,這時user用戶對這個文件就擁有了讀、寫權(quán)限

可以看到,通過修改 file 文件的所有者,user 用戶從其他人身份(只對此文件有讀取權(quán)限)轉(zhuǎn)變成了所有者身份,對此文件擁有讀和寫權(quán)限。

【例 2】

Linux 系統(tǒng)中,用戶等級權(quán)限的劃分是非常清楚的,root 用戶擁有最高權(quán)限,可以修改任何文件的權(quán)限,而普通用戶只能修改自己文件的權(quán)限(所有者是自己的文件),例如:

[root@localhost ~]# cd /home/user
#進(jìn)入user用戶的家目錄
[root@localhost user]# touch test
#由root用戶新建文件test
[root@localhost user]# ll test
-rw-r--r--. 1 root root 0 Apr 17 05:37 test
#文件所有者和所屬組都是root用戶
[root@localhost user]# su - user
#切換為user用戶
[user@localhost ~]$ chmod 755 test
chmod:更改"test"的權(quán)限:不允許的操作 #user用戶不能修改test文件的權(quán)限
[user@localhost ~]$ exit
#退回到root身份
[root@localhost user]# chown user test
#由root用戶把test文件的所有者改為user用戶
[root@localhost user]# su - user
#切換為user用戶
[user@localhost ~]$ chmod 755 test
#user用戶由于是test文件的所有者,所以可以修改文件的權(quán)限
[user@localhost ~]$ ll test
-rwxr-xr-x. 1 user root 0 Apr 17 05:37 test
#查看權(quán)限

可以看到,user 用戶無權(quán)更改所有者為 root 用戶文件的權(quán)限,只有普通用戶是這個文件的所有者,才可以修改文件的權(quán)限。

【例 3】

[root@localhost ~]# chown user:group file
[root@localhost ~]# ll file
-rw-r--r--. 1 user group 0 Apr 17 05:12 file

chmod命令:修改文件或目錄的權(quán)限

chmod 命令設(shè)定文件權(quán)限的方式有 2 種,分別可以使用數(shù)字或者符號來進(jìn)行權(quán)限的變更。

1、chmod命令使用數(shù)字修改文件權(quán)限

Linux 系統(tǒng)中,文件的基本權(quán)限由 9 個字符組成,以 rwxrw-r-x 為例,我們可以使用數(shù)字來代表各個權(quán)限,各個權(quán)限與數(shù)字的對應(yīng)關(guān)系如下:

r --> 4

w --> 2

x --> 1

由于這 9 個字符分屬 3 類用戶,因此每種用戶身份包含 3 個權(quán)限(r、w、x),通過將 3 個權(quán)限對應(yīng)的數(shù)字累加,最終得到的值即可作為每種用戶所具有的權(quán)限。

拿 rwxrw-r-x 來說,所有者、所屬組和其他人分別對應(yīng)的權(quán)限值為:

所有者 = rwx = 4+2+1 = 7

所屬組 = rw- = 4+2 = 6

其他人 = r-x = 4+1 = 5

所以,此權(quán)限對應(yīng)的權(quán)限值就是 765。

使用數(shù)字修改文件權(quán)限的 chmod 命令基本格式為:

[root@localhost ~]# chmod [-R] 權(quán)限值 文件名
  • -R(注意是大寫)選項表示連同子目錄中的所有文件,也都修改設(shè)定的權(quán)限。

例如,使用如下命令,即可完成對 .bashrc 目錄文件的權(quán)限修改:

[root@localhost ~]# ls -al .bashrc
-rw-r--r--. 1 root root 176 Sep 22 2004 .bashrc
[root@localhost ~]# chmod 777 .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxrwxrwx. 1 root root 176 Sep 22 2004 .bashrc

再舉個例子,通常我們以 Vim 編輯 Shell 文件批處理文件后,文件權(quán)限通常是 rw-rw-r--(644),那么,如果要將該文件變成可執(zhí)行文件,并且不讓其他人修改此文件,則只需將此文件的權(quán)限該為 rwxr-xr-x(755)即可。

2、chmod命令使用字母修改文件權(quán)限

既然文件的基本權(quán)限就是 3 種用戶身份(所有者、所屬組和其他人)搭配 3 種權(quán)限(rwx),chmod 命令中用 u、g、o 分別代表 3 種身份,還用 a 表示全部的身份(all 的縮寫)。另外,chmod 命令仍使用 r、w、x 分別表示讀、寫、執(zhí)行權(quán)限。

使用字母修改文件權(quán)限的 chmod 命令,其基本格式如下圖所示。

linux修改權(quán)限命令是什么

例如,如果我們要設(shè)定 .bashrc 文件的權(quán)限為 rwxr-xr-x,則可執(zhí)行如下命令:

[root@localhost ~]# chmod u=rwx,go=rx .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxr-xr-x. 1 root root 176 Sep 22 2004 .bashrc

再舉個例子,如果想要增加 .bashrc 文件的每種用戶都可做寫操作的權(quán)限,可以使用如下命令:

[root@localhost ~]# ls -al .bashrc
-rwxr-xr-x. 1 root root 176 Sep 22 2004 .bashrc
[root@localhost ~]# chmod a+w .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxrwxrwx. 1 root root 176 Sep 22 2004 .bashrc

umask命令:令新建文件和目錄擁有默認(rèn)權(quán)限

Linux 通過使用 umask 默認(rèn)權(quán)限來給所有新建的文件和目錄賦予初始權(quán)限的。

那么,我們?nèi)绾蔚弥?umask 默認(rèn)權(quán)限的值呢?直接通過 umask 命令即可:

[root@localhost ~]# umask
0022
#root用戶默認(rèn)是0022,普通用戶默認(rèn)是 0002

umask默認(rèn)權(quán)限的修改方法

umask 權(quán)限值可以通過如下命令直接修改:

[root@localhost ~]# umask 002
[root@localhost ~]# umask
0002
[root@localhost ~]# umask 033
[root@localhost ~]# umask
0033

不過,這種方式修改的 umask 只是臨時有效,一旦重啟或重新登陸系統(tǒng),就會失效。如果想讓修改永久生效,則需要修改對應(yīng)的環(huán)境變量配置文件 /etc/profile。例如:

[root@localhost ~]# vim /etc/profile
...省略部分內(nèi)容...
if [ $UID -gt 199]&&[ "'id -gn'" = "'id -un'" ]; then
    umask 002
    #如果UID大于199(普通用戶),則使用此umask值
else
    umask 022
    #如果UID小于199(超級用戶),則使用此umask值
fi
…省略部分內(nèi)容…

這是一段 Shell 腳本程序,不懂也沒關(guān)系,大家只需要知道,普通用戶的 umask 由 if 語句的第一段定義,而超級用戶 root 的 umask 值由 else 語句定義即可。 修改此文件,則 umask 值就會永久生效。

感謝各位的閱讀,以上就是“l(fā)inux修改權(quán)限命令是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對linux修改權(quán)限命令是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

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

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

AI