Linux系統學習之Linux賬號管理

youcongtech發表於2017-11-07

一、基本介紹

Linux使用者分為三類,即普通使用者、根使用者、系統使用者。

普通使用者指的是所有使用Linux系統的真實使用者。

根使用者就是root使用者,許可權最大,它的ID為0,也被稱為超級使用者,root使用者擁有對系統絕對的控制權:可以修改、刪除、執行任何檔案。所以從另外一方面來說,它也是最危險的。

系統使用者是指系統執行時必須有的使用者,並不是指真實的使用者。

比如在RedHat或CentOS下執行網站服務時,需要使用系統使用者apache來執行httpd程式,而執行mysql資料庫服務時,需要使用系統使用者mysql來執行mysqld程式。

通過ps aux命令可以檢視系統使用者程式。

ls -l 檔名 可以檢視該檔案許可權

ls -l (在不加檔名的前提下可以檢視所有檔案許可權)

id 可以檢視自己的UID

groups 可以確認自己所在的組

who 查詢當前線上使用者

二、賬號管理

新增使用者: useradd 使用者名稱

修改密碼 :passwd 使用者名稱修改或者直接passwd (注意前者密碼設定很簡單,可通過,後者密碼如果設定過於簡單,會導致設定失敗)

修改使用者:usermod

例如:

[root@Cfhost-170820-UCNK ~]# useradd tom

[root@Cfhost-170820-UCNK ~]# passwd tom

Changing password for user tom.
New password: 
Retype new password: 
Sorry, passwords do not match.
New password: 
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password: 
passwd: all authentication tokens updated successfully.

//檢視使用者tom在/etc/passwd中的記錄,冒號隔開的是使用者tom的新家目錄
[root@Cfhost-170820-UCNK ~]# cat /etc/passwd | grep tom

tom:x:559:559::/home/tom:/bin/bash//如果希望修改家目錄為/home/tom_new,可以使用以下命令
[root@Cfhost-170820-UCNK ~]# usermod -d /home/alice_new -m alice
usermod: directory /home/alice_new exists

[root@Cfhost-170820-UCNK ~]# usermod -d /home/tom_new -m tom

[root@Cfhost-170820-UCNK ~]# cat /etc/shadow | grep tom

tom:$6$Pii73qyW$8NvDm/UevXhiPowgdvtjv78pjrDUazxOldmuAEYIQZ0yiGRQQpgD9bZwsIkO
wuAOzv/D33IEL8/s..yPZPm8m.:17476:0:99999:7:::
[root@Cfhost-170820-UCNK ~]# usermod -L tom//凍結該使用者
//執行下列命令時,你會發現第二列多了一個感嘆號,使用usermo -U tom命令可以解凍結
[root@Cfhost-170820-UCNK ~]# cat /etc/shadow | grep tom
tom:!$6$Pii73qyW$8NvDm/UevXhiPowgdvtjv78pjrDUazxOldmuAEYIQZ0yiGRQQpgD9bZwsIkOwuAOzv/D33IEL8/s..yPZPm8m.:17476:0:99999:7:::

 刪除使用者:userdel 使用者名稱

userdel tom 該命令將會刪除tom在/etc/passwd和/etc/shadow中的記錄,但是並不會刪除原來使用者的家目錄和郵件資訊。可以使用userdel -r 使用者名稱 來達到徹底刪除的目的。

 

新增和刪除使用者

groupadd 組名 #新增組

groupdel 組名 #刪除組

檢查使用者資訊:

users 檢視當前有哪些使用者

who 檢視線上使用者

w 可以檢視使用者更加詳細的資訊(包括登入時間、ip地址等)

調查使用者:finger

finger命令在不加任何引數的情況下,同樣會顯示系統的登入使用者,如下圖所示

Login     Name       Tty      Idle  Login Time   Office     Office Phone
root      root       pts/0      38  Nov  6 19:04 (183.240.196.151)
root      root       pts/1      21  Nov  6 19:29 (183.240.196.151)
root      root       pts/2          Nov  6 19:46 (183.240.196.151)
root      root       pts/3      21  Nov  6 19:46 (183.240.196.151)

補充:如果在finger 使用者名稱 會顯示該使用者名稱更加詳細的資訊

切換使用者:

su 命令單獨使用直接切換為root使用者

su – 使用者名稱 切換到該使用者

注意:使用su命令雖然方便,但還是存在缺陷,就是切換到其他使用者時,需要知道該使用者的密碼,如果需要切換到root,那就需要知道root的密碼。我們知道root是系統中1許可權最高的使用者,如果讓太多人知道root密碼是非常不安全的,所以我們建議使用sudo。

例行任務管理

單一時刻執行一次任務:at

例如: at now + 10 munutes

//30分鐘後關機

atq檢視當前使用at命令排程的任務列表

atrm 刪除已經進入任務佇列的任務

週期性執行任務:cron

crontab -l 檢視設定的任務

crontab -r 刪除所有任務

crontab -u 使用者名稱 -l  //檢視該使用者任務列表

 


相關文章