1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。
[root@localhost /]# who | cut -d ‘ ‘ -f 1 | sort -u
root
user1
或:
[root@localhost /]# who | cut -d ‘ ‘ -f 1 | sort | uniq
root
user1
2、取出最后登錄到當前系統的用戶的相關信息。
[root@localhost /]# last | head -1
root pts/3 192.168.31.141 Thu Feb 23 22:01 still logged in
3、取出當前系統上被用戶當作其默認shell的最多的那個shell。
[root@localhost ~]# cat /etc/passwd | cut -d : -f 7 | cut -d / -f 3 | sort | uniq -c | sort -n -r | head -1
38 nologin
#這個應該算是登錄shell環境吧。。。不登錄嘛。
4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。
[root@localhost ~]# cat /etc/passwd | sort -t : -k 3 -n | tail -10 | tr ‘a-z’ ‘A-Z’ >> /tmp/maxuser.txt
[root@localhost ~]# cat /tmp/maxuser.txt
SASLAUTH:X:994:76:SASLAUTHD USER:/RUN/SASLAUTHD:/SBIN/NOLOGIN
COLORD:X:995:993:USER FOR COLORD:/VAR/LIB/COLORD:/SBIN/NOLOGIN
LIBSTORAGEMGMT:X:996:994:DAEMON ACCOUNT FOR LIBSTORAGEMGMT:/VAR/RUN/LSM:/SBIN/NOLOGIN
UNBOUND:X:997:995:UNBOUND DNS RESOLVER:/ETC/UNBOUND:/SBIN/NOLOGIN
POLKITD:X:998:997:USER FOR POLKITD:/:/SBIN/NOLOGIN
SYSTEMD-BUS-PROXY:X:999:998:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN
BINBIN:X:1000:1000:BINBIN:/HOME/BINBIN:/BIN/BASH
USER1:X:1001:1001:USER1,CN,(011)-66668888:/HOME/USER1:/BIN/BASH
HADOOP:X:1002:1002::/HOME/HADOOP:/BIN/BASH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
[root@localhost ~]# ifconfig | grep inet[[:space:]]
inet 192.168.31.2 netmask 255.255.255.0 broadcast 192.168.31.255
inet 127.0.0.1 netmask 255.0.0.0
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
[root@localhost ~]# ls -ld /etc/*.conf | cut -d / -f 3 | tr ‘a-z’ ‘A-Z’ >> /tmp/etc.conf
[root@localhost ~]# head -5 /tmp/etc.conf
ASOUND.CONF
AUTOFS.CONF
AUTOFS_LDAP_AUTH.CONF
BRLTTY.CONF
CGCONFIG.CONF
7、顯示/var目錄下一級子目錄或文件的總個數。
[root@localhost ~]# tree -L 1 /var | wc -l
25
8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
[root@localhost ~]# cat /etc/group | sort -t : -k 3 | head -10
root:x:0:
bin:x:1:
users:x:100:
binbin:x:1000:
user1:x:1001:
hadoop:x:1002:
qemu:x:107:
wheel:x:10:binbin
cdrom:x:11:
usbmuxd:x:113:
9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。
[root@localhost ~]# cat /etc/fstab /etc/issue >> /tmp/etc.test
[root@localhost ~]# wc -l /etc/fstab
11 /etc/fstab
[root@localhost ~]# wc -l /etc/issue
3 /etc/issue
[root@localhost ~]# wc -l /tmp/etc.test
14 /tmp/etc.test
10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
(1)、創建組distro,其GID為2016;
[root@localhost ~]# groupadd -g 2016 distro
[root@localhost ~]# tail -1 /etc/group
distro:x:2016:
(2)、創建用戶mandriva, 其ID號為1005;基本組為distro;
[root@localhost ~]# useradd -g 2016 -u 1005 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 ~]# id mageia
uid=1100(mageia) gid=1100(mageia) 組=1100(mageia)
[root@localhost ~]# ll /home/ | grep linux
drwx——. 3 mageia mageia 78 2月 24 10:44 linux
(4)、給用戶mageia添加密碼,密碼為mageedu;
[root@localhost ~]# echo “mageedu” | passwd –stdin mageia
更改用戶 mageia 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
(5)、刪除mandriva,但保留其家目錄;
[root@localhost ~]# userdel mandriva
[root@localhost ~]# ll -a /home/mandriva/
總用量 12
drwx——. 3 1005 distro 78 2月 24 10:06 .
drwxr-xr-x. 7 root root 76 2月 24 10:07 ..
-rw-r–r–. 1 1005 distro 18 8月 3 2016 .bash_logout
-rw-r–r–. 1 1005 distro 193 8月 3 2016 .bash_profile
-rw-r–r–. 1 1005 distro 231 8月 3 2016 .bashrc
drwxr-xr-x. 4 1005 distro 39 2月 12 01:34 .mozilla
(6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
[root@localhost ~]# grouadd peguin
[root@localhost ~]# useradd -u 2002 -g distro -aG peguin slackware
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) 組=2016(distro),2017(peguin)
(7)、修改slackware的默認shell為/bin/tcsh;
[root@localhost ~]# usermod -s /bin/tcsh slackware
[root@localhost ~]# su – slackware
[slackware@localhost ~]$ echo ${SHELL}
/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 ~]# passwd -n 3 -x 180 -w 3 slackware
調整用戶密碼老化數據slackware。
passwd: 操作成功
[root@localhost ~]# tail -1 /etc/shadow
slackware:!!:17221:3:180: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 -r mysql -s /bin/nologin
[root@localhost ~]# tail -1 /etc/passwd
mysql:x:988:983::/home/mysql:/bin/nologin
(12)、使用echo命令,非交互式為openstack添加密碼。
root@localhost ~]# echo “redhat” | passwd –stdin openstack
更改用戶 openstack 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
原創文章,作者:anhui-binbin,如若轉載,請注明出處:http://www.www58058.com/69922
寫的不錯