關(guān)于ntfs權(quán)限的問題
文件的權(quán)限:
[-dcbps][u:rwx][g:rwx][a:rwx] 其中: r=4, w=2, x=1, u=owner, g=group, a=all user
d=dir, -=file, l=symbolic link, p=pipe,
c=character device, b=block device, d=door, s = socket
linux下,目錄的r——可列目錄,w——可寫/刪/改名,x——可進(jìn)入訪問;
文件r——可讀,w——可寫/刪/改名,x——執(zhí)行
權(quán)限的組合可匯合成一個(gè)數(shù)字: rwx = 4+2+1 = 7
因此:-rwxrwxrwx = 777, -rw-rw-rw=666, -rwx-r-x-r-x=755
一般通過chmod的參數(shù)進(jìn)行設(shè)置:
chmod 777 /dir/file 設(shè)置文件為讀寫執(zhí)行
chmod -x /dir/file 刪除文件uga的可執(zhí)行
chmod ga-w /dir/file 刪除文件ga的可寫權(quán)限
chmod u=rx /dir/file 重設(shè)置文件u為讀和執(zhí)行
chmod +x /dir/file 增加文件uga為可執(zhí)行
umask & fmask & dmask的使用
umask —— 設(shè)置目錄和文件的權(quán)限過濾
fmask —— 設(shè)置文件的權(quán)限過濾
dmask —— 設(shè)置目錄的權(quán)限過濾
dmask和fmask是mount的選項(xiàng),針對(duì)fat/ntfs文件系統(tǒng),適用于fstab配置
不同于chmod/chown的權(quán)限值,它們?nèi)齻€(gè)是有mask——過濾的意思 ,以下是它們的對(duì)文件的讀寫權(quán)限:
0 1 2 3 4 5 6 7
r + + + + - - - -
w + + - - + + - -
x + - + - + - + -
其實(shí)這個(gè)結(jié)果是通過 mask = rwx - 文件權(quán)限
如設(shè)置文件為0755權(quán)限,那么mask值則需為0022,即:0755=0777-0022
fstab實(shí)例:
<file system> <mount point> <type> <options> <dump> <pass>
/dev/hda1 /media/win ntfs defaults,utf8,umask=111 0 0
其中:umask=111==>(777-111)=666=rw-rw-rw, 即文件擁有讀寫權(quán)限
可以重新設(shè)計(jì)更更嚴(yán)格的權(quán)限關(guān)系:
dmask=022,fmask=133 即:f=755=rwxr-xr-x, d=644=rw-r--r--
注意:其實(shí)umask可理解為關(guān)閉某些權(quán)限。可以使用umask命令改變一個(gè)文件的權(quán)限:
umask 查看當(dāng)前目錄的權(quán)限mask
umask <mask> 設(shè)置當(dāng)前
文件權(quán)限進(jìn)階—— 文件的組和用戶繼承關(guān)系suid和sgid
當(dāng)文件設(shè)置了suid后,該文件運(yùn)行時(shí)以擁有者身份執(zhí)行
chmod 755 file (owner)
chmod u+s file ==> -rwsr-xr-x (user)
(即當(dāng)使用user執(zhí)行時(shí),它以owner的身份執(zhí)行)
(suid常用于文件上,目錄一般沒有執(zhí)行權(quán)限)
當(dāng)目錄設(shè)置了sgid后,其他人要是有r/x/w權(quán)限時(shí),其他人創(chuàng)建的子目錄的組為當(dāng)前擁有的組
chmod 757 dir (owner)
chmod g+s dir ==> drwxr-srwx (ower)
mkdir dir/newidr (user)
(即當(dāng)user創(chuàng)建子目錄時(shí),它的組是owner,它的擁有者則是user)
(sgid常用于目錄上)
當(dāng)目錄設(shè)置了sticky后,防止別人刪除目錄的資料
chmod 757 dir (owner組)
chmod o+t dir ==> drwxr-srwt (owner)
rm -r dir (user) ==> error
(user無法刪除,雖然開放了刪除權(quán)限,但還是只有owner可刪除)
例子:
chmod u=rwxs,o=rx file
chmod g+s,o=wrx test/
chmod o=rwxt test/
chmod 1775 test/
0755也就是755, 而1755前面的1則與suid/sgid/sticky相關(guān),看下表:
(可以理解為suid=4,sgid=2,sticky=1)
suid sgid sticky 模式數(shù)字
on on on 7
on on off 6
on off on 5
on off off 4
off on on 3
off on off 2
off off on 1
off off off 0
文件的擁有者
一般通過chown進(jìn)行設(shè)置
查看當(dāng)前登錄 w或者who
查看當(dāng)前用戶名 whoami
查看當(dāng)前用戶組id id <u> 或者 finger <u>
查看用戶登錄記錄 last
lastb
查看所有用戶 cut -d : -f 1 /etc/passwd
cat /etc/passwd |awk -F \: '{print $1}'
查看當(dāng)前組 groups
查看指定組 groups
改變擁有者 chown /dir/file
改變組 chgrp /dir/file
改變組及擁有者 chown : /dir/file
其他 groupadd/groupmod/groupdel
useradd/usermod/userdel
最后進(jìn)階理解fstab配置
<file system> <mount point> <type> <options> <dump> <pass>
/dev/hda1 /media/win ntfs defaults,utf8,uid=1000,gid=1000,fmask=133,dmask=022 0 0
參考文章
http://www./article/4594
http:///questions/429848/dmask-and-fmask-mount-options
http://blog.sina.com.cn/s/blog_70545bad0100xdnp.html
|