Linux系統(tǒng)下的帳號(hào)管理學(xué)習(xí)
linux是多用戶操作系統(tǒng),每一個(gè)用戶在系統(tǒng)上都有一個(gè)唯一的id,這個(gè)id就是UID。
sh-3.2# id uid=0(root) gid=0(root) sh-3.2# |
id是一個(gè)數(shù)字,用戶很難去記得一個(gè)數(shù)字到底對(duì)應(yīng)的是哪個(gè)用戶。
所以可以給每個(gè)用戶分配一個(gè)用戶名,這個(gè)用戶名是用戶敏感的。
用戶名和UID的對(duì)應(yīng)關(guān)系可以通過查看/etc/passwd知道,
sh-3.2# cat /etc/passwd root:x:0:0:root:/home:/bin/sh sh-3.2# |
linux系統(tǒng)還有群組的概念,每個(gè)用戶在創(chuàng)建時(shí)可能就被指定到某個(gè)群組中。
而為了方便對(duì)群組的管理,所以也有了GID。
群組名和GID的對(duì)應(yīng)關(guān)系可以通過查看/etc/group知道,
sh-3.2# cat /etc/group root:x:0:root sh-3.2# |
而群組又分為有效群組和初始群組,
用戶所對(duì)應(yīng)的初始群組可以查看/etc/passwd檔案了解其中的對(duì)應(yīng)關(guān)系;
用戶所在的有效群組可以通過groups命令查看當(dāng)前用戶支援哪些群組。
sh-3.2# groups
root
sh-3.2#
以前一直搞不明白為什么文件權(quán)限是775,777,664或者是rwxrw-r-x之類的字串。
現(xiàn)在學(xué)習(xí)了用戶和用戶組之后,終于知道為什么了,還是挺開心的。
sh-3.2# ls -lh /etc/passwd -rw-rw-r-- 1 root root 31 Jan 3 12:55 /etc/passwd sh-3.2# |
在上面文件權(quán)限這一欄中,第一個(gè)字符用來標(biāo)識(shí)檔案的類型,
是正規(guī)文件,還是目錄,還是管道,還是鏈接文件?
關(guān)于linux系統(tǒng)文件類型可以參考下面這篇文章,
http://blog.csdn.net/boyxulin1986/article/details/12655659
接下來三個(gè)字符表示的是文件所有者對(duì)文件所具有的權(quán)限;
在接下來三個(gè)字符表示的是文件所有者所在的群組所具有的權(quán)限;
在接下來的三個(gè)字符表示的是其它用戶對(duì)文件所具有的權(quán)限。
所以如果想知道擁有某個(gè)指定文件的哪些權(quán)限,
必須要知道文件擁有者是誰,再查看用戶與群組的對(duì)應(yīng)關(guān)系。
這樣再確定當(dāng)前用戶是文件擁有者、還是屬于文件擁有者所屬的群組還是其他用戶。
注意:在多用戶環(huán)境下,文件擁有者并不一定等于當(dāng)前用戶。
查看當(dāng)前用戶的方法是:
sh-3.2# id uid=0(root) gid=0(root) sh-3.2# |
查看文件擁有者的方法是:
sh-3.2# stat /etc/passwd File: "/etc/passwd" Size: 31 Blocks: 1 IO Block: 4096 regular file Device: fe00h/65024d Inode: 985 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2014-01-03 12:55:32.000000000 Modify: 2014-01-03 12:55:32.000000000 Change: 2014-01-03 12:55:32.000000000 sh-3.2# |
最后再了解一下文件權(quán)限中的sticky bit。
sh-# ls -ld /tmp/
drwxrwxrwt 5 root root 1020 Jan 1 00:03 /tmp/
sh-#
這個(gè)權(quán)限t就是目錄或檔案的sticky bit。
linux系統(tǒng)中的sticky bit只對(duì)目錄有效,對(duì)文件設(shè)置sticky bit是沒有意義的。
而對(duì)目錄設(shè)置sticky bit的作用是:
對(duì)于目錄中已有的文件,只有文件的owner和root有權(quán)限刪除;
任何用戶都可以在這個(gè)目錄下創(chuàng)建或修改文件。
這樣對(duì)于多用戶環(huán)境而言,就不用擔(dān)心檔案被其它用戶刪除了。
增加sticky權(quán)限的方法如下,
sh-# mkdir ./temp sh-# ls -ld ./temp/ drwxr-xr-x 2 root root 40 Jan 1 00:21 ./temp/ sh-# sh-# chmod +t ./temp/ sh-# sh-# ls -ld ./temp/ drwxr-xr-t 2 root root 40 Jan 1 00:21 ./temp/ sh-# sh-# umask 0022 sh-# |
posted on 2014-01-13 10:54 順其自然EVO 閱讀(198) 評(píng)論(0) 編輯 收藏 所屬分類: linux