先建立乙個目錄,看看許可權:
$ ll然後我們將許可權更改為444, 即所有都是r許可權總用量 20
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./
drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../
drwxrwxr-x 2 huangxm huangxm 4096 2月 16 16:35 test/
$ ll進入目錄試一下總用量 20
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./
drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../
dr--r--r-- 2 huangxm huangxm 4096 2月 16 16:35 test/
$ whoami沒有許可權進入目錄,看來只有r許可權是不行的,那我們再加上w許可權huangxm
$ cd test
bash: cd: test: 許可權不夠
huangxm@huanghao-virtual-m
$ ll再cd進入目錄試一下總用量 20
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./
drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../
drw-rw-r-- 2 huangxm huangxm 4096 2月 16 16:35 test/
$ cd test看來還是不行。那我們就加上x許可權 吧bash: cd: test: 許可權不夠
$ ll再cd進入目錄:總用量 20
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./
drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../
dr-xr-xr-- 2 huangxm huangxm 4096 2月 16 16:35 test/
$ cd test看來只有讀許可權是沒有辦法進入目錄的,只有rw許可權也是不能進入目錄的,所以一定要x許可權都有才可以。$ pwd
/home/huangxm/測試目錄/test
所以一般情況下,系統裡的資料夾都是755許可權,允許所有使用者進入資料夾。
那我們在test目錄下新建乙個檔案a.txt,並將test目錄許可權改為766,使所有使用者都有rw許可權。
$ ll可以看到test資料夾所有使用者都有w許可權 , a.txt檔案除root之外都只有r許可權,現在我們以其它使用者嘗試修改一下總用量 20
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./
drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../
drwxrw-rw- 2 huangxm huangxm 4096 2月 16 16:53 test/
$ ll
總用量 8
drwxrw-rw- 2 huangxm huangxm 4096 2月 16 16:53 ./
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ../
-rw-r--r-- 1 root root 0 2月 16 16:53 a.txt
d強制儲存一下,發現儲存成功了。再開啟檔案看看fdfd
fffffffffff
e45: 已設定選項 'readonly' (** ! 強制執行)
$ cat a.txt內容已經儲存了。。明明檔案是沒有寫入許可權的,但是可以強制寫入,而且可以刪除檔案,所以資料夾給w許可權是相當危險的事情。ijfeihifhfe
fefefe
fef
總結一下:
許可權操作rcd
rxcd ls
wxcd touch rm(self,other) vi(self,other)
wxtcd touch rm(self) vi(self)
理一下思路:
1. 使用root使用者建立目錄test , 並給others wx許可權,並建立a,b,c三個檔案
# mkdir test檢視一下, a,b,c是屬於root的#chmod o=wx test
# touch test/
-rw-r--r-- 1 root root 0 2月 16 18:00 a2. 切換到普通使用者身份,嘗試刪除a-rw-r--r-- 1 root root 0 2月 16 18:00 b
-rw-r--r-- 1 root root 0 2月 16 18:00 c
$ rm -f a到root使用者下ll看一下,普通使用者wx沒有ls許可權
# lla已經被刪掉了總用量 8
drwxr-x-wx 2 root root 4096 2月 16 18:01 ./
drwxrwxr-x 3 huangxm huangxm 4096 2月 16 17:56 ../
-rw-r--r-- 1 root root 0 2月 16 18:00 b
-rw-r--r-- 1 root root 0 2月 16 18:00 c
3. 以普通使用者vi b,修改後強制儲存,也是可以的。
4. 到root使用者下,給test目錄加個o=t許可權
# chmod o+t test到普通使用者下,嘗試刪除b# ls -l
總用量 4
drwxr-x-wt 2 root root 4096 2月 16 18:02 test
$ rm -f b加了t許可權後已經無法刪除別人的檔案了。再嘗試vi一下rm: 無法刪除"b": 不允許的操作
"b" e212: 無法開啟並寫入檔案即使加!強制儲存也不行了。請按 enter 或其它命令繼續
那麼用數字形式怎麼加t許可權呢,比如tmp目錄,這是個臨時目錄,所有人都需要往裡放東西,所以它是777的許可權,但是想一下,如果root放進去的東西,那別的使用者是不是也可以修改,那就不合理了。所以tmp目錄需要有個t許可權,不允許其它使用者修改,使用數字形式就是:
#chmod 1777 /tmpumask:
每個使用者在建立檔案和資料夾的時候,都會給予檔案和資料夾乙個預設許可權 ; 預設許可權就是根據各使用者的umask值來確定的。我們用root和普通使用者建立檔案和資料夾看看許可權:
drwxr-xr-x 2 root root 4096 2月 17 11:15 rootdir可以看出root使用者建立的資料夾許可權是755 ,建立的檔案許可權是644;普通使用者建立的資料夾許可權是775,建立的檔案許可權是664-rw-r--r-- 1 root root 0 2月 17 11:15 rootfile
drwxrwxr-x 2 huangxm huangxm 4096 2月 17 11:15 userdir
-rw-rw-r-- 1 huangxm huangxm 0 2月 17 11:15 usertouch
分別檢視一下root和普通使用者的umask值
# umaskroot的umask是022 , 普通使用者的是0020022
$ umask
0002
資料夾的許可權 777 – 022 = 755 , 檔案許可權 666 – 022 = 644
我們可以這麼理解,資料夾許可權就是777 – umask 檔案許可權就是666 – umask
但並不是真的是減法,實際上是掩碼,嘗試一下將umask值設為777 (在當前使用者下umask 777可以設定),那麼檔案許可權是000,並不是-1
Linux 資料夾許可權
資料夾預設許可權 drwxr xr x 755 檔案預設許可權 rw r r 644 drwxr xr x 第一位 左數 表示當前目錄是目錄還是檔案,d表示目錄,表示普通檔案.後面9位分為3組,每3組作為1組,從左到右分別表示 檔案屬主 建立者 檔案屬組 和建立者同組的使用者許可權 和其他所有使用者...
linux複製資料夾及賦予許可權
1.cp命令 命令 cp dir1 a.doc dir2 表示將dir1下的a.doc檔案複製到dir2目錄下 cp r dir1 dir2 表示將dir1及其dir1下所包含的檔案複製到dir2下 cp r dir1 dir2 表示將dir1下的檔案複製到dir2,不包括dir1目錄 說明 cp引...
linux 資料夾許可權修改
rw 600 只有所有者才有讀和寫的許可權 rw r r 644 只有所有者才有讀和寫的許可權,組群和其他人只有讀的許可權 rwx 700 只有所有者才有讀,寫,執行的許可權 rwxr xr x 755 只有所有者才有讀,寫,執行的許可權,組群和其他人只有讀和執行的許可權 rwx x x 711 只...