馬哥教育網絡班N22期+第三周課程練習

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

   who | cut -d " " -f 1 | sort | uniq

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

   last | head -n 1 

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

   cat /etc/passwd | cut -d ":" -f 7 | sort | uniq -c | sort -r | head -1 | cut -d " " -f 7

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

   sort -t':' -k3 -nr /etc/passwd | head -10 | cut -d: -f1 | tr 'a-z' 'A-Z' >/tmp/maxuser.txt

   grep "$(cat /etc/passwd | cut -d ":" -f 3 | sort -nr | head -10)" /etc/passwd | tr [a-z] [A-Z] >> /tmp/maxusers.txt

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

   ifconfig | grep "broadcast" | cut -d " " -f 10

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

   ls /etc | grep ".conf"$ | tr [a-z] [A-Z] >> /tmp/etc.conf

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

   ll /var | wc -l

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

   sort -t':' -k3 -nr /etc/group | tail -10 | cut -d: -f1

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

   cat /etc/fstab /etc/issue &>> /tmp/etc.test

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:

    (1)useradd:創建用戶

    用法:useradd [options] USERNAME

    options:

        -m:創建用戶家目錄;

        -M:不創建用戶家目錄;

        -r:指定創建的用戶為系統用戶;

        -s: <SHELL>:指定創建的用戶使用指定的shell;

        -u: <UID>:指定創建的用戶的UID;

        -U:創建用戶的同時創建同名組;

        -g: <GID|GROUPNAME>:指定創建的用戶所屬的基本組;

        -G: –groups GROUP1[,GROUP2,…[,GROUPN]]]:指定創建的用戶所屬的附加組,多個組之間用逗號分隔;

        -p: <PASSWORD>:設置創建用戶的密碼(加密);

        -d: –home HOME_DIR:以指定的路徑為用戶的家目錄;通過復制/etc/skel此目錄并重命名實現;指定的家目錄路徑如果事先存在,則不會為用戶復制環境配置文件;

         

   (2)userdel:刪除用戶

    用法:userdel [options] USERNAME

    options:

        -r:刪除用戶,同時刪除用戶家目錄及相關郵件;

        -f:強制執行刪除用戶行為;

         

   (3)usermod:修改賬號屬性

    用法:usermode [options] USERNAME

    options:

        -c:修改指定賬號的聲明信息;

        -d <HOME_DIR>:修改指定賬號的家目錄;

        -g <GROUP>:修改指定賬號所屬的基本組;

        -G <GROUPS>:修改指定賬號所屬的附加組;如果GROUPS為空;則表示刪除該賬號的附加組信息(沒有附加組);

        -a -G <NewGroups>:新增指定賬號所屬的附加組信息;

        -l <NewUSERNAME>:修改指定賬號名為NewUSERNAME;

        -p <PASSWORD>:修改指定賬號的密碼;

        -s <SHELL>:修改指定賬號使用的shell;

        -u <UID>:修改指定賬號的UID;

        -U:解鎖賬號;

         

   (4)passwd:設置或修改用戶密碼

    用法:passwd USERNAME

         passwd [options] USERNAME

    options:

        -d:刪除指定賬號密碼;

        -l:鎖定指定賬號密碼;

        -u:解鎖指定賬號密碼;

        -e:設置指定賬號密碼過期;

        -x:設置指定賬號密碼的最大可用天數;

        -n:設置指定賬號密碼的最小可用天數;

        -w:設置指定賬號收到密碼過期通知的天數;

        -i:設置指定賬號密碼過期后,賬號不可用的天數;

        -S:顯示指定賬號的密碼狀態;

        -f:強制執行;

    特殊用法:

        #echo PASSWORD|passwd –stdin USERNAME

        設置用戶密碼;只需執行一次即可;

    備注:passwd命令需要用戶具有root權限;

     

   組管理類命令:

    (5)groupadd:創建組

    用法:groupadd [options] GROUPNAME

    options:

        -g <GID>:指定創建的組的GID;

        -o:指定創建的組可以使用重復的GID;

        -p <PASSWORD>:指定創建的組的加密密碼;

        -r:指定創建的組為系統組;

        -f:強制執行;

         

    (6)groupdel:刪除組

    用法:groupdel [options] GROUPNAME

        options通常不使用

         

   (7)groupmod:修改組

    用法:groupmod [options] GROUPNAME

    options:

        -g <GID>:修改指定組的GID;

        -n <New_GRPNAME>:修改指定組的組名為New_GRPNAME;

        -p <PASSWORD>:修改指定組的密碼;

        

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

   [root@Dexter_Centos7 ~]# groupadd -g 2016 distro

   [root@Dexter_Centos7 ~]# tail -2 /etc/group

   mailman:x:41:

   distro:x:2016:

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

   [root@Dexter_Centos7 ~]# useradd -u 1005 -g distro mandriva

   [root@Dexter_Centos7 ~]# tail -1 /etc/passwd

   mandriva:x:1005:2016::/home/mandriva:/bin/bash

   [root@Dexter_Centos7 ~]# id mandriva

   uid=1005(mandriva) gid=2016(distro) 組=2016(distro)

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

   [root@Dexter_Centos7 ~]# useradd -u 1100 -d /home/linux  mageia 

   [root@Dexter_Centos7 ~]# tail -1 /etc/passwd

   mageia:x:1100:1100::/home/linux:/bin/bash

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

   1.echo "mageedu" | passwd –stdin mageia

   2.[root@Dexter_Centos7 ~]# passwd -f mageia 

   更改用戶 mageia 的密碼 。

   新的 密碼:

   無效的密碼: 密碼少于 8 個字符

   重新輸入新的 密碼:

   passwd:所有的身份驗證令牌已經成功更新。

   [root@Dexter_Centos7 ~]# passwd –stdin mageia 

   更改用戶 mageia 的密碼 。

   mageedu

   passwd:所有的身份驗證令牌已經成功更新。

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

   userdel mandriva

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

   groupadd 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

   (9)、為slackware添加密碼,且要求密碼最短使用期限為3天,最長為180天,警告為3天;

   echo "mageedu" |passwd -x 180 -n 3 -w 3 –stdin slackware

   (10)、添加用戶openstack,其ID號為3003, 基本組為clouds,附加組為peguin和nova;

   useradd -u 3003 -g clouds -G peguin,nova openstack

   (11)、添加系統用戶mysql,要求其shell為/sbin/nologin;

   useradd -r -s /sbin/nologin mysql     

   (12)、使用echo命令,非交互式為openstack添加密碼。

   echo "mageedu" | passwd –stdin openstack

