來源:newlendone
ID:newlendone
檢視當前使用者
whoami #要檢視當前登入使用者的使用者名稱
who am i #表示開啟當前偽終端的使用者的使用者名稱
who 命令其它常用引數:
-a 列印能列印的全部
-d 列印死掉的行程
-m 同am i,mom likes
-q 列印當前登入使用者數及使用者名稱
-u 列印當前登入使用者登入資訊
-r 列印執行等級
建立新使用者
adduser newname // 新建使用者newname
useradd和adduser的區別
都能建立使用者,不同點如下:
useradd 只建立使用者,建立完了用 passwd newname 去設定新使用者的密碼。
adduser 會建立使用者,建立目錄,建立密碼(提示你設定),做這一系列的操作。
註意:用useradd新增使用者之後,在預設的情況下,該賬號是暫時被封鎖的, 也就是說,該賬號是無法登入,須要用passwd命令來給新建立的使用者設定密碼之後才可以使用。
其實 useradd、userdel 這類操作更像是一種命令,執行完了就傳回,而 adduser 更像是一種程式,需要你輸入、確定等一系列操作。
————adduser的詳細引數————
用法:adduser [選項] 登入
adduser -D
adduser -D [選項]
引數:
-b, –base-dir BASE_DIR 新賬戶的主目錄的基目錄
-c, –comment COMMENT 新賬戶的 GECOS 欄位
-d, –home-dir HOME_DIR 新賬戶的主目錄
-D, –defaults 顯示或更改預設的 useradd 配置
-e, –expiredate EXPIRE_DATE 新賬戶的過期日期
-f, –inactive INACTIVE 新賬戶的密碼不活動期
-g, –gid GROUP 新賬戶主組的名稱或 ID
-G, –groups GROUPS 新賬戶的附加組串列
-h, –help 顯示此幫助資訊並推出
-k, –skel SKEL_DIR 使用此目錄作為骨架目錄
-K, –key KEY=VALUE 不使用 /etc/login.defs 中的預設值
-l, –no-log-init 不要將此使用者新增到最近登入和登入失敗資料庫
-m, –create-home 建立使用者的主目錄
-M, –no-create-home 不建立使用者的主目錄
-N, –no-user-group 不建立同名的組
-o, –non-unique 允許使用重覆的 UID 建立使用者
-p, –password PASSWORD 加密後的新賬戶密碼
-r, –system 建立一個系統賬戶
-R, –root CHROOT_DIR chroot 到的目錄
-s, –shell SHELL 新賬戶的登入 shell
-u, –uid UID 新賬戶的使用者 ID
-U, –user-group 建立與使用者同名的組
-Z, –selinux-user SEUSER 為 SELinux 使用者對映使用指定 SEUSER
刪除使用者
userdel #刪除使用者
引數:
-f, –force force some actions that would fail otherwise
e.g. removal of user still logged in
or files, even if not owned by the user
-h, –help 顯示此幫助資訊並推出
-r, –remove 刪除主目錄和郵件池
-R, –root CHROOT_DIR chroot 到的目錄
-Z, –selinux-user 為使用者刪除所有的 SELinux 使用者對映
刪除使用者則推薦使用userdel,單單用deluser命令(centos 7是沒有這個命令的,要使用userdel,而debian有),不加引數的話,只會刪除使用者,但是不會刪除在/home目錄中的使用者家目錄。如果你想要連此使用者的家目錄也一併刪除,可以加上 –remove-home 這個引數,如下:
deluser –remove-home newname
修改使用者密碼
passwd newname
修改使用者賬戶
usermod -g siatstudent newname #-g:修改使用者所在群組
usermod -G friends,happy,funny newname #-G:一次將一個使用者新增到多個群組
註意:使用usermod時要小心,因為配合-g或-G引數時,它會把使用者從原先的群組裡剔除,加入到新的群組。如果你不想離開原先的群組,又想加入新的群組,可以在-G引數的基礎上加上-a引數,a是英語append的縮寫,表示“追加”。
usermod -aG happy newname #-a追加使用者到新的使用者組,保留原來的組
usermod詳細引數如下:
引數:
-c, –comment 註釋 GECOS 欄位的新值
-d, –home HOME_DIR 使用者的新主目錄
-e, –expiredate EXPIRE_DATE 設定帳戶過期的日期為 EXPIRE_DATE
-f, –inactive INACTIVE 過期 INACTIVE 天數後,設定密碼為失效狀態
-g, –gid GROUP 強制使用 GROUP 為新主組
-G, –groups GROUPS 新的附加組串列 GROUPS
-a, –append GROUP 將使用者追加至上邊 -G 中提到的附加組中,
並不從其它組中刪除此使用者
-h, –help 顯示此幫助資訊並推出
-l, –login LOGIN 新的登入名稱
-L, –lock 鎖定使用者帳號
-m, –move-home 將家目錄內容移至新位置 (僅於 -d 一起使用)
-o, –non-unique 允許使用重覆的(非唯一的) UID
-p, –password PASSWORD 將加密過的密碼 (PASSWORD) 設為新密碼
-R, –root CHROOT_DIR chroot 到的目錄
-s, –shell SHELL 該使用者帳號的新登入 shell
-u, –uid UID 使用者帳號的新 UID
-U, –unlock 解鎖使用者帳號
-Z, –selinux-user SEUSER 使用者賬戶的新 SELinux 使用者對映
檢視使用者所屬群組
groups newname #檢視newname所屬群組
建立組
groupadd newname #建立一個名為newname的組
引數:
-f, –force 如果組已經存在則成功退出
並且如果 GID 已經存在則取消 -g
-g, –gid GID 為新組使用 GID
-h, –help 顯示此幫助資訊並推出
-K, –key KEY=VALUE 不使用 /etc/login.defs 中的預設值
-o, –non-unique 允許建立有重覆 GID 的組
-p, –password PASSWORD 為新組使用此加密過的密碼
-r, –system 建立一個系統賬戶
-R, –root CHROOT_DIR chroot 到的目錄
修改組
groupmod -n test2group testgroup
刪除組
groupdel test2group
檢視檔案所屬的使用者及組
ls -l
#第三串列示檔案或目錄的所有者,第四串列示檔案或目錄的所在群組
groups #檢視當前登陸使用者所在的組
groups testnewuser #檢視testnewuser 所在的組
cat /etc/group #檢視所有組
————————–有關使用者及使用者組許可權設定時的命令—————————-
chmod命令:修改檔案的訪問許可權
用法:chmod [選項]… 樣式[,樣式]… 檔案…
或:chmod [選項]… 八進位制樣式 檔案…
或:chmod [選項]… –reference=參考檔案 檔案…
Change the mode of each FILE to MODE.
With –reference, change the mode of each FILE to that of RFILE.
-c, –changes like verbose but report only when a change is made
-f, –silent, –quiet 靜默樣式
-v, –verbose 診斷樣式,顯示完整的執行過程
–no-preserve-root do not treat ‘/’ specially (the default)
–preserve-root fail to operate recursively on ‘/’
–reference=RFILE use RFILE’s mode instead of MODE values
-R, –recursive 遞迴方式設定
–help 顯示此幫助資訊並退出
–version 顯示版本資訊並退出
說明 : Linux/Unix 的檔案呼叫許可權分為三級 : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所呼叫。
引數 :
mode : 許可權設定字串,格式如下 : [ugoa…][[+-=][rwxX]…][,…],其中
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬於同一個群體(group)者,o表示其他以外的人,a 表示這三者皆是。
+ 表示增加許可權、- 表示取消許可權、= 表示唯一設定許可權。
r 表示可讀取,w 表示可寫入,x 表示可執行。
d:是英語directory的縮寫,表示“目錄”。就是說這是一個目錄。
l:是英語link的縮寫,表示“連結”。就是說這是一個連結。
r:是英語read的縮寫,表示“讀”。就是說可以讀這個檔案。
w:是英語write的縮寫,表示“寫”。就是說可以寫這個檔案,也就是可以修改。
x:是英語execute的縮寫,表示“執行,執行”。就是說可以執行這個檔案
關於檔案許可權的例子講解
ls -l file.txt
傳回-rw-r–r–
傳回引數的說明:
-:第一個短橫表示這是一個普通檔案。如果此處是d,那麼表示目錄;如果是l,那麼表示連結,等等。
rw-:表明瞭檔案的所有者(此處是newname)對檔案有讀,寫的許可權,但是沒有執行的許可權。也很好理解,因為這是一個普通檔案,預設沒有可執行的屬性。記住:如果有w許可權(寫的許可權),那麼表明也有刪除此檔案的許可權。
r–:表明檔案所在的群組(此處是newname)的其他使用者(除了newname之外)只可以讀此檔案,但不能寫也不能執行。“可遠觀而不可褻玩焉”。
r–:表示其他使用者(除去newname這個群組的使用者)只可以讀此檔案,但不能寫也不能執行。
總結:file.txt 這個檔案是一個普通檔案,不是一個目錄,也不是連結檔案,它的所有者newname可以讀寫它,但不能執行;其他的使用者只能讀。
用字母來分配許可權:chmod的相對用法
u:user的縮寫,是英語“使用者”的意思。表示所有者。
g:group的縮寫,是英語“群組”的意思。表示群組使用者。
o:other的縮寫,是英語“其他”的意思。表示其他使用者。
a:all的縮寫,是英語“所有”的意思。表示所有使用者。
+:加號,表示新增許可權。
-:減號,表示去除許可權。
=:等號,表示分配許可權。
舉例說明:
#檔案file.txt的所有者增加讀和執行的許可權。
chmod u+rx file.txt
#檔案file.txt的群組其他使用者增加讀的許可權。
chmod g+r file.txt
#檔案file.txt的其他使用者移除讀的許可權。
chmod o-r file.txt
#檔案file.txt的群組其他使用者增加讀的許可權,其他使用者移除讀的許可權。
chmod g+r o-r file.txt
#檔案file.txt的群組其他使用者和其他使用者均移除讀的許可權。
chmod go-r file.txt
#檔案file.txt的所有使用者增加執行的許可權。
chmod +x file.txt
#檔案file.txt的所有者分配讀,寫和執行的許可權;群組其他使用者分配讀的許可權,不能寫或執行;其他使用者沒有任何許可權。
chmod u=rwx,g=r,o=- file.txt
#遞迴執行賦權,設定newname檔案夾許可權
chmod -R 700 /home/newname
——————————————————————
chown命令:用於改變檔案的所有者
示例:
改變檔案的使用者(用ls -l可以快速檢視原使用者和組),後接新的所有者的使用者名稱,再接檔案名:
chown newname file.txt
chown命令也可以改變檔案的群組,如下:
chown newname:friends file.txt #將file.txt檔案的使用者改為newname,所屬使用者組修改為friends
chown root /u #將 /u 的屬主更改為”root”
chown root:staff /u #和上面類似,但同時也將其屬組更改為”staff”
chown -hR root /u #將 /u 及其子目錄下所有檔案的屬主更改為”root”
chown命令使用詳細說明
用法:chown [選項]… [所有者][:[組]] 檔案…
或:chown [選項]… –reference=參考檔案 檔案…
Change the owner and/or group of each FILE to OWNER and/or GROUP.
With –reference, change the owner and group of each FILE to those of RFILE.
-c, –changes like verbose but report only when a change is made
-f, –silent, –quiet suppress most error messages
-v, –verbose output a diagnostic for every file processed
–dereference affect the referent of each symbolic link (this is
the default), rather than the symbolic link itself
-h, –no-dereference affect symbolic links instead of any referenced file
(useful only on systems that can change the
ownership of a symlink)
–from=當前所有者:當前所屬組
只當每個檔案的所有者和組符合選項所指定時才更改所
有者和組。其中一個可以省略,這時已省略的屬性就不
需要符合原有的屬性。
–no-preserve-root do not treat ‘/’ specially (the default)
–preserve-root fail to operate recursively on ‘/’
–reference=RFILE use RFILE’s owner and group rather than
specifying OWNER:GROUP values
-R, –recursive operate on files and directories recursively
The following options modify how a hierarchy is traversed when the -R
option is also specified. If more than one is specified, only the final
one takes effect.
-H if a command line argument is a symbolic link
to a directory, traverse it
-L traverse every symbolic link to a directory
encountered
-P do not traverse any symbolic links (default)
–help 顯示此幫助資訊並退出
–version 顯示版本資訊並退出
Owner is unchanged if missing. Group is unchanged if missing, but changed
to login group if implied by a ‘:’ following a symbolic OWNER.
OWNER and GROUP may be numeric as well as symbolic.
《Linux雲端計算及運維架構師高薪實戰班》2018年08月27日即將開課中,120天衝擊Linux運維年薪30萬,改變速約~~~~
*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。
– END –
更多Linux好文請點選【閱讀原文】哦
↓↓↓