馬哥教育網絡班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 09:43
下一篇 2016-09-07 10:44

相關推薦

  • bash腳本編程實例

    bash腳本編程實例 1.寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態 在線的主機使用綠色顯示 不在線的主機使用紅色顯示 #!/bin/bash for i in {1..254};do if /bin/ping -W 1 -c 1 172.16.250.${i} >> /dev/…

    Linux干貨 2017-08-20
  • CentOS 6.5下編譯安裝httpd+mysql+php過程實錄

    一、安裝環境     Linux系統:CentOS 6.5     Apache版本:http-2.4.12     MySQL版本:MySQL 5.6.24     PHP版本:PHP-5.6.8 …

    Linux干貨 2015-05-18
  • linux初步

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 文件管理命令 文件管理有哪些命令:ls, cd, pwd, mkdir, rmdir, cp, rm, mv, touch, cat, more, less, head, tail等,下面我們就來詳細的說一下(只說常用的,不是命令全部) (1). ls 命令 1 2 3 4 5 6…

    Linux干貨 2017-01-22
  • 第十二周:httpd和lamp

    看了一下作業內容,發現所有的都在51cto上寫過了。這里就不在做了。 畢竟當時幾篇博客寫下來,還是非常繁瑣的,不想在寫。 文檔地址:RHEL6.8編譯安裝LAMP環境:httpd-2.4+mysql5.6+php5.5;基于LAMP環境部署WordPress: http://afterdawn.blog.51cto.com/7503144/1876171 配…

    Linux干貨 2016-12-09
  • yum與rpm生產中最頻繁使用

    yum 命令 使用方法: yum [選項] [包名稱] 常用選項: install #安裝軟件,后面跟包名稱,例如:yum install wget 安裝wget軟件包list #列出所有軟件,一般和grep一起使用,例如:yum list | grep java ,查看所有java安裝包,一般情況下不使用search,grep可以更大范圍搜索包,例如只記得…

    Linux干貨 2017-04-18
  • rsync+inotify實現數據同步——雙向傳輸

    實驗環境:<僅2臺主機之間進行數據雙向傳輸> A主機:10.1.43.102 B主機:10.1.43.103 一、數據從A推向B 配置流程 先在B主機上配置: 1.vi /etc/rsyncd.conf(用戶,目錄,模塊,虛擬用戶及密碼文件) uid = root gid = root port …

    Linux干貨 2016-10-27

評論列表(1條)

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

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

欧美性久久久久