N21-第3周 組用戶相關作業

作業:

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

[root@localhost ~]# who
root     pts/0        2016-07-23 16:15 (172.31.3.131)
root     pts/1        2016-07-26 18:42 (172.31.3.111)
root     pts/2        2016-07-26 18:42 (172.31.3.111)
root     pts/3        2016-07-26 20:20 (172.31.3.202)
[root@localhost ~]# who | cut -d' ' -f1 | sort -u
root

who 查詢當前在線用戶;

cut -d' ' 自定義以空格為分界字符;

-f1 獲取第1列信息;

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

[root@localhost ~]# lastlog | grep 'root'
root             pts/3    172.31.3.202     二  7月 26 20:20:33 +0800 2016

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

[root@localhost ~]# cut -d: -f7 /etc/passwd | uniq -cd| sort -n
      2 /bin/bash
      4 /sbin/nologin
     10 /bin/bash
     11 /sbin/nologin
     27 /sbin/nologin
[root@localhost ~]# cut -d: -f7 /etc/passwd | uniq -cd| sort -n | tail -1
     27 /sbin/nologin

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

[root@localhost ~]# cat /etc/passwd |sort -n -t':' -k3|tail -10|tr [a-z] [A-Z]
IORDER_MASTER:X:502:501::/HOME/IORDER_MASTER:/BIN/BASH
IORDER_APPSVR:X:503:501::/HOME/IORDER_APPSVR:/BIN/BASH
IMOBII_MNGSVR:X:505:501::/HOME/IMOBII_MNGSVR:/BIN/BASH
IMOBII_SIAGENT:X:507:501::/HOME/IMOBII_SIAGENT:/BIN/BASH
EXMOBI:X:509:501::/HOME/EXMOBI:/BIN/BASH
WAIQIN365_ZKAGENT:X:510:501::/HOME/WAIQIN365_ZKAGENT:/BIN/BASH
HADOOP:X:511:511::/HOME/HADOOP:/BIN/BASH
WAIQIN365_CISVR:X:512:512::/HOME/WAIQIN365_CISVR:/BIN/BASH
WAIQIN365_SWAPSVR:X:513:512::/HOME/WAIQIN365_SWAPSVR:/BIN/BASH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
[root@localhost ~]# cat /etc/passwd |sort -n -t':' -k3|tail -10|tr [a-z] [A-Z] > /tmp/maxusers.txt
[root@localhost ~]# cat /tmp/maxusers.txt 
IORDER_MASTER:X:502:501::/HOME/IORDER_MASTER:/BIN/BASH
IORDER_APPSVR:X:503:501::/HOME/IORDER_APPSVR:/BIN/BASH
IMOBII_MNGSVR:X:505:501::/HOME/IMOBII_MNGSVR:/BIN/BASH
IMOBII_SIAGENT:X:507:501::/HOME/IMOBII_SIAGENT:/BIN/BASH
EXMOBI:X:509:501::/HOME/EXMOBI:/BIN/BASH
WAIQIN365_ZKAGENT:X:510:501::/HOME/WAIQIN365_ZKAGENT:/BIN/BASH
HADOOP:X:511:511::/HOME/HADOOP:/BIN/BASH
WAIQIN365_CISVR:X:512:512::/HOME/WAIQIN365_CISVR:/BIN/BASH
WAIQIN365_SWAPSVR:X:513:512::/HOME/WAIQIN365_SWAPSVR:/BIN/BASH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

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

[root@localhost ~]# ifconfig
Auto_eth2 Link encap:Ethernet  HWaddr 00:15:5D:96:09:06  
          inet addr:172.31.3.73  Bcast:172.31.255.255  Mask:255.255.0.0
          inet6 addr: fe80::215:5dff:fe96:906/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:32786580 errors:0 dropped:0 overruns:0 frame:0
          TX packets:26763628 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4332103279 (4.0 GiB)  TX bytes:6853811204 (6.3 GiB)
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:13636923 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13636923 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:3672136931 (3.4 GiB)  TX bytes:3672136931 (3.4 GiB)
[root@localhost ~]# ifconfig | grep 'inet addr'
          inet addr:172.31.3.73  Bcast:172.31.255.255  Mask:255.255.0.0
          inet addr:127.0.0.1  Mask:255.0.0.0
You have mail in /var/spool/mail/root
[root@localhost ~]# ifconfig | grep 'inet addr' | cut -d: -f2
172.31.3.73  Bcast
127.0.0.1  Mask
[root@localhost ~]# ifconfig | grep 'inet addr' | cut -d: -f2 | cut -d' ' -f1
172.31.3.73
127.0.0.1

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

[root@localhost etc]# ll /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf
[root@localhost etc]# cat /tmp/etc.conf 
-RW-R--R--. 1 ROOT ROOT   391  5月 20 2009 /ETC/ANT.CONF
-RW-R--R--. 1 ROOT ROOT   148  5月 15 2009 /ETC/ASOUND.CONF
-RW-------. 1 ROOT ROOT   232 12月  8 2011 /ETC/AUTOFS_LDAP_AUTH.CONF
-RW-R--R--. 1 ROOT ROOT  1780 10月 16 2009 /ETC/CAS.CONF
-RW-R--R--. 1 ROOT ROOT   812  9月 24 2011 /ETC/CGCONFIG.CONF
-RW-R--R--. 1 ROOT ROOT  1705  9月 24 2011 /ETC/CGRULES.CONF
……

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

