1 文件全部者和屬組屬性操做
chown
設置文件的全部者
能夠修改文件的屬主,屬組
選項:
git
- OWNER #只修改全部者
- OWNER:GROUP #同時修改全部者和屬組
- :GROUP #只修改屬組,冒號也可用 . 替換 --reference=RFILE #參考指定的的屬性,來修改
- -R #遞歸,此選項慎用,很是危險!
[root@centos7 ~]# chown test f1.txt [root@centos7 ~]# ll f1.txt -rw-r--r--. 1 test root 595 11月 9 22:40 f1.txt
[root@centos7 ~]# chown :admins f1.txt
[root@centos7 ~]# ll f1.txt
-rw-r--r--. 1 test admins 595 11月 9 22:40 f1.txt
redis
[root@centos7 ~]# chown root.bin f1.txt
[root@centos7 ~]# ll f1.txt
-rw-r--r--. 1 root bin 595 11月 9 22:40 f1.txt
mongodb
[root@centos7 ~]# cp /etc/issue f2.txt
[root@centos7 ~]# ll f2.txt
-rw-r--r--. 1 root root 23 11月 9 22:43 f2.txt
[root@centos7 ~]# chown --reference=f1.txt f2.txt
[root@centos7 ~]# ll f1.txt f2.txt
-rw-r--r--. 1 root bin 595 11月 9 22:40 f1.txt
-rw-r--r--. 1 root bin 23 11月 9 22:43 f2.txt
docker
### chgrp 設置文件屬組信心 能夠只修改文件的屬組
[root@centos7 ~]# ll f1.txt
-rw-r--r--. 1 root bin 595 11月 9 22:40 f1.txt
[root@centos7 ~]# chgrp admins f1.txt
[root@centos7 ~]# ll f1.txt
-rw-r--r--. 1 root admins 595 11月 9 22:40 f1.txt
centos
# 2 文件權限 * owner 屬主, u * group 屬組, g * other 其餘, o **注意:從左向右進行順序匹配,一旦匹配權限當即生效,再也不向右查看其權限** ###### 對文件的權限 * r 可以使用文件查看類工具,好比:cat,能夠獲取其內容 * w 可修改其內容 * x 能夠把此文件提請內核啓動爲一個進程,便可以執行(運行)此文件 ###### 對文件夾的權限 * r 能夠使用ls查看此目錄中文件列表 * w 可在此目錄中建立文件,也可刪除此目錄中的文件,而和此被刪除的文件的權限無關 * x 能夠cd進入此目錄,能夠使用ls -l查看此目錄中文件元數據(須配合r權限),屬於目錄的可訪問的最 小權限 * X 只給目錄x權限,不給無執行權限的文件x權限 ### chmod who:u,g,o,a opt:+,-,= permission:r,w,x # 3 新建文件和目錄的默認權限 umask 的值能夠用來保留在建立文件權限 實現方式: * 新建文件的默認權限: 666-umask,若是所得結果某位存在執行(奇數)權限,則將其權限+1,偶數不變 * 新建目錄的默認權限: 777-umask 非特權用戶umask默認是 002 root的umask 默認是 022
[root@centos7 ~]# umask
0022
[root@centos7 ~]# umask -S
u=rwx,g=rx,o=rx
[root@centos7 ~]# umask -pS
umask -S u=rwx,g=rx,o=rx
[root@centos7 ~]# umask -p
umask 0022
bash
[root@centos7 ~]# umask 002
[root@centos7 ~]# umask u=rw,g=r,o=
ide
# 練習 1. 當用戶docker對/testdir 目錄無執行權限時,意味着沒法作哪些操做? * **意味着docker沒法進入文件夾,意味着ls該文件夾下文件,不能得到詳細信息**
docker1@centos7 ~]$ chmod a-x testdir/
[docker1@centos7 ~]$ ll testdir/ -d
drw-rw-r--. 2 docker1 docker1 6 Nov 9 23:03 testdir/
[docker1@centos7 ~]$ cd testdir/
-bash: cd: testdir/: Permission denied
工具
[docker1@centos7 ~]$ ll testdir/
ls: cannot access testdir/a: Permission denied
total 0
-????????? ? ? ? ? ? a
centos7
2. 當用戶mongodb對/testdir 目錄無讀權限時,意味着沒法作哪些操做? * **能夠cd,不能ls**
[docker1@centos7 ~]$ chmod a-r testdir/
[docker1@centos7 ~]$ ll testdir/
ls: cannot open directory testdir/: Permission denied
[docker1@centos7 ~]$ cd testdir/
[docker1@centos7 testdir]$ ll
ls: cannot open directory .: Permission denied
spa
3. 當用戶redis 對/testdir 目錄無寫權限時,該目錄下的只讀文件file1是否可修改和刪除? *** 能夠修改,沒法建立,沒法刪除**
[docker1@centos7 testdir]$ touch file2
touch: cannot touch ‘file2’: Permission denied
[docker1@centos7 testdir]$ rm file1
rm: cannot remove ‘file1’: Permission denied
4. 當用戶zabbix對/testdir 目錄有寫和執行權限時,該目錄下的只讀文件file1是否可修改和刪除? *** 能夠**
[docker1@centos7 testdir]$ ll
total 0
-rw-rw-r--. 1 docker1 docker1 0 Nov 9 23:08 a
-r--r--r--. 1 docker1 docker1 0 Nov 9 23:13 file1
[docker1@centos7 testdir]$ cd
[docker1@centos7 ~]$ chmod 333 testdir/
[docker1@centos7 ~]$ rm testdir/file1
rm: remove write-protected regular empty file ‘testdir/file1’? y
5. 複製/etc/fstab文件到/var/tmp下,設置文件全部者爲docker1讀寫權限,所屬組爲admins組有讀寫 權限,其餘人無權限
[root@centos7 /]# chown docker1.admins /var/tmp/fstab
[root@centos7 /]# ll /var/tmp/fstab
-rw-r--r--. 1 docker1 admins 595 11月 9 23:18 /var/tmp/fstab
[root@centos7 /]# chmod 660 /var/tmp/fstab
[root@centos7 /]# ll /var/tmp/fstab
-rw-rw----. 1 docker1 admins 595 11月 9 23:18 /var/tmp/fstab
6. 誤刪除了用戶git的家目錄,請重建並恢復該用戶家目錄及相應的權限屬性
[root@centos7 /]# cp -r /etc/skel/. /home/docker1[root@centos7 /]# chmod 700 /home/docker1/[root@centos7 /]# chown -R docker1.docker1 /home/docker1/[root@centos7 /]# ll /home/docker1/總用量 0[root@centos7 /]# ll /home/docker1/ -ddrwx------. 2 docker1 docker1 62 11月 9 23:26 /home/docker1/