馬哥教育網絡班22期+第3周課程練習

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

    who | cut -d' ' -f1 | sort -u


1472370027449107.jpg

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

    who | sort -t' ' -k4 | tail -1


1472370133283962.jpg

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

    cut -d: -f7 /etc/passwd | uniq -c | sort | head -1


1472370163947946.jpg

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

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


1472370216825066.jpg

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

    ifconfig eno16777736 | cut -d' ' -f10 | egrep "[0-9]+[.]"


1472370276649173.jpg

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

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


1472370314958122.jpg

7、顯示/var目錄下一級子目錄或文件的總個數。
    ll /var | grep "^[d]" | wc -l

    ll /var | grep "^[^d]" | wc -l


1472370391423273.jpg

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

    sort -t: -k3 -n /etc/group | head -10


1472370423521713.jpg

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

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


1472370463864148.jpg

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
    groupadd命令:添加組
        groupadd [OPTION] GROUP
        -g GID:手動指定GID;默認是上一個組的GID+1

    groupmod命令:修改組屬性
        groupmod [OPTION] GROUP
        -g GID:修改GID
        -n newname:修改組名

    groupdel命令:刪除組
        groupdel GROUP

    useradd命令:創建用戶
        useradd [OPTION] LOGIN
        -u,–uid:指定UID
        -g,–gid:指定基本組ID,此組得事先存在
        -c,–comment:致命注釋信息
        -G,–groups GROUP1[,GROUP2,…[,GROUPN]]:指明用戶所屬的附加組,多個組之間用逗號分隔
        -d,–home:創建以指定路徑為用戶家目錄;通過復制/etc/skel此目錄并重命名實現;指定的家目錄路徑如果事先存在,則不會為用戶復制環境配置文件
        -M,–no-create-home:不創建家目錄
        -s,–shelll:指定用戶的默認shell,可用的所有shell列表存儲在/etc/shells文件中
        -r,–system:創建系統用戶
        PS:創建用戶時的諸多默認設定配置文件為/etc/login.defs
        useradd -D:顯示創建用戶的默認配置
        useradd -D 選項:修改默認選項的值
        修改的結果保存于/etc/default/useradd文件中

    usermod命令:修改用戶屬性
        usermod [OPTION] LOGIN
        -u,–uid:修改用戶的ID為此處指定的新ID
        -g,–gid:修改用戶所屬的基本組
        -G,–groups GROUP1[,GROUP2,…[,GROUPN]]:修改用戶所屬的附加組;原來的附加組會被覆蓋
        -a,–append:與-G一同使用,用于為用戶追加新的附加組
        -c,–comment:修改注釋信息
        -d,–home:修改用戶的家目錄,用戶原有的文件不會被轉移至新位置
        -m,–move-home:只能與-d選項一同使用,用于將原來的家目錄移動為新的家目錄
        -l,–login:修改用戶名
        -s,–shell:修改用戶的默認shell
        -L,–lock:鎖定用戶密碼,即在用戶原來的密碼字符串之前添加一個"!"
        -U,–unlock:解鎖用戶的密碼

    userdel命令:刪除用戶
        userdel [OPTION] LOGIN
        -r:刪除用戶時一并刪除其家目錄

    passwd命令:
        passwd  [-k]  [-l]  [-u  [-f]]  [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
        (1)passwd:修改用戶自己的密碼
        (2)passwd USERNAME:修改指定用戶密碼,僅限root有權限
        -l -u:鎖定和解鎖用戶
        -d:清除用戶密碼串
        -e DATE:過期期限,日期
        -i DAYS:非活動期限
        -n DAYS:密碼最短使用期限
        -x DAYS:密碼最長使用期限
        -w DAYS:警告期限
        –stdin:echo "PASSWORD"|passwd –stdin USERNAME

    gpasswd命令:
        gpasswd [OPTION] group
        -a USERNAME:向組中添加用戶
        -d USERNAME:從組中移除用戶
                        
(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;
        passwd mageia
        mageedu

        mageedu

(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;

        usermod -aG admins slackware

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

        passwd -n 3 -x 180 -w 3 slackware

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

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

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

        useradd -r -s /sbin/nologin mysql

(12)、使用echo命令,非交互式為openstack添加密碼。
        echo "PASSWORD"|passwd –stdin openstack

原創文章,作者:N22-上海-葡撻,如若轉載,請注明出處:http://www.www58058.com/41291

(0)
N22-上海-葡撻N22-上海-葡撻
上一篇 2016-08-29
下一篇 2016-08-29

相關推薦

  • linux系統自動安裝之PXE

    PXE(集成在網卡上的)預啟動執行環境 (能夠通過網絡實現操作系統安裝) PXE工作原理1、Client向PXE Server上的DHCP發送IP地址請求消息,DHCP檢測Client是否合法(主要是檢測Client的網卡MAC地址),如果合法則返回Client的IP地址,同時將啟動文件pxelinux.0的位置信息一并傳送給Client2、Client向P…

    2018-01-16
  • Linux Services and Security–part2

    一、請描述一次完整的http請求處理過程 (1).建立或處理連接:接收請求或拒絕請求; (2).接收請求:接收來自于網絡上的主機請求報文中對某特定資源的一次請求的過程; 接收請求的模型: 并發訪問響應模型: 單進程I/O模型:啟動一個進程處理用戶請求;這意味著,一次只能處理一個請求,多個請求被串行響應; 多進程I/O結構:并行啟動多個進程,每個進程響應一個請…

    Linux干貨 2017-11-13
  • Python之入門篇

    一、環境準備 環境準備 –> pyenv (安裝python解釋器,管理Python版本,管理python虛擬環境) https://github.com/pyenv/pyenv https://github.com/yyuu/pyenv-installer # yum -y install git # curl -L https://ra…

    Linux干貨 2015-02-07
  • 基于ssl的mysql的主從復制

    實驗環境: system:CentOS Linux release 7.2.1511 (Core) mariadb server:mariadb-server-5.5.44-2.el7.centos.x86_64 master server:10.1.51.20/16 slave serv…

    2016-11-22
  • MySQL高可用架構之MHA

    MySQL高可用架構之MHA 1、關于MHA MHA(Master HA)是一款開源的MySQL的高可用程序,它為MySQL主從復制架構提供了automating master failover功能。MHA在監控到master節點故障時,會提升其中擁有的最新數據的slave節點成為新的master節點,在此期間,MHA會通過其它從節點獲取額外信息來避免一致性…

    Linux干貨 2017-03-30
  • linux函數和數組定義

    函數介紹:    函數function 是由若干條shell 命令組成的語句塊,實現代碼重用和模塊化編程。    它與shell 程序形式上是相似的,不同的是它不是一個單獨的進程,不能獨立運行,而是shell 程序的一部分。    函數和shell 程序比較相似,區別在于:   …

    Linux干貨 2017-04-02

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-30 12:48

    希望同學在下次操作時,將輸出結果一并附上,關鍵部分即可,不用全部,請加油

欧美性久久久久