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

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

#思路:使用who命令列出列出當明顯登錄的所有用戶,使用cut命令取出用戶名,使用uniq命令去重
[root@Centos6 ~]# who | cut -d" " -f1 | uniq
 root

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

#思路:使用w命列出所有登錄用戶,使用sort對登錄時間排序,并用cut命令取出用戶名,然后用head命令取第一個用戶,傳遞給id命令
[root@Centos6 ~]# id $(w | sort -t" " -k4 -n | cut -d" " -f1 |head -1)
uid=0(root) gid=0(root) 組=0(root)

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

#思路:取出passwd上所有使用的shell名稱,使用uniq –c統計重復次數,按數值排序后取最大值
 [root@Centos6 ~]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1
  21 /sbin/nologin

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

#思路:將passwd文件按第三個字段排序,用tail取最后十行,使用tr 命令轉換大小寫,重定向保存么maxusers.txt文件
sort -t: -k3 /etc/passwd –n | tail -10 | tr a-z A-Z >/tmp/maxusers.txt

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

#思路:ifconfig命令結果如下:對結果進行正規則表達式匹配,然后用cut命令切分,得到ip地址
[root@Centos6 ~]# ifconfig 
eth0      Link encap:Ethernet  HWaddr 00:0C:29:A4:57:BC  
          inet addr:192.168.50.177  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fea4:57bc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:230917 errors:0 dropped:0 overruns:0 frame:0
          TX packets:175189 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:309476096 (295.1 MiB)  TX bytes:15819665 (15.0 MiB)
 
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:990 errors:0 dropped:0 overruns:0 frame:0
          TX packets:990 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:333209 (325.3 KiB)  TX bytes:333209 (325.3 KiB)
[root@Centos6 ~]# ifconfig | grep "inet addr" | cut -d: -f2| cut -d" " -f1
192.168.50.177
127.0.0.1

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

ls /etc/*.conf | tr a-z A-Z >/tmp/etc.conf
[root@Centos6 ~]# cat /tmp.etc.conf
/ETC/ASOUND.CONF
/ETC/AUTOFS_LDAP_AUTH.CONF
/ETC/CAS.CONF
/ETC/CGCONFIG.CONF
/ETC/CGRULES.CONF
/ETC/CGSNAPSHOT_BLACKLIST.CONF
/ETC/DRACUT.CONF
/ETC/ELINKS.CONF
/ETC/FPRINTD.CONF
/ETC/GAI.CONF

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

[root@Centos6 ~]# ls /var | wc -l
19

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

#思路:先按第三個字段排序,取前十行,然后用cut命令取出組名
     sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1
[root@Centos6 ~]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem

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

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

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

(1)、創建組distro,其GID為2016;
         group distro –G 2016
(2)、創建用戶mandriva, 其ID號為1005;基本組為distro;
         useradd mandriva -u 1005 -g distro
(3)、創建用戶mageia,其ID號為1100,家目錄為/home/linux;
         useradd mageia –u 1100 –d /home/linux
(4)、給用戶mageia添加密碼,密碼為mageedu;
         echo “mageedu” | passwd –stdin mageia
(5)、刪除mandriva,但保留其家目錄;
         userdel mandriva
(6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
         useradd slackware -u 2002 -g distro -G peguin
(7)、修改slackware的默認shell為/bin/tcsh;
        [root@Centos6 ~]# chsh test
                    #Changing shell for test.
                    New shell [/bin/bash]: /bin/tcsh
                    #Shell changed.
(8)、為用戶slackware新增附加組admins;
        usermod –G admins slackware
(9)、為slackware添加密碼,且要求密碼最短使用期限為3天,最長為180天,警告為3天;
         echo “centos”| passwd –stdin slackware
               [root@Centos6 ~]# passwd -n 3 -x 180 -w 3 slackware
               調整用戶密碼老化數據slackware。
               passwd: 操作成功
(10)、添加用戶openstack,其ID號為3003, 基本組為clouds,附加組為peguin和nova;
      useradd openstack–u 3002 –g clouds –G peguin,nova
(11)、添加系統用戶mysql,要求其shell為/sbin/nologin;
      useradd mysql -s /sbin/nologin
   (12)、使用echo命令,非交互式為openstack添加密碼。
            echo “centos”| passwd –stdin openstack

原創文章,作者:N21-沉舟,如若轉載,請注明出處:http://www.www58058.com/22672

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-07 10:51
下一篇 2016-07-07 10:51

相關推薦

  • Linux中高級文件系統管理

    一、磁盤配額管理             定義:限制普通用戶對某個目錄寫空間大小的限制     1、此策略是針對文件系統,并非硬盤     2、可以根據不同組和不同用戶進行不同的策…

    Linux干貨 2016-08-29
  • 程序包的編譯安裝

    程序包的編譯安裝     程序包的編譯安裝是比較重要的內容,在之后的網絡知識以及服務的配置等學習方面也發揮著重要作用,是我們的必備技能。 一、雜項知識整理 1、which –skip-alias:跳過別名,直接查看原命令 [root@localhost ~]# which –…

    Linux干貨 2016-08-24
  • N23-第一周博客作業

    一、計算機組成 由五大基本部件【運算器 + 控制器 + 儲存器 + 輸入設備 + 輸出設備】組成且遵循馮諾依曼體系,CPU包含運算器和控制器兩大部件。 CPU: 核心部件:運算器、控制器 其他部件:寄存器、緩存、等等 存儲器:內存,RAM(Random Access Memory)隨機訪問存儲器。 Input(輸入設備):下指令,提供數據等,如:硬盤、鍵盤、…

    Linux干貨 2016-09-15
  • N26-博客作業-week9

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash # declare -i nologin_num=0,login_num=0 for i in $(cut -d: -f7 /etc/passwd); do if …

    Linux干貨 2017-04-01
  • TCP三次握手與四次揮手

                                                      &nbsp…

    2017-09-04
  • 制作python模塊安裝包[原創]

     python的第三方模塊越來越豐富,涉及的領域也非常廣,如科學計算、圖片處理、web應用、GUI開發等。當然也可以將自己寫的模塊進行打包或發布。一簡單的方法是將你的類包直接copy到python的lib目錄,但此方式不便于管理與維護,存在多個python版本時會非?;靵y?,F介紹如何編寫setup.py來對一個簡單的python模塊進行打包。 一、…

    Linux干貨 2015-03-27

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-07 10:57

    寫的很好,排版也很棒,加油

欧美性久久久久