文件權限除了r、w、x外還有s、t、i、a權限:
s:文件屬主和組設置SUID和GUID,文件在被設置了s權限後將以root身份執行。在設置s權限時文件屬主、屬組必須先設置相應的x權限,否則s權限並不能正真生效(c h m o d命令不進行必要的完整性檢查,即使不設置x權限就設置s權限,chmod也不會報錯,當我們ls -l時看到rwS,大寫S說明s權限未生效)。Linux修改密碼的passwd便是個設置了SUID的程序,普通用戶無讀寫/etc/shadow文件的權限確可以修改自己的密碼。
ls -al /usr/bin/passwd
-rwsr-xr-x 1 root root 32988 2008-12-08 17:17 /usr/bin/passwd
我們可以通過字符模式設置s權限:chmod a+s filename,也可以使用絕對模式進行設置:
設置s u i d:將相應的權限位之前的那一位設置為4;
設置g u i d:將相應的權限位之前的那一位設置為2;
兩者都置位:將相應的權限位之前的那一位設置為4+2=6。
如:chmod 4764 filename //設置SUID
t :設置粘著位,一個文件可讀寫的用戶並一定相讓他有刪除此文件的權限,如果文件設置了t權限則只用屬主和root有刪除文件的權限,通過chmod +t filename 來設置t權限。
i:不可修改權限 例:chattr u+i filename 則filename文件就不可修改,無論任何人,如果需要修改需要先刪除i權限,用chattr -i filename就可以了。查看文件是否設置了i權限用lsattr filename。
a:只追加權限, 對於日志系統很好用,這個權限讓目標文件只能追加,不能刪除,而且不能通過編輯器追加。可以使用chattr +a設置追加權限。
linux 中某一文件夾的用戶是A,想更改成B用戶!如何用usermod實現?
su到root
chown B yourdir
chgrp B yourdir
group文件裡:
zzg:x:550:litong,liuhong
這都代表什麼意思?那個數字代表什麼意思?
在passwd裡:
liuhong:x:544:550::/usr/local/resin/webapps:/bin/bash
這裡的數字又是什麼意思?
如果我要改liuhong的權限怎麼改?
Linux是一種多用戶、多任務的操作系統,對於使用Linux的任一用戶(user self),可以與其共享此系統的其它用戶可以分為同屬一個組的用戶(group users)以及不屬同一個組的用戶(other users)。
zzg:x:550:litong,liuhong
組名zzg 密碼x在shadow中 組ID號550 組內用戶有litong,liuhong
liuhong:x:544:550::/usr/local/resin/webapps:/bin/bash
用戶名liuhong 密碼x在shadow中 用戶ID544 組ID550 描述為空 用戶主目錄/usr/local/resin/webapps 登錄初始shell為/bin/bash
修改指定目錄的屬性 o-rwx ,限制其他用戶訪問,更改該用戶所在的組為非該目錄所屬組;
或修改指定目錄的屬性 go-rwx,限制其他用戶和本組成員訪問,都可以使該用戶不能訪問指定目錄
root用戶使用chown,可以指定文件權限給用戶,用戶自己的文件可以使用chmod設置文件訪問權限
權限更改:chmod g+w 文件夾/文件名
chmod o+w 文件夾/文件名