03葵花寶典之linux用戶

介紹了linux上有關用戶和組的相關命令及配置文件

一、查看用戶和組相關信息練習

1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。

who | cut -d' ' -f1 | uniq

2、取出最后登錄到當前系統的用戶的相關信息。

cat /etc/passwd | grep "^`who | tail -1 | cut -d' ' -f1`"

3、取出當前系統上被用戶當作其默認shell的最多的那個shell。

 cat /etc/passwd | cut -d: -f7 | sort | uniq -c | sort | head -1 | grep -E -o "/.*"

說明:cut命令取出每個用戶的shell后,使用sort排序,是將相同的shell放在一起,便于后面uniq使用。若不進行此次排序,uniq -c命令會顯示相連接在一起的相同shell的次數,對于沒有連接在一起的相同的shell,則會認為是兩個不同shell。 用head命令取到最多的shell后,由于前面使用了uniq命令,使用最多的shell前有使用次數,且使用次數是以幾個空格隔開的(根據使用的次數不同,空格數量也不同,故不能使用cut命令),所有使用了grep命令查找以/開頭的串,得到了最終結果。

4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。

sort -n -t: -k3 /etc/passwd | tail | tr [a-z] [A-Z] > /tmp/maxusers.txt

5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。

ifconfig | head -2 | tail -1 | grep -o [0-9].* | cut -d' ' -f1

6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。

