馬哥教育網絡21期+第3周博客練習

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

[root@CentOS6 ~]# who|cut -d' ' -f1|sort -u
root
santi

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

[root@CentOS6 ~]# who |tail -1 |awk '{print $1}'|xargs id
uid=500(santi) gid=500(santi) 組=500(santi)

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

[root@CentOS6 ~]# cat /etc/passwd|cut -d':' -f7|sort|uniq -c|sort -n|tail -1|awk '{print $2}'
/sbin/nologin

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

[root@CentOS6 ~]# cat /etc/passwd |sort -n -t':' -k3|tail -10|tr [a-z] [A-Z] > /tmpmaxusers.txt
[root@CentOS6 ~]# cat /tmpmaxusers.txt
HSQLDB:X:96:96::/VAR/LIB/HSQLDB:/SBIN/NOLOGIN
NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN
USBMUXD:X:113:113:USBMUXD USER:/:/SBIN/NOLOGIN
AVAHI-AUTOIPD:X:170:170:AVAHI IPV4LL STACK:/VAR/LIB/AVAHI-AUTOIPD:/SBIN/NOLOGIN
ABRT:X:173:173::/ETC/ABRT:/SBIN/NOLOGIN
PULSE:X:497:495:PULSEAUDIO SYSTEM DAEMON:/VAR/RUN/PULSE:/SBIN/NOLOGIN
SASLAUTH:X:498:76:"SASLAUTHD USER":/VAR/EMPTY/SASLAUTH:/SBIN/NOLOGIN
RTKIT:X:499:497:REALTIMEKIT:/PROC:/SBIN/NOLOGIN
SANTI:X:500:500::/HOME/SANTI:/BIN/BASH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

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

[root@CentOS6 ~]# ifconfig | grep 'inet\b' | awk '{print $2}'|awk -F':' '{print $2}'
192.168.31.249
127.0.0.1

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

[root@CentOS6 ~]# ls /etc | grep '\.conf$' | tr  'a-z' 'A-Z' > /tmp/etc.conf
[root@CentOS6 ~]# cat /tmp/etc.conf
ANT.CONF
ASOUND.CONF
AUTOFS.CONF
AUTOFS_LDAP_AUTH.CONF
CAS.CONF
CGCONFIG.CONF
CGRULES.CONF
CGSNAPSHOT_BLACKLIST.CONF
DNSMASQ.CONF
...

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

[root@CentOS6 ~]# ls -1 /var|wc -l
20

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

[root@CentOS6 ~]# cat /etc/group|sort -n -t':' -k3|head -10|awk -F':' '{print $1}'
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem

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

[root@CentOS6 ~]# cat /etc/{fstab,issue} > /tmp/etc.test
[root@CentOS6 ~]# cat /tmp/etc.test

#
# /etc/fstab
# Created by anaconda on Sun Jan 24 00:36:05 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_centos6-lv_root /                       ext4    defaults        1 1
UUID=519cd07c-ef14-4cf6-94c2-1e025d029ffa /boot                   ext4    defaults        1 2
/dev/mapper/vg_centos6-lv_swap swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
CentOS release 6.8 (Final)
Kernel \r on an \m

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

用戶:

    創建用戶:

        

            useradd [options] LOGIN

-u UID: [UID_MIN, UID_MAX], 定義在/etc/login.defs

-g GID:指明用戶所屬基本組,可為組名,也可以GID;

-c "COMMENT":用戶的注釋信息;

-d /PATH/TO/HOME_DIR: 以指定的路徑為家目錄;

-s SHELL: 指明用戶的默認shell程序,可用列表在/etc/shells文件中;

-G GROUP1[,GROUP2,…[,GROUPN]]]:為用戶指明附加組;組必須事先存在;

