` `Linux 系統是一個多用戶多任務的分時操作系統,任何一個要使用系統資源的用戶,都必須首先向系統管理員申請一個賬號,然后以這個賬號的身份進入系統。用戶的賬號一方面可以幫助系統管理員對使用系統的用戶進行跟蹤,并控制他們對系統資源的訪問;另一方面也可以幫助用戶組織文件,并為用戶提供安全性保護。每個用戶賬號都擁有一個惟一的用戶名和各自的口令。用戶在登錄時鍵入正確的用戶名和口令后,就能夠進入系統和自己的主目錄。
` `實現用戶賬號的管理,要完成的工作主要有如下幾個方面:
用戶賬號的添加、刪除與修改。
用戶口令的管理。
用戶組的管理。
## 一、Linux系統用戶賬號的管理
用戶賬號的管理工作主要涉及到用戶賬號的添加、修改和刪除。
添加用戶賬號就是在系統中創建一個新賬號,然后為新賬號分配用戶號、用戶組、主目錄和登錄Shell等資源。剛添加的賬號是被鎖定的,無法使用。
1、添加新的用戶賬號使用 useradd命令,其語法如下:?
代碼:
useradd 選項 用戶名
其中各選項含義如下:
代碼:
-c comment 指定一段注釋性描述。
-d 目錄 指定用戶主目錄,如果此目錄不存在,則同時使用-m選項,可以創建主目錄。
-g 用戶組 指定用戶所屬的用戶組。
-G 用戶組,用戶組 指定用戶所屬的附加組。
-s Shell文件 指定用戶的登錄Shell。
-u 用戶號 指定用戶的用戶號,如果同時有-o選項,則可以重復使用其他用戶的標識號。
用戶名 指定新賬號的登錄名。
```
例1:
代碼:
# useradd –d /usr/sam -m sam
此命令創建了一個用戶sam,
其中-d和-m選項用來為登錄名sam產生一個主目錄/usr/sam(/usr為默認的用戶主目錄所在的父目錄)。
例2:
代碼:
# useradd -s /bin/sh -g group –G adm,root gem
此命令新建了一個用戶gem,該用戶的登錄Shell是/bin/sh,它屬于group用戶組,同時又屬于adm和root用戶組,其中group用戶組是其主組。
這里可能新建組:#groupadd group及groupadd adm
增加用戶賬號就是在/etc/passwd文件中為新用戶增加一條記錄,同時更新其他系統文件如/etc/shadow, /etc/group等。
Linux提供了集成的系統管理工具userconf,它可以用來對用戶賬號進行統一管理。
```
2、刪除帳號?
如果一個用戶的賬號不再使用,可以從系統中刪除。刪除用戶賬號就是要將/etc/passwd等系統文件中的該用戶記錄刪除,必要時還刪除用戶的主目錄。刪除一個已有的用戶賬號使用userdel命令,其格式如下:
```
代碼:
userdel 選項 用戶名
常用的選項是-r,它的作用是把用戶的主目錄一起刪除。
```
```
例如:
代碼:
# userdel sam
此命令刪除用戶sam在系統文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的記錄,同時刪除用戶的主目錄。
```
3、修改帳號?
修改用戶賬號就是根據實際情況更改用戶的有關屬性,如用戶號、主目錄、用戶組、登錄Shell等。
修改已有用戶的信息使用usermod命令,其格式如下:
代碼:
usermod 選項 用戶名
常用的選項包括-c, -d, -m, -g, -G, -s, -u以及-o等,這些選項的意義與useradd命令中的選項一樣,可以為用戶指定新的資源值。另外,有些系統可以使用如下選項:
代碼:
-l 新用戶名
這個選項指定一個新的賬號,即將原來的用戶名改為新的用戶名。
```
例如:
代碼:
# usermod -s /bin/ksh -d /home/z –g developer sam
此命令將用戶sam的登錄Shell修改為ksh,主目錄改為/home/z,用戶組改為developer。
```
4、用戶口令的管理
用戶管理的一項重要內容是用戶口令的管理。用戶賬號剛創建時沒有口令,但是被系統鎖定,無法使用,必須為其指定口令后才可以使用,即使是指定空口令。
指定和修改用戶口令的Shell命令是passwd。超級用戶可以為自己和其他用戶指定口令,普通用戶只能用它修改自己的口令。命令的格式為:
代碼:
passwd 選項 用戶名
可使用的選項:
代碼:
-l 鎖定口令,即禁用賬號。
-u 口令解鎖。
-d 使賬號無口令。
-f 強迫用戶下次登錄時修改口令。
如果默認用戶名,則修改當前用戶的口令。
```
例如,假設當前用戶是sam,則下面的命令修改該用戶自己的口令:
代碼:
$ passwd
Old password:xxxxxx
New password:xxxxxx
Re-enter new password:xxxxxx
如果是超級用戶,可以用下列形式指定任何用戶的口令:
代碼:
# passwd sam
New password:xxxxxx
Re-enter new password:xxxxxx
```
普通用戶修改自己的口令時,passwd命令會先詢問原口令,驗證后再要求用戶輸入兩遍新口令,如果兩次輸入的口令一致,則將這個口令指定給用戶;而超級用戶為用戶指定口令時,就不需要知道原口令。
為了系統安全起見,用戶應該選擇比較復雜的口令,例如最好使用8位長的口令,口令中包含有大寫、小寫字母和數字,并且應該與姓名、生日等不相同。
為用戶指定空口令時,執行下列形式的命令:
代碼:
```
# passwd -d sam
```
此命令將用戶sam的口令刪除,這樣用戶sam下一次登錄時,系統就不再詢問口令。
passwd命令還可以用-l(lock)選項鎖定某一用戶,使其不能登錄,例如:
代碼:
```
# passwd -l sam
```
```
新建用戶異常:
useradd -d /usr/hadoop -u 586 -m hadoop -g hadoop
1 Creating mailbox file: 文件已存在?
刪除即可 rm -rf /var/spool/mail/用戶名
2 useradd: invalid numeric argument 'hadoop'
這是由于hadoop組不存在 請先建hadoop組
通過cat /etc/passwd 可以查看用戶的pass??
cat /etc/shadow 可以查看用戶名
cat /etc/group 可以查看組
```
> **注意:**
> Linux系統,切換用戶后只顯示$問題
> 只需要相登錄root賬戶,修改用戶的shell為bash就可以了。
> 操作為 vim /etc/passwd 修改目標用戶的shell就可以了
- 0 工具
- 0.1 圖片無損放大
- 1 deepin系統
- 1.1 deepin系統安裝
- 1.2 deepin創建desktop文件
- 1.3 瀏覽器運行虛擬機
- 1.4 linux的百度網盤突然打不
- 1.5 deepin安裝后個人配置
- 1.5.1 安裝公式編輯器AxMath
- 1.5.2 Deepin標題欄太高的解決辦法(自定義高度)
- 1.5.3 linux下配置VS Code的標題欄風格
- 1.5.4 安裝腳本解釋器fish
- 1.6 關于軟件安裝
- 1.6.1 rpm和deb包想換轉換的方法
- 1.7 deepin開機自啟的設置方法
- 2 tiny core系統
- 2.1 安裝系統到硬盤
- 2.2 系統軟件安裝介紹
- 2.3 安裝控制臺計算器bc
- 2.4 關機保存的方法
- 2.5 linux文件結構說明
- 2.6 為tinycore配置ssh
- 3 使用Linux中的一些技巧
- 3.1 軟連接的使用
- 3.2 LInux下解壓
- 3.3 刪除操作
- 3.4 Zenity-在命令行和Shell腳本中創建圖形(GTK +)對話框
- 3.4.1 列表框
- 3.4.2 口令對話框
- 3.4.3 消息對話框
- 3.4.3.1 信息對話框
- 3.4.3.2 錯誤框
- 3.4.3.3 問題對話框
- 3.4.3.4 警告對話框
- 3.4.4 范圍對話框(滑條)
- 3.4.5 文件選擇對話框
- 3.4.6 表單對話框
- 3.4.7 文本信息框
- 3.4.8 進度框
- 3.4.9 文本輸入框
- 3.4.10 通知區域圖標
- 3.4.11 日歷對話框
- 3.4.12 顏色對話框
- 3.4.13 上述對話框測試文件
- 3.4.14 使用C++調用zenity
- 3.5 Linux whereis、find和locate命令
- 3.6 字體下載
- 3.7 使用Electron 創建跨平臺的應用程序
- 3.8 shell的使用
- 3.8.1 $$,$?等表示什么
- 3.8.2 shell隨機產生某一個范圍內的整數
- 3.8.3 寫shel腳本的一些使用操作
- 3.8.4 linux shell操作二進制文件
- 3.8.5 shell中的一些實用技巧
- 3.8.5.1 列出當前路徑下的所有文件夾
- 3.8.5.2 列出當前路徑下所有文件
- 3.8.5.3 獲取當前虛擬終端的大小
- 3.8.5.4 判斷輸入字符串是否為數字
- 3.8.5.5 bash中的數學運算
- 3.8.5.6 按照文件創建時間順序列出文件
- 3.8.5.7 echo輸出含空格不換行的設置方法
- 3.8.5.8 find 遞歸/不遞歸 查找子目錄的方法
- 3.8.5.9 echo顯示顏色設置
- 3.8.5.10 bash中使用${}字符操作方法
- 3.8.5.11 ls查找目錄,文件,軟連接等的方法
- 3.8.5.12 檢測某個程序是否在運行
- 3.8.5.13 bash/shell 解析命令行參數工具:getopts/getopt
- 3.8.5.14 獲取腳本的絕對路徑
- 3.8.6 使用bash寫的腳本管理腳本
- 3.9 Linux創建自定義命令
- 3.10 deepin掛載遠程文件夾到本地
- 3.11 linux root用戶添加用戶
- 3.12 實用腳本或者命令
- 3.12.1 命令行 將ppt轉換為 pdf
- 3.12.2 deepin上實現自定義命令
- 4 slitaz系統
- 4.1 系統安裝
- 4.2 安裝軟件命令tazpkg
- 4.3 使用說明
- 4.4 用 tazlito 構建 livecd自制linux系統
- 4.5 英文顯示支持設置方法
- 4.6 配置ssh
- 5 busybox的編譯使用
- 5.1 busybox介紹
- 5.2 busybox編譯使用
- 6 配置自己的linux
- 6.1 在deepin上編譯linux內核
- 7 每天一個linux命令
- 7.1 文件管理類
- 7.1.1 cat--接文件并打印到標準輸出設備上
- 7.1.2 chattr--改變文件屬性
- 7.1.3 chgrp--變更文件或目錄的所屬群組
- 7.1.4 chmod --控制文件如何被他人所調
- 7.1.5 chown命令--指定文件的擁有者改為指定的用戶或組
- 7.1.6 grep命令--用于查找文件里符合條件的字符串
- 7.1.7 其他
- 7.2 文檔編輯類
- 7.2.1 col--過濾控制字符
- 7.2.2 colrm--濾掉指定的行
- 7.2.3 comm --比較兩個已排過序的文件
- 7.2.4 awk--一種處理文本文件的語言,是一個強大的文本分析工具
- 7.2.5 sed命令
- 7.3 文件傳輸類
- 7.3.1 prm--將一個工作由打印機貯列中移除
- 7.4 磁盤管理類
- 7.4.1 cd--切換當前工作目錄至 dirName(目錄參數)。
- 7.4.2 df--顯示目前在Linux系統上的文件系統的磁盤使用情況統計
- 7.4.3 dirs--顯示目錄記錄
- 7.4.5 du--顯示目錄或文件的大小
- 8 其他系統
- 8.1 Alpine Liunx
- 8.1.2 簡介
- 8.1.2 本地安裝
- 8.1.3 apk軟件包管理
- 8.1.4 配置ssh