原創文章,作者:N22-昆山-Dexter_Wang,如若轉載,請注明出處:http://www.www58058.com/42184

(0)
N22-昆山-Dexter_WangN22-昆山-Dexter_Wang
上一篇 2016-09-08
下一篇 2016-09-08

相關推薦

  • 基于NFS服務的mariadb數據庫實現

    實驗要求:     (1) nfs server導出/data/目錄;     (2) nfs client掛載/data/至本地的/mydata目錄;本地的mysqld或mariadb服務的數據目錄設置為/mydata, 要求服務能正常啟動,且可正常 存儲數據;   (3)用另一臺主機,…

    2017-06-11
  • CentOS上配置rsyslog客戶端用以遠程記錄日志

    rsyslog是一個開源工具,被廣泛用于Linux系統以通過TCP/UDP協議轉發或接收日志消息。rsyslog守護進程可以被配置成兩種環境,一種是配置成日志收集服務器,rsyslog進程可以從網絡中收集其它主機上的日志數據,這些主機會將日志配置為發送到另外的遠程服務器。rsyslog的另外一個用法,就是可以配置為客戶端,用來過濾和發送內部日志消息到本地文件…

    Linux干貨 2015-02-14
  • shell腳本1——test測試

    程序:指令+數據 程序:算法+數據結構 shell腳本編程: 編程的語言分類:根據運行方式     編譯運行:源代碼——>編譯器——>程序文件     解釋運行:源代碼——>運行時啟動解釋器,由解釋器邊解釋邊執行 根據其編程過程中功能的實現是否調用庫還是調用外部…

    Linux干貨 2016-08-18
  • DNS and BIND

    DNS and BIND 名稱解析:把一種代號轉換成為另一種代號的功能是應用程序基于某個搜索鍵在指定的數據庫查詢,查詢到對應的鍵以后,對應鍵被找出來的過程!passwd —《nsswith》/etc/nsswith.conf 注意:查詢的時候用到的是UDP的53,主從復制走的是tcp(但是也用到udp) DNS: Domain Name Serv…

    Linux干貨 2016-10-21
  • Linux文件系統-基礎學習-文件管理-20160727

    Linux文件系統–基礎學習–文件管理 Linux下的文件類型 –:普通文件 :這些文件一般是用一些相關的應用程序創建。它的第一個字符是 – d: 目錄文件 :目錄在Linux是一個比較特殊的文件。它的第一個字符是 d b: 塊設備 :這個種類的文件,是用mknode來創建,用rm來刪除,它的第一個字符是b c…

    Linux干貨 2016-08-04
  • linux基礎之用戶管理

    介紹了一些基礎命令,比如cut、head傳輸到管道時的使用,并通過詳細的介紹、大量的習題完成了用戶管理的相關知識

    Linux干貨 2017-12-15
欧美性久久久久