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

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

 who | tr -s [[:space:]] | cut -d" " -f1 | sort -u

[root@localhost cdrom]# who

root     pts/1        2016-08-26 19:07 (192.168.2.101)

root     pts/2        2016-08-28 23:34 (192.168.2.101)

desk8803 pts/3        2016-08-28 23:37 (192.168.2.101)

[root@localhost cdrom]# who | tr -s [[:space:]] | cut -d" " -f1 | sort -u

desk8803

root

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

 last | head -1

[desk8803@localhost ~]$ last | head -1

desk8803 pts/4        192.168.2.101    Sun Aug 28 23:48   still logged i

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

cat /etc/passwd | cut -d":" -f7 | uniq -c | sort -n | tail -1 | tr -s [[:space:]] | cut -d" " -f3

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

[desk8803@localhost ~]$ cat /etc/passwd | sort -t":" -nk3 | tail -10 | tr [a-z] [A-Z] > /tmp/maxusers.txt

[desk8803@localhost ~]$ cat /tmp/maxusers.txt 

USER3:X:502:502::/HOME/USER3:/BIN/BASH

BASH:X:503:503::/HOME/BASH:/BIN/BASH

TESTBASH:X:504:504::/HOME/TESTBASH:/BIN/BASH

NOLOGIN:X:505:505::/HOME/NOLOGIN:/SBIN/NOLOGIN

CENTOS:X:506:506::/HOME/CENTOS:/BIN/BASH

USER1:X:507:507::/HOME/USER1:/BIN/BASH

USER2:X:508:508::/HOME/USER2:/BIN/BASH

DESKXX:X:509:509::/HOME/DESKXX:/BIN/BASH

DESK8800:X:510:510::/HOME/DESK8800:/BIN/BASH

NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

5.取出當前主機的IP地址

[desk8803@localhost ~]$ ifconfig | grep -E "inet addr" | cut -d":" -f2 | cut -d" " -f1

192.168.2.103

127.0.0.1

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

[desk8803@localhost ~]$ ls /etc/*.conf | tr [a-z] [A-Z] > /tmp/etc.conf

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

[desk8803@localhost ~]$ ll /var | wc -l

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

[desk8803@localhost ~]$ cat /etc/group | sort -t":" -nk3 | head -10 | cut -d":" -f1

root

bin

daemon

sys

adm

tty

disk

lp

mem

kmem

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

[root@localhost ~]# cat /etc/fstab /etc/issue > /tmp/etc.test

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

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

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

[root@localhost ~]# cat /etc/group | tail -1

distro:x:2016:

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

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

[root@localhost ~]# id mandriva

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

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

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

[root@localhost ~]# cat /etc/passwd | tail -1

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

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

[root@localhost ~]# echo "mageedu" | passwd –stdin mageia

更改用戶 mageia 的密碼 。

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

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

[root@localhost ~]# cat /etc/passwd | grep mandriva

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

[root@localhost ~]# userdel mandriva

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

[root@localhost ~]# useradd -u 2002 -g distro -G peguin slackware

[root@localhost ~]# id slackware

uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin)

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

[root@localhost ~]# cat /etc//passwd | tail -1

slackware:x:2002:2016::/home/slackware:/bin/bash

[root@localhost ~]# usermod -s /bin/tcsh slackware

[root@localhost ~]# cat /etc/passwd | tail -1

slackware:x:2002:2016::/home/slackware:/bin/tcsh

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

[root@localhost ~]# usermod -aG admins slackware[root@localhost ~]# id slackware

uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin),2018(admins)

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

[root@localhost ~]# echo slackware | passwd –stdin -n3 -x180 -w3 slackware

調整用戶密碼老化數據slackware。

passwd: 操作成功

[root@localhost ~]# cat /etc/shadow | tail -1

slackware:!!:17047:3:180:3:::

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

[root@localhost ~]# groupadd clouds;groupadd peguin;groupadd nova

[root@localhost ~]# id openstack

uid=3003(openstack) gid=2019(clouds) 組=2019(clouds),2017(peguin),2020(nova)

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

[root@localhost ~]# useradd -r -s /sbin/nologin mysql

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

[root@localhost ~]# echo openstack | passwd –stdin openstack &> /dev/null

原創文章,作者:N22-蘇州-striker,如若轉載,請注明出處:http://www.www58058.com/41847

(0)
N22-蘇州-strikerN22-蘇州-striker
上一篇 2016-09-07
下一篇 2016-09-07

相關推薦

  • Linux文件三劍客sed命令用法詳解

    sed是一種流編輯器,它是文本處理中非常強大的工具,能夠完美的配合正則表達式使用,用法簡單實用,非常靈活。??????? 工作原理:sed命令處理文本時,把當前處理的行存儲在一個臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。 在…

    2017-06-24
  • 第六周

      第6周   1 復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit ; sed -i 's@^[[:space:]]\+@#@g&#03…

    Linux干貨 2017-02-13
  • FHS文件系統以及各目錄功能

    FHS:Filesystem Hierarchy Standard(文件系統目錄標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。FHS定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理,規范在根目錄(/)下面各個主要目錄應該放什么樣的文件。 …

    Linux干貨 2016-10-17
  • 關于大型網站技術演進的思考(十)–網站靜態化處理—動靜整合方案(2)

    原文出處: 夏天的森林    上篇文章我簡要的介紹了下網站靜態化的演進過程,有朋友可能認為這些知識有點過于稀松平常了,而且網站靜態化的技術基點也不是那么高深和難以理解,因此它和時下日新月異的web前端技術相比,就顯得不倫不類了。其實當我打算寫本系列的之前我個人覺得web前端有一個點是很多人都知道重要,但是有常常低估它作用的,那就…

    2015-03-11
  • Linux-start

    學習計劃:參見N24學習時間與線路圖. 目標:完成作業,考試過關。 宣言:人但有追求,世界亦會讓路。

    Linux干貨 2016-10-24
  • 優云云監控:先定一個運維小目標,比方監控它10000臺主機

    “想做世界最好是對的,但是最好先定一個能達到的小目標,比方說我先掙它一個億?!?,王首富云淡風輕地給各行各業提供了一個很好的Roadmap,包括我們運維。的確,如今數據中心的規模增長速度也已像一匹脫韁的野馬,各地都頻頻建設起超大型數據中心。按工信部的定義,超大型是指規模大于等于一萬個標準機架的數據中心,考慮到虛擬化技術的使用,實際上需要運維的主機規模很容易超過…

    系統運維 2016-12-05

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-13 23:37

    第5題其實已經解出來了,但是建議使用正則表達式看下。

欧美性久久久久