ls -d /etc/*.conf | tr [a-z] [A-Z] > /tmp/etc.conf

7、顯示/var目錄下一級子目錄或文件的總個數。

ls -lA /var | tail -n +2 | wc -l

8、取出/etc/group文件中第三個字段數值最小的10個組的名字。

sort -n -t: -k3 /etc/group | head | cut -d: -f1

9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。

cat /etc/{fstab,issue} > /tmp/etc.test

二、用戶和組管理命令及練習

用戶和組管理命令常用的有下面幾個:useradd(adduser)、usermod、userdel、passwd、groupadd、groupmod、groupdel、gpasswd、chage、chsh、id、su、pwck、grpck等下面分別簡單介紹

1、useradd(adduser)

adduser是useradd的一個軟連接,在使用上完全一致,用法是 useradd [options] LOGIN,常用的選項有:

useradd

-u 指定用戶的UID,其中,系統用戶UID在centos7上從1-999,在centos6以下為1-500。普通用戶可以的UID從系統用戶默認最大UID開始,如果不指定,從/etc/passwd中,以系統用戶或普通用戶最大UID值+1為默認UID

-g 后面可跟組名或組id 指定用戶的基本組id

-G 指定用戶的附加組

-d 指定用戶的家目錄,默認在/home/USERNAME

-s 指定用戶的默認shell

-r 指定創建的是一個系統用戶

-M 不創建用戶家目錄,即使使用了-d選項指定了用戶的家目錄路徑

-c comment /etc/passwd中,每個用戶的第五字段,用戶注釋

2、usermod

修改用戶的相關屬性,usermod [options] LOGIN

-c comment

-G 修改附加組

-aG 追加用戶附加組

-d HOMEDIR -m 重新指定用戶的家目錄,并將以前家目錄中的內容拷貝至新的家目錄中

-L 鎖定用戶

-U 解鎖用戶

3、userdel

刪除用戶,userdel [options] LOGIN,默認不刪除用戶的家目錄

-f 強制刪除,即使用戶正在登錄系統

-r 刪除用戶的家目錄

4、passwd

創建或修改用戶密碼。root用戶可創建或修改所有用戶的密碼,而普通用戶只能創建或修改自己的密碼

–stdin 從標準輸入讀取字符串作為密碼,一般使用echo “passwords” | passwd –stdin USERNAME

5、groupadd

創建組 groupadd [options] group

-g 指定組的組id,默認為/etc/group文件中系統組或用戶組組id最大值+1

-r 創建系統組

6、groupdel

刪除已有組 groupadd [options] group

7、groupmod

修改組的相關屬性

-g 修改GID

8、gpasswd

組密碼。當一個用戶需要加入一個組時,如果這個組沒有組密碼,用戶就可以直接加入,如果有組密碼,則在加入時需要向系統提供該組密碼,才能加入。該機制是為了保護組用戶的內容。

9、chage

修改用戶密碼的相關時間信息

在/etc/shadowd中,每一行共有8個字段,從第三個字段開始,其含義為:

-d 3:最近一次密碼修改時間(自1970年1月1日起止最近一次修改密碼所經過的天數) -m 4:密碼不可被修改時間(自最近一次密碼修改之日起,幾天內密碼不能被在次修改) -M 5:密碼使用期限(從最近一次修改密碼起,密碼可以使用的天數) -W 6:密碼警告天數(以密碼可以使用的最后一天起,即1970年1月1日起到最經一次修改密碼天數加上密碼使用期限至之日,前天幾天,開始提示用戶修改密碼) -I -7:密碼失效天數。到密碼使用期限后,在失效天數內,用戶登錄系統時,強制用戶修改密碼 -E 8:賬戶過期時間。自1970年1月1日起止,到帳戶過期時間后,該帳戶將永遠不能被使用

10、chsh

更改用戶默認shell

11、id

顯示用戶的UID GID 附加組等信息 常用選項是 -u -g -G

12、su

切換用戶

su – 切換用戶時,是登錄式切換,將讀取要切換用戶的用戶配置

su 非登錄式切換,不讀取用戶的用戶配置

13、pwck

檢查/etc/passwd和/etc/shadow文件的完整性和語法正確性

14、grpck

檢查/etc/group和/etc/gshadow文件的完整性和語法正確性

用戶和組管理類命令的使用方法并完成以下練習:

(1)、創建組distro,其GID為2016;

   groupadd -g 2016 distro

(2)、創建用戶mandriva, 其ID號為1005;基本組為distro;

   useradd -u 1005 -g distro mandriva

(3)、創建用戶mageia,其ID號為1100,家目錄為/home/linux;

   useradd -u 1100 -d /home/linux mageia

(4)、給用戶mageia添加密碼,密碼為mageedu;

   echo "mageedu" | passwd --stdin mageia

(5)、刪除mandriva,但保留其家目錄;

   userdel mandriva

(6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;

   useradd -u 2002 -g distro -G peguin slackware

(7)、修改slackware的默認shell為/bin/tcsh;

   usermod -s /bin/tcsh slackware

(8)、為用戶slackware新增附加組admins;

   groupadd admins
   usermod -aG admins slackware

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/92474

(1)
koalakoala
上一篇 2018-03-15 17:48
下一篇 2018-03-16 13:39

相關推薦

  • nginx負載均衡搭建

    組 網絡拓撲圖 nginx負載均衡服務器搭建 首先準備三臺機器 主機A(nginx負載均衡器) 主機B 主機C 主機A需兩塊網卡(一塊外網,一塊內網) 主機B和主機C各一塊 (各一塊內網的IP,如果主機B C和主機A內網網卡在一個網段就不需要配置網關地址了。 規劃好網絡后,nginx負載主機分別ping下各rs主機是否可通 主機A打開核心轉發功能 #echo…

    Linux干貨 2017-05-17
  • 常用命令總結

    ifconfig查看IP地址 date查看日期和時間 cd跳轉到任何目錄 useradd新建一個普通用戶 passwd給用戶設置密碼 poweroff   halt    關機 reboot  重啟 cal  查看日歷 cal -y 查看一年日歷 env  export&nbsp…

    Linux干貨 2017-04-04
  • 淺談Linux賬號與用戶組管理

    在學習linux系統中,最重要的莫過于對系統賬戶的管理以及如何恰當的分配用戶組權限。在我們登陸linux系統的時候,輸入的賬號,其實并不是linux所能識別的。由于計算機僅能夠識別0與1,所以它僅能認識ID(一組號碼)用戶標示符UID、GID。相應的你所輸入的賬號與ID的對應關系就保存在/etc/passwd當中。 對于每一個文件來說都具有”所有者與所屬用戶…

    2017-07-22
  • iptables實戰筆記一

    iptables實戰 1.開啟防火墻 systemctl start firewalld 2.清空所有的默認規則,我們自己定義自己的規則 iptables -F 查看此時的iptables iptables -nL Chain INPUT (policy ACCEPT) target prot opt source destination Chain FOR…

    Linux干貨 2017-06-13
  • 生產環境模擬實現keepalived+Nginx調度器+httpd的高可用集群

    具體過程是用Nginx做負載均衡,可以將Nginx和主機放在同一臺機子上,也可以分開放置,只不過分開的話要指明RS是Nginx的主機地址。至于直接將虛擬地址配置在Nginx主機上我暫時還未成功 下面附上我的雙主模型的主keepalived服務器的配置 ! Configuration File for keepalive…

    Linux干貨 2016-11-11
  • Linux文件類型及顏色標識整理

    Linux系統上的文件類型 -:f; 常規文件 , d:directory, 目錄文件; b;block device,塊設備文件,支持以'block'為單位進行隨機訪問; c:character device,字符設備文件,支持以'character'為單位進行線性訪問;    &nbs…

    Linux干貨 2016-10-16
欧美性久久久久