-r: 創建系統用戶

    修改用戶:

            

            usermod [OPTION] login

     -u UID: 新UID

     -g GID: 新基本組

     -G GROUP1[,GROUP2,…[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;若保留原有,則要同時使用-a選項,表示append;

     -s SHELL:新的默認SHELL;

     -c 'COMMENT':新的注釋信息;

     -d HOME: 新的家目錄;原有家目錄中的文件不會同時移動至新的家目錄;若要移動,則同時使用-m選項;

     -l login_name: 新的名字;

     -L: lock指定用戶

     -U: unlock指定用戶

     -e YYYY-MM-DD: 指明用戶賬號過期日期;

     -f INACTIVE: 設定非活動期限;

    刪除用戶:

            

            userdel [OPTION]… login

    -r: 刪除用戶家目錄;

組:

    創建組:

            

            groupadd [OPTION]… group_name

     -g GID: 指明GID號;[GID_MIN, GID_MAX]

     -r: 創建系統組;

    修改組屬性:

           

            groupmod [OPTION]… group

     -n group_name: 新名字

     -g GID: 新的GID;

 

    刪除組:

            groupdel GROUP

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

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

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

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

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

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

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

[root@CentOS6 ~]# echo "mageedu" |passwd --stdin mageia
更改用戶 mageia 的密碼 。
passwd: 所有的身份驗證令牌已經成功更新。

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

[root@CentOS6 ~]# userdel mandriva

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

[root@CentOS6 ~]# groupadd peguin
[root@CentOS6 ~]# useradd -u 2002 -g distro -G peguin slackware 
[root@CentOS6 ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin)

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

[root@CentOS6 ~]# grep slackware /etc/passwd
slackware:x:2002:2016::/home/slackware:/bin/bash
[root@CentOS6 ~]# usermod -s /bin/tcsh slackware
[root@CentOS6 ~]# grep slackware /etc/passwd
slackware:x:2002:2016::/home/slackware:/bin/tcsh

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

[root@CentOS6 ~]# groupadd admins
[root@CentOS6 ~]# usermod -G admins -a slackware
[root@CentOS6 ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin),2018(admins)

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

[root@CentOS6 ~]# echo "santi" |passwd --stdin slackware
更改用戶 slackware 的密碼 。
passwd: 所有的身份驗證令牌已經成功更新。
[root@CentOS6 ~]# chage -m 3 -M 180 -W 3 slackware
[root@CentOS6 ~]# chage -l slackware
最近一次密碼修改時間		:7月 24, 2016
密碼過期時間			:1月 20, 2017
密碼失效時間			:從不
帳戶過期時間			:從不
兩次改變密碼之間相距的最小天數	:3
兩次改變密碼之間相距的最大天數	:180
在密碼過期之前警告的天數	:3

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

[root@CentOS6 ~]# groupadd clouds

[root@CentOS6 ~]# groupadd nova

[root@CentOS6 ~]# useradd -u 3003 -g clouds -G peguin,nova openstack

[root@CentOS6 ~]# id openstack

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

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

[root@CentOS6 ~]# useradd -s /sbin/nologin mysql
[root@CentOS6 ~]# grep mysql /etc/passwd
mysql:x:3004:3004::/home/mysql:/sbin/nologin

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

[root@CentOS6 ~]# echo "santi" |passwd --stdin openstack
更改用戶 openstack 的密碼 。
passwd: 所有的身份驗證令牌已經成功更新。

原創文章,作者:sandiegoit,如若轉載,請注明出處:http://www.www58058.com/25794

(0)
sandiegoitsandiegoit
上一篇 2016-07-26
下一篇 2016-07-26

相關推薦

  • grep命令v2

    顯示netstat 以LISTEN結尾,或后接空白的行

    Linux干貨 2016-11-20
  • 0805隨堂練習

    文本處理練習: 1.找出本機ip地址  [root@localhost ~]# ifconfig |head -2 |tail -1 |tr -s ' ' ':' |cut -d: -f3  10.1.252.221 2.查看本機分區最大的利用率  [root@localhost ~]# …

    Linux干貨 2016-08-07
  • 博客

       這是我的第一篇博客!   平時學習中,總會遇到或大或小的問題,以及一些新的感悟,在當時能夠十分清晰記得,但過一些時日,便發現又忘記了。以前十分明白的東西,又變得有些模糊,甚至完全忘記。因此特別需要記錄下來,方便日后的查閱或分享給其他遇到類似問題的朋友。    如果以后忘記的某些知識,這時候,翻開以往博客…

    Linux干貨 2017-07-11
  • 第五周博客作業

    1、顯示當前系統上root、fedora或user1用戶的默認shell; [root@localhost ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f1,7 roo…

    Linux干貨 2017-01-07
  • 基于mysql的數據庫分析系統(rsyslog)

    rsyslog:日志收集和存儲系統 1.事件在電腦中的日志記錄格式為:     日期時間 主機 進程[pid]:事件內容 2.rsyslog的特性:     多線程;     UDP,TCP,SSL/TLS,RELP; &nbsp…

    Linux干貨 2016-10-23
  • mariadb之再次演練

    架構圖如下: 1.按照架構圖所示,準備機器,做好時間同步,主機名解析 192.168.42.150 node1 [proxySQL keepalived]192.168.42.151 node2 [proxySQL keepalived]192.168.42.152 node3 [mysql-master wha]192.168.42.153 node4 […

    Linux干貨 2016-03-06

評論列表(1條)

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

    寫的很好,排版還可以在漂亮一點,加油

欧美性久久久久