1. 程式人生 > >Ubuntu下的用戶和權限(三)

Ubuntu下的用戶和權限(三)

新建 特定 要去 ash ubunt 管理員 天數 password 命令

七、增刪群組相關的命令

相同的我們要先介紹兩個重要的設定檔:/etc/group和/etc/gshadow,前面那個事實上和/etc/passwd一樣。而後者就是群組的password表了。先看看長啥樣:

root:x:0:

adm:x:4:m,syslog

m:x:1000:

這是截取的/etc/group的一部分,每行被冒號分成四段,第一段是群組名。第二段是password; 第三段是gid;第四段就是該組以下的成員了。

我們看到root和m群組第四段是空的,而adm群組的第四段有兩個成員。為什麽會有這樣的差別呢?原來每一個用戶增加的群組分為主要群組和次要群組,主要群組是指用戶賬戶剛建立的時候綁定的那個群組,僅僅要看一下/etc/passwd裏面的第四段就能夠知道該用戶的主要群組是哪個,來看用戶m的信息 m:x:1000:1000:m,,,:/home/m:/bin/bash 顯然用戶m的主要群組是m。那麽每一個賬戶的名字是不會出如今/etc/group中主要群組的第四段的,由於在某種程度上這是不言而喻或默認的;若某個用戶出如今第四段了。那意味著該群組不是其主要群組。

另一個概念叫有效群組,盡管一個用戶能夠增加多個群組並擁有對應權限,但這是針對已經存在的檔案或文件夾而言。若果某用戶要新建一個文件或文件夾,那它屬於該用戶的哪個群組呢?答案是有效群組,即此時該用戶所在的那個組。

我們知道某一時刻,一個用戶僅僅能在一個組內活動,即使他擁有其它群組的權限。打個例如,一個領導管理三個部門即擁有三個群組的權限,可是每一個時刻他僅僅能坐在某一個特定部門的辦公室,卻不能分身同一時候坐在三個辦公室,即使他擁有另外兩個辦公室的進入權。

用groups命令能夠查看當前用戶所屬的全部群組,當中第一個就是該用戶的有效群組。

用newgrp命令能夠切換有效群組。類似領導要去還有一個辦公室。

然後又是默認情況,即某用戶一登陸linux時。有效群組是哪個呢?類似於每天領導第一個去的辦公室是哪個?答案是上面的主要群組,在這裏它被稱為初始群組。但不管哪個名字,說的都是/etc/passwd的第四段那個群組。


root:*::
daemon:*::

m:!::

這是截取的/etc/gshadow的一部分。每行也是被冒號分成四段,各自是群組名、password、群組管理員、成員。

password段若是!或*,則表示改組無法登入,即無法用newgrp切換。


添加群組命令

groupadd -g/r groupname -g後面跟gid,加上-r 表示建立的是系統群組,即/etc/gshadow的第二欄會變成星號或嘆號。

改動群組命令 :groupmod 類似與usermod。即——groupmod [-g gid] [-n group_name]

刪除群組命令:groupdel groupname 。可是這個命令有些要註意的地方,由於某些情況下會失敗,原因是還實用戶的初始群組是該群組。所以要先解除這樣的綁定,即改動該用戶在/etc/passwd的gid或直接刪除該用戶。


八、其它命令

1)除了上面的groups能夠查看群組的信息外,另一個id命令。能夠查看很多其它信息,直接在終端輸入id就好,不必加參數。

2)passwd命令 passwd [-lunxwS] username

-l :將 username 這個賬號的password鎖住 (lock),在 /etc/shadow 內的password欄修訂~
-u :將 -l 的 lock 解開!
-n :後面接天數 (數字) ,最短天數;亦即是 /etc/shadow 內的第四欄;
-x :後面接天數 (數字) ,最長天數;亦即是 /etc/shadow 內的第五欄;
-w :後面接天數 (數字) ,警告天數;亦即是 /etc/shadow 內的第六欄;
-S :顯示眼下這個 username 的相關信息。

Ubuntu下的用戶和權限(三)