# ls -l /etc/ 總用量 1088 -rw-r--r--. 1 root root 16 5月 22 01:29 time -rw-r--r--. 1 root root 1518 6月 7 2013 aliases -rw-r--r--. 1 root root 12288 5月 22 01:38 aliases.db "."表示該文件受SELinux控制(SELinux防火牆未徹底關閉時顯示)
[root@3 ~]# mkdir test [root@3 ~]# touch ./test/test3 [root@3 ~]# ls -ld test drwxr-xr-x 2 root root 19 6月 6 21:22 test [root@3 ~]# ls -l test 總用量 0 -rw-r--r-- 1 root root 0 6月 6 21:22 test3 [root@3 ~]# chmod 750 test 更改test的權限爲750 [root@3 ~]# ls -ld test drwxr-x--- 2 root root 19 6月 6 21:22 test [root@3 ~]# ls -l test/test3 查看test3的權限,未發生改變 -rw-r--r-- 1 root root 0 6月 6 21:22 test/test3 [root@3 ~]# chmod 755 test/test3 更改test3 的權限爲755 [root@3 ~]# ls -l test/test3 -rwxr-xr-x 1 root root 0 6月 6 21:22 test/test3 [root@3 ~]# chmod -R 700 test 級聯更改test、test3的權限爲700 [root@3 ~]# ls -ld test drwx------ 2 root root 19 6月 6 21:22 test [root@3 ~]# ls -l !$ ls -l test 總用量 0 -rwx------ 1 root root 0 6月 6 21:22 test3 !!! test和test3的權限均改成700
eg2:bash
[root@3 ~]# ls -ld test drwx------ 2 root root 19 6月 6 21:22 test [root@3 ~]# ls -l test 總用量 0 -rwx------ 1 root root 0 6月 6 21:22 test2 [root@3 ~]# chmod u=rwx,g=rx,o=rw test 更改test的全部者權限u=rwx,所屬組權限g=rx,其餘非羣組權限o=rw [root@3 ~]# ls -ld test drwxr-xrw- 2 root root 19 6月 6 21:22 test [root@3 ~]# chmod a+x test/test2 更改test2全部權限(包含u,g,o)增長x權限(此處a=all) [root@3 ~]# ls -l test 總用量 0 -rwx--x--x 1 root root 0 6月 6 21:22 test2
[root@3 tmp]# ls -l 總用量 0 drwxr-xr-x 2 root root 22 6月 7 07:23 3 drwx------ 3 root root 17 6月 7 07:16 systemd-private-bd8a94da330a4bc1984e8c95d8651460-vmtoolsd.service-ewuptl [root@3 tmp]# ls -l 3 總用量 0 -rw-r--r-- 1 root root 0 6月 7 07:21 2.txt [root@3 tmp]# chown 3 3/2.txt 更改全部者(user) [root@3 tmp]# ls -l 3 總用量 0 -rw-r--r-- 1 adai root 0 6月 7 07:21 2.txt [root@3 tmp]# chown :user1 3/2.txt 更改所屬組(group) [root@3 tmp]# ls -l 3 總用量 0 -rw-r--r-- 1 2 user1 0 6月 7 07:21 2.txt [root@3 tmp]# chown root:root 3/2.txt 同時更改全部者(user)和所屬組(group),該命令還能夠寫成‘chown root.root 3/2.txt’ [root@3 tmp]# ls -l 3 總用量 0 -rw-r--r-- 1 root root 0 6月 7 07:21 2.txt
語法: chgrp [-R] [組名] filename (-R表示級聯更改,只針對目錄文件)spa
eg1: 更改文件的所屬組code
[root@3 ~]# groupadd testgroup 添加組testgroup [root@3 ~]# touch test1 建立文件test1 [root@3 ~]# ls -l test1 -rw-r--r-- 1 root root 0 6月 7 10:39 test1 [root@3 ~]# chgrp testgroup test1 更改文件test1的所屬組爲testgroup [root@3 ~]# ls -l test1 -rw-r--r-- 1 root testgroup 0 6月 7 10:39 test1
eg2: 更改目錄的所屬組同步
[root@3 ~]# ls -l dirb/ 總用量 0 drwxr-xr-x 2 root root 6 6月 7 10:51 2 drwxr-xr-x 2 root root 6 6月 7 10:50 dirc [root@3 ~]# ls -ld !$ ls -ld dirb/ drwxr-xr-x 4 root root 30 6月 7 10:51 dirb/ [root@3 ~]# chgrp testgroup dirb/ 更改目錄dirb的所屬組爲testgroup [root@3 ~]# ls -ld !$ ls -ld dirb/ drwxr-xr-x 4 root testgroup 30 6月 7 10:51 dirb/ [root@3 ~]# ls -l !$ ls -l dirb/ 總用量 0 drwxr-xr-x 2 root root 6 6月 7 10:51 2 drwxr-xr-x 2 root root 6 6月 7 10:50 dirc [root@3 ~]# chgrp -R testgroup dirb/ 級聯更改目錄的所屬組(目錄下內容的所屬組同時跟着改變) [root@3 ~]# ls -l !$ ls -l dirb/ 總用量 0 drwxr-xr-x 2 root testgroup 6 6月 7 10:51 2 drwxr-xr-x 2 root testgroup 6 6月 7 10:50 dirc
注: 由於chown命令能夠替代chgrp命令,因此chgrp命令使用的並很少。it
>當咱們登陸系統以後建立一個文件老是有一個默認權限的,那麼這個權限是怎麼來的呢?這就是umask乾的事情。umask設置了用戶建立文件的默認權限,它與chmod的效果恰好相反,umask設置的是權限"補碼",而chmod設置的是文件權限碼。umask的默認值能夠更改,可是隻有在$[HOME]/.bashrc下增長umask值才能夠永久定義本身的umask值,不然只是臨時更改。
語法: umask xxx (此處xxx表明三個數字)test
[root@3 ~]# umask 查看umask值 0022 即:umask的預設是0022 [root@3 ~]# umask 020 預設umask值爲020 [root@3 ~]# umask 0020 [root@3 ~]# umask 022 [root@3 ~]# umask 0022
注: 默認狀態下,文件umask+chmod=666;目錄umask+chmod=777(限於權限位加減法)。登錄
>只有超級權限的用戶才具備使用該命令的權限,這項指令可改變存放在ext二、ext三、ext四、xfs、ubifs、reiserfs、jfs等文件系統上的文件或目錄屬性。file