重新理解Linux檔案許可權

2021-07-03 07:37:39 字數 2455 閱讀 8551

rwx

r 讀,開啟檔案

-r-------- 1 ubuntu ubuntu    6

jun1501:

50 hello.txt

ubuntu@ubuntu

:~/_mytest/rwx

$ cat hello.txt

hello

w 寫,編輯檔案

--w------- 1 ubuntu ubuntu    6

jun1501:

50 hello.txt

#然而並沒有什麼卵用~編輯的前提是有讀許可權

-rw------- 1 ubuntu ubuntu 6

jun1501:

50 hello.txt

vim hello.txt

#有出入,只有寫許可權是無法rm的。

ubuntu@ubuntu

:~/_mytest/rwx

$ rm pr.py

rm: remove write-protected regular file 'pr.py'?

ubuntu@ubuntu

:~/_mytest/rwx

$ ll

total 12

drwxrwxr-x 2 ubuntu ubuntu 4096

jun1501:

59 ./

drwx------ 3 ubuntu ubuntu 4096

jun1501:

49 ../

-r-------- 1 ubuntu ubuntu 46

jun1501:

59 pr.py

#用sudo可rm掉。

x 執行,執行檔案

# 可執行二進位制 / 指令碼檔案

---x------ 1 ubuntu ubuntu 46

jun1501:

59 pr.py*

#同理,並沒有什麼卵用。執行前需要讀許可權。

ubuntu@ubuntu

:~/_mytest/rwx

$ python pr.py

python: can't open file 'pr.py': [errno 13] permission denied

ubuntu@ubuntu:~/_mytest/rwx$ chmod 500 pr.py

ubuntu@ubuntu:~/_mytest/rwx$ python pr.py

this is a simaple print by python.

借用李罡的比喻,目錄就像一件屋子。

r 讀許可權是從窗戶外看裡面,看不真切,只能看到檔名。

ubuntu@ubuntu:~$ chmod 400 _mytest/

ubuntu@ubuntu:~$ ls _mytest/

ls: cannot access _mytest/hi_ln_s: permission denied

ls: cannot access _mytest/rwx: permission denied

ls: cannot access _mytest/t: permission denied

ls: cannot access _mytest/hi.txt: permission denied

ls: cannot access _mytest/hello.txt: permission denied

ls: cannot access _mytest/hi_ln: permission denied

hello.txt hi.txt hi_ln hi_ln_s rwx t

x 執行,進入目錄——進入屋子。

沒開燈,且不許亂動!

ubuntu@ubuntu

:~$ rm hello.txt

rm: cannot remove '_mytest/hello.txt'

:permission denied

w 編輯,在目錄內做檔案操作——移動桌椅。

#前提是先進入房間——需要x許可權

d-w------- 3 ubuntu ubuntu 4096

jun1501:

49 _mytest/

ubuntu@ubuntu

:~$ rm _mytest/hello.txt

rm: cannot remove '_mytest/hello.txt'

:permission denied

刪除檔案a——對a所在目錄擁有wx,對a有w

cd進入目錄dir——對dir有x

cp檔案a從dir1到目錄dir2為檔案b——對a有r,對dir1有x,對dir2有wx

mv dir1/h dir2/h——對dir1有wx,對dir2有wx,對h無限制

理解Linux檔案許可權

linux系統會為各種各樣的功能建立不同的賬戶,而這些賬戶並不是真的使用者。這些賬戶被稱作系統賬戶,是系統上執行的各種服務程序訪問資源用的特殊賬戶。一般,系統賬戶的uid值都小於500.passwd檔案裡的密碼字段值都被設定成了x,這是考慮到了密碼的安全性。真正的密碼我們會儲存在 etc shado...

理解linux檔案許可權

首先是對於每個賬戶的uid gid等相關概念。etc passwd 與其影子檔案 etc shadow etc passd 放著使用者有關資訊,明文的形式 通常uid前500預留給系統服務,以防某個服務被攻陷從而取得過大的許可權而破壞系統。root的uid一般是0 而普通使用者uid從500開始 o...

LINUX檔案許可權的理解技巧

在linux中,每個檔案都有相應的許可權屬性 許可權屬性分為所有者 owner 所屬群組 group 其他 other 三組,每組都有讀,寫,執行三個許可權。所有者的許可權排在最前面 所屬群組其次 其他排在最後。如果乙個檔案的許可權屬性為 777 轉換成二進位制就是 111 111 111 1 代表...