十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
這篇文章主要講解了“l(fā)inux修改權(quán)限命令是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“l(fā)inux修改權(quán)限命令是什么”吧!
創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、連山網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、商城網(wǎng)站制作、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為連山等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
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" 的縮寫(xiě)。
chgrp 命令的用法很簡(jiǎn)單,其基本格式為:
[root@localhost ~]# chgrp [-R] 所屬組 文件名(目錄名)
-R
(注意是大寫(xiě))選項(xiàng)長(zhǎng)作用于更改目錄的所屬組,表示更改連同子目錄中所有文件的所屬組信息。
使用此命令需要注意的一點(diǎn)是,要被改變的群組名必須是真實(shí)存在的,否則命令無(wú)法正確執(zhí)行,會(huì)提示 "invaild group name"。
舉個(gè)例子,當(dāng)以 root 身份登錄 Linux 系統(tǒng)時(shí),主目錄中會(huì)存在一個(gè)名為 install.log 的文件,我們可以使用如下方法修改此文件的所屬組:
[root@localhost ~]# groupadd group1 #新建用于測(cè)試的群組 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 文件的所屬組,但我們?cè)俅卧噲D將所屬組修改為 testgroup 時(shí),命令執(zhí)行失敗,就是因?yàn)橄到y(tǒng)的 /etc/group 文件中,沒(méi)有 testgroup 群組。
Linux chown命令:修改文件和目錄的所有者和所屬組
chown 命令,可以認(rèn)為是 "change owner" 的縮寫(xiě),主要用于修改文件(或目錄)的所有者,除此之外,這個(gè)命令也可以修改文件(或目錄)的所屬組。
當(dāng)只需要修改所有者時(shí),可使用如下 chown 命令的基本格式:
[root@localhost ~]# chown [-R] 所有者 文件或目錄
-R
(注意大寫(xiě))選項(xiàng)表示連同子目錄中的所有文件,都更改所有者。
如果需要同時(shí)更改所有者和所屬組,chown 命令的基本格式為:
[root@localhost ~]# chown [-R] 所有者:所屬組 文件或目錄
注意,在 chown 命令中,所有者和所屬組中間也可以使用點(diǎn)(.),但會(huì)產(chǎn)生一個(gè)問(wèn)題,如果用戶在設(shè)定賬號(hào)時(shí)加入了小數(shù)點(diǎn)(例如 zhangsan.temp),就會(huì)造成系統(tǒng)誤判。因此,建議大家使用冒號(hào)連接所有者和所屬組。
當(dāng)然,chown 命令也支持單純的修改文件或目錄的所屬組,例如 chown :group install.log 就表示修改 install.log 文件的所屬組,但修改所屬組通常使用 chgrp 命令,因此并不推薦大家使用 chown 命令。
另外需要注意的一點(diǎn)是,使用 chown 命令修改文件或目錄的所有者(或所屬者)時(shí),要保證使用者用戶(或用戶組)存在,否則該命令無(wú)法正確執(zhí)行,會(huì)提示 "invalid user" 或者 "invaild group"。
【例 1】
其實(shí),修改文件的所有者,更多時(shí)候是為了得到更高的權(quán)限,舉一個(gè)實(shí)例:
[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對(duì)這個(gè)文件擁有只讀權(quán)限 [root@localhost ~]# chown user file #修改文件的所有者 [root@localhost ~]# ll file -rw-r--r--. 1 user root 0 Apr 17 05:12 file #所有者變成了user用戶,這時(shí)user用戶對(duì)這個(gè)文件就擁有了讀、寫(xiě)權(quán)限
可以看到,通過(guò)修改 file 文件的所有者,user 用戶從其他人身份(只對(duì)此文件有讀取權(quán)限)轉(zhuǎn)變成了所有者身份,對(duì)此文件擁有讀和寫(xiě)權(quán)限。
【例 2】
Linux 系統(tǒng)中,用戶等級(jí)權(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 用戶無(wú)權(quán)更改所有者為 root 用戶文件的權(quán)限,只有普通用戶是這個(gè)文件的所有者,才可以修改文件的權(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ù)字或者符號(hào)來(lái)進(jìn)行權(quán)限的變更。
1、chmod命令使用數(shù)字修改文件權(quán)限
Linux 系統(tǒng)中,文件的基本權(quán)限由 9 個(gè)字符組成,以 rwxrw-r-x 為例,我們可以使用數(shù)字來(lái)代表各個(gè)權(quán)限,各個(gè)權(quán)限與數(shù)字的對(duì)應(yīng)關(guān)系如下:
r --> 4
w --> 2
x --> 1
由于這 9 個(gè)字符分屬 3 類用戶,因此每種用戶身份包含 3 個(gè)權(quán)限(r、w、x),通過(guò)將 3 個(gè)權(quán)限對(duì)應(yīng)的數(shù)字累加,最終得到的值即可作為每種用戶所具有的權(quán)限。
拿 rwxrw-r-x 來(lái)說(shuō),所有者、所屬組和其他人分別對(duì)應(yīng)的權(quán)限值為:
所有者 = rwx = 4+2+1 = 7
所屬組 = rw- = 4+2 = 6
其他人 = r-x = 4+1 = 5
所以,此權(quán)限對(duì)應(yīng)的權(quán)限值就是 765。
使用數(shù)字修改文件權(quán)限的 chmod 命令基本格式為:
[root@localhost ~]# chmod [-R] 權(quán)限值 文件名
-R
(注意是大寫(xiě))選項(xiàng)表示連同子目錄中的所有文件,也都修改設(shè)定的權(quán)限。
例如,使用如下命令,即可完成對(duì) .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
再舉個(gè)例子,通常我們以 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 的縮寫(xiě))。另外,chmod 命令仍使用 r、w、x 分別表示讀、寫(xiě)、執(zhí)行權(quán)限。
使用字母修改文件權(quán)限的 chmod 命令,其基本格式如下圖所示。
例如,如果我們要設(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
再舉個(gè)例子,如果想要增加 .bashrc 文件的每種用戶都可做寫(xiě)操作的權(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 通過(guò)使用 umask 默認(rèn)權(quán)限來(lái)給所有新建的文件和目錄賦予初始權(quán)限的。
那么,我們?nèi)绾蔚弥?umask 默認(rèn)權(quán)限的值呢?直接通過(guò) umask 命令即可:
[root@localhost ~]# umask 0022 #root用戶默認(rèn)是0022,普通用戶默認(rèn)是 0002
umask默認(rèn)權(quán)限的修改方法
umask 權(quán)限值可以通過(guò)如下命令直接修改:
[root@localhost ~]# umask 002 [root@localhost ~]# umask 0002 [root@localhost ~]# umask 033 [root@localhost ~]# umask 0033
不過(guò),這種方式修改的 umask 只是臨時(shí)有效,一旦重啟或重新登陸系統(tǒng),就會(huì)失效。如果想讓修改永久生效,則需要修改對(duì)應(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(超級(jí)用戶),則使用此umask值 fi …省略部分內(nèi)容…
這是一段 Shell 腳本程序,不懂也沒(méi)關(guān)系,大家只需要知道,普通用戶的 umask 由 if 語(yǔ)句的第一段定義,而超級(jí)用戶 root 的 umask 值由 else 語(yǔ)句定義即可。 修改此文件,則 umask 值就會(huì)永久生效。
感謝各位的閱讀,以上就是“l(fā)inux修改權(quán)限命令是什么”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)linux修改權(quán)限命令是什么這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!