[root@localhost etc]# ls /var | wc -l      \\文件夾個數
23
[root@localhost etc]# ls -l /var | wc -l   \\文件夾及文件個數
24

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

[root@localhost etc]# cat /etc/group | sort -n -t':' -k3 | head -10
root:x:0:root,imobii_mngsvr,exmobi,waiqin365_zkagent,waiqin365_cisvr,waiqin365_swapsvr
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
tty:x:5:
disk:x:6:root,iorder_appsvr
lp:x:7:daemon,lp
mem:x:8:
kmem:x:9:
[root@localhost etc]# cat /etc/group | sort -n -t':' -k3 | 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 etc]# cat /etc/{fstab,issue} > /tmp/etc.test
[root@localhost etc]# cat /tmp/etc.test 
#
# /etc/fstab
# Created by anaconda on Sat Jul 28 04:49:45 2012
#
# 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
#
UUID=9ad37bb1-8635-44c8-93e5-3d92c6284300 /                       ext4    defaults        1 1
UUID=382ac087-c798-42e5-b780-b12b58aab6bf /boot                   ext4    defaults        1 2
UUID=64f637b9-5744-419e-9863-e1c0b12d4af9 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.2 (Final)
Kernel \r on an \m

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
   (1)、創建組distro,其GID為2016;

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

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

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

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

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

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

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

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

[root@localhost etc]# userdel mandriva

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

[root@localhost etc]# useradd -u 2002 -g distro -G peguin slackware
useradd: group 'peguin' does not exist
You have mail in /var/spool/mail/root
[root@localhost etc]# groupadd peguin
[root@localhost etc]# useradd -u 2002 -g distro -G peguin slackware
[root@localhost etc]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin)

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

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

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

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

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

[root@localhost ~]# echo "santi" | passwd --stdin slackware
更改用戶 slackware 的密碼 。
passwd: 所有的身份驗證令牌已經成功更新。
[root@localhost ~]# chage -m 3 -M 180 -W 3 slackware
[root@localhost ~]# chage -l slackware
Last password change                                    : Jul 26, 2016
Password expires                                        : Jan 22, 2017
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 3
Maximum number of days between password change          : 180
Number of days of warning before password expires       : 3

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

[root@localhost ~]# groupadd clouds
[root@localhost ~]# groupadd nova
[root@localhost ~]# useradd -u 3003 -g clouds -G peguin,nova openstack
[root@localhost ~]# id openstack
uid=3003(openstack) gid=2019(clouds) 組=2019(clouds),2017(peguin),2020(nova)

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

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

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

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

用戶:
創建用戶:
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

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

(0)
365365
上一篇 2016-07-27
下一篇 2016-07-27

相關推薦

  • Linux中Vim編輯器的使用

    Linux中Vim編輯器的使用 Vim功能介紹 vim是一款功能豐富而強大的文本編輯器,支持語法高亮,支持多窗口編輯,是vi文本編輯器的增強版。如果在CentOS7.2中如果是選擇最小化安裝,其默認是沒有安裝vim rpm包的,需要自行安裝,可以使用yum工具進行在線安裝。  vim至今已經走過了25個春秋,現在8.0版的已經發布了。  …

    Linux干貨 2016-12-02
  • 8.8作業

    4、如何設置tab縮進為4個字符?    set tabstop=4     5、復制/etc/rc.d/init.d/functions文件至/tmp目錄;替換/tmp/functions文件中的/etc/sysconfig/init為/var/log; cp /etc/rc.d/init.d/functi…

    Linux干貨 2016-08-11
  • 條件選擇if語句

    單分支的if語句 if 判斷條件; then 條件為真的分支代碼 fi       單分支if結構的執行流程:首先判斷條件測試操作的結果,如果返回值為0表示條件成立,則執行then后面的命令序列,一直到遇見fi為止表示結束,繼續執行其他腳本代碼;如果返回不為0,則忽略then后面的命令序列,直接跳至fi行以后執行其他腳…

    Linux干貨 2016-08-16
  • 集中練習8-bash腳本及系統啟動

    集中練習8-bash腳本及系統啟動

    2017-12-06
  • rpm包管理

    rpm包管理 由于 RPM 是透過預先編譯打包成為 RPM 文件格式后,再加以安裝的一種方式,還能夠進行數據庫的記載。 所以 RPM 有以下的優點: RPM 內含已經編譯過的程序與配置文件等數據,可以讓用戶免除重新編譯的困擾; RPM 在被安裝前,會先檢查系統的硬盤容量、操作系統版本等,可避免檔案被錯誤安裝; RPM 檔案本身提供軟件版本信息、相依屬性軟件名…

    Linux干貨 2016-08-21
  • 源碼包編譯安裝

    程序包編譯安裝:      Application-VERSION-release.src.rpm–> 安裝后,使用rpmbuild命令制作成二進制格式的rpm包,而后再安裝      源代碼 –> 預處理 –> 編譯 &#8…

    Linux干貨 2016-08-23

評論列表(1條)

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

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

欧美性久久久久