Linux 與 Windows 最大的使用差異就是支援多個使用者同時使用,因此這些使用者也必須具有一定程度的權限分級,這樣才不會造成互相影響。以下列下幾個新手入門常用的權限分級方法供大家參考:
查詢目前存在的使用者
方法1 : 這種查詢方法會將使用者以及使用者細節通通列出來,包含使用者的家目錄位置、所屬UDI(使用者ID)、GID(Group ID) 等等都會列出來。
cat /etc/passwd
方法2:只會output使用者的名稱
awk -F':' '{ print $1}' /etc/passwd
新增使用者
useradd 指令: 有一些linux系統有另外支援adduser的指令,但考量到不是所有的linux系統都支援這個指令,以下我們會全部使用useradd來講解。
新增使用者的方法
# 設定帳號xxx
sudo usradd xxx
# 設定密碼 123456
sudo passwd 123456
# 系統會要求你輸入兩次確認你密碼無誤
刪除使用者
userdel [option][用戶帳號]
option 沒打的話,僅僅是刪除帳號,但是該帳號下的資料還是會存在
option 類型
-r 刪除用戶還有包含他的資料
-f 強制刪除該用戶即使該用戶已經登入了
# 刪除使用者
userdel username
# 刪除使用者還有他底下的資料
userdel -r username
建立群組
groupadd: 增加新的群組
# 增加 test 這個群組
sudo groupadd test
查詢現在已有的群組
# 查詢群組
cat /etc/group
查詢自己所屬帳號支援甚麼群組
# groups: 查詢現在這個帳號加入的群組
groups
將使用者加入群組
usermod [option] [groupname] 可以改變使用者的權限
※ option 的部分要特別小心 -g 和 -G是不同的, -g 會更改到主要群組 -G才識加入一個擁有很多成員的群組中
# usermod -G [Groupname] 加入group1的群組內
usermod -G group1
感想
因為用慣了Windows系統,所以一開始面對這種打command line的系統,其實一開始很痛苦,超級想念Winodws的UI介面,不過隨著用習慣之後,其實也沒有這麼恐怖,反而有時候蠻方便的。
對於LINUX系統的權限問題,我覺得其實相當有趣,因為一台電腦可以供多人同時登錄,這也讓LINUX目前似乎是大家最喜歡使用的公共機,因為可以多人同時登錄,但又使用同樣的環境去deploy自己寫的程式碼,所以某方面來講其實很方便。