网络班第四周
1.统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来
[root@centos7 ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin dbus:x:81:81:System message bus:/:/sbin/nologin polkitd:x:999:998:User for polkitd:/:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin wukui:x:1000:1000:wukui:/home/wukui:/bin/bash mageia:x:1100:1100::/home/linux:/bin/bash slackware:x:2002:2019::/home/slackware:/sbin/nologin user1:x:2003:2003::/home/user1:/bin/bash user2:x:2004:2004::/home/user2:/bin/bash user3:x:2005:2005::/home/user3:/bin/bash [root@centos7 ~]# cat /etc/passwd | grep -v '/sbin/nologin' root:x:0:0:root:/root:/bin/bash sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt wukui:x:1000:1000:wukui:/home/wukui:/bin/bash mageia:x:1100:1100::/home/linux:/bin/bash user1:x:2003:2003::/home/user1:/bin/bash user2:x:2004:2004::/home/user2:/bin/bash user3:x:2005:2005::/home/user3:/bin/bash [root@centos7 ~]# cat /etc/passwd | grep -v '/sbin/nologin' | wc -l 9 [root@centos7 ~]# cat /etc/passwd | grep -v '/sbin/nologin' | cut -d: -f1 root sync shutdown halt wukui mageia user1 user2 user3 [root@centos7 ~]#
2.查出用户UID最大值的用户名、UID及shell类型
[root@centos7 ~]# cat /etc/passwd | cut -d: -f1,3,7 root:0:/bin/bash bin:1:/sbin/nologin daemon:2:/sbin/nologin adm:3:/sbin/nologin lp:4:/sbin/nologin sync:5:/bin/sync shutdown:6:/sbin/shutdown halt:7:/sbin/halt mail:8:/sbin/nologin operator:11:/sbin/nologin games:12:/sbin/nologin ftp:14:/sbin/nologin nobody:99:/sbin/nologin systemd-network:192:/sbin/nologin dbus:81:/sbin/nologin polkitd:999:/sbin/nologin sshd:74:/sbin/nologin postfix:89:/sbin/nologin wukui:1000:/bin/bash mageia:1100:/bin/bash slackware:2002:/sbin/nologin user1:2003:/bin/bash user2:2004:/bin/bash user3:2005:/bin/bash [root@centos7 ~]# cat /etc/passwd | cut -d: -f1,3,7 | sort -t: -k2 -n root:0:/bin/bash bin:1:/sbin/nologin daemon:2:/sbin/nologin adm:3:/sbin/nologin lp:4:/sbin/nologin sync:5:/bin/sync shutdown:6:/sbin/shutdown halt:7:/sbin/halt mail:8:/sbin/nologin operator:11:/sbin/nologin games:12:/sbin/nologin ftp:14:/sbin/nologin sshd:74:/sbin/nologin dbus:81:/sbin/nologin postfix:89:/sbin/nologin nobody:99:/sbin/nologin systemd-network:192:/sbin/nologin polkitd:999:/sbin/nologin wukui:1000:/bin/bash mageia:1100:/bin/bash slackware:2002:/sbin/nologin user1:2003:/bin/bash user2:2004:/bin/bash user3:2005:/bin/bash [root@centos7 ~]# cat /etc/passwd | cut -d: -f1,3,7 | sort -t: -k2 -n | tail -1 user3:2005:/bin/bash [root@centos7 ~]#
3.统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序
方法一
[root@centos7 ~]# [root@centos7 ~]# netstat -tn Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 10.0.0.10:22 10.0.0.1:6841 ESTABLISHED tcp 0 0 10.0.0.10:22 10.0.0.1:6843 ESTABLISHED tcp 0 36 10.0.0.10:22 10.0.0.1:3967 ESTABLISHED tcp 0 0 10.0.0.10:22 10.0.0.1:6866 ESTABLISHED tcp 0 0 10.0.0.10:22 10.0.0.1:6863 ESTABLISHED tcp 0 0 10.0.0.10:22 10.0.0.1:6857 ESTABLISHED tcp 0 0 10.0.0.10:22 10.0.0.1:6865 ESTABLISHED [root@centos7 ~]# netstat -tn | grep ^t | tr -s ' ' | tr ' ' : | cut -d: -f6 | uniq -c |sort -rn 7 10.0.0.1 [root@centos7 ~]#
方法二
[root@centos7 ~]# ss -tn State Recv-Q Send-Q Local Address:Port Peer Address:Port ESTAB 0 0 10.0.0.10:22 10.0.0.1:6841 ESTAB 0 0 10.0.0.10:22 10.0.0.1:6843 ESTAB 0 36 10.0.0.10:22 10.0.0.1:3967 ESTAB 0 0 10.0.0.10:22 10.0.0.1:6866 ESTAB 0 0 10.0.0.10:22 10.0.0.1:6863 ESTAB 0 0 10.0.0.10:22 10.0.0.1:6857 ESTAB 0 0 10.0.0.10:22 10.0.0.1:6865 [root@centos7 ~]# ss -tn | grep ^E | tr -s ' ' | tr ' ' : | cut -d: -f6 | uniq -c |sort -rn 7 10.0.0.1
方法三
[root@centos7 ~]# [root@centos7 ~]# w -h root pts/0 10.0.0.1 13:54 1.00s 0.51s 0.00s w -h root pts/2 10.0.0.1 15:36 1:14m 0.00s 0.00s -bash root pts/3 10.0.0.1 15:36 1:12m 0.01s 0.01s -bash root pts/4 10.0.0.1 15:37 1:13m 0.01s 0.01s -bash root pts/5 10.0.0.1 15:37 1:13m 0.00s 0.00s -bash root pts/6 10.0.0.1 15:37 1:13m 0.01s 0.01s -bash root pts/7 10.0.0.1 15:37 1:13m 0.01s 0.01s -bash [root@centos7 ~]# w -h | tr -s ' ' | cut -d' ' -f3 | uniq -c | sort -nr 7 10.0.0.1 [root@centos7 ~]#
4.编写脚本disk.sh,显示当前硬盘分区中空间利用率最大的值
[root@centos7 ~]# [root@centos7 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on devtmpfs 920764 0 920764 0% /dev tmpfs 931516 0 931516 0% /dev/shm tmpfs 931516 9892 921624 2% /run tmpfs 931516 0 931516 0% /sys/fs/cgroup /dev/sda2 104806400 1473260 103333140 2% / /dev/sda5 52403200 33000 52370200 1% /data /dev/sda1 1038336 145088 893248 14% /boot tmpfs 186304 0 186304 0% /run/user/0 [root@centos7 ~]# cat /data/disk.sh #!/bin/bash #************************************************************************************** #Author: N51045 #Date : 2020-12-16 #File name : /data/disk.sh #************************************************************************************** BEGIN="\e[1;35m" END="\e[0m" DISKSPACE=`df -h | grep "/dev/sd" | tr -s " " % | cut -d% -f5 | sort -nr | head -1` echo -e "${BEGIN}mdisk space max is ${DISKSPACE}${END}" [root@centos7 ~]# bash /data/disk.sh mdisk space max is 14 [root@centos7 ~]#
5.编写脚本 systeminfo.sh,显示当前主机系统信息,包括:主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小
[root@centos7 ~]# [root@centos7 ~]# cat /data/systeminfo.sh #!/bin/bash #************************************************************************************** #Author: N51045 #Date : 2020-12-16 #File name : /data/systeminfo.sh #************************************************************************************** RED="\e[1;31m" GREEN="echo -e \e[1;32m" END="\e[0m" $GREEN-----------------------Host Systeminfo----------------------------$END echo -e "HOSTNAME: $RED `hostname` $END" echo -e "IPADDR: $RED `hostname -I` $END" echo -e "OVERSION: $RED `cat /etc/redhat-release|tr -s " " _` $END" echo -e "KERNEL: $RED `uname -r` $END" echo -e "CPU: $RED `lscpu | grep "Model name" |tr -s " "|cut -d: -f2|tr -s " " _ |grep -Eo [[:alpha:]].*` $END" echo -e "MEMORY: $RED `free -h| grep "Mem" |tr -s " " :|cut -d: -f2` $END" echo -e "DISK: $RED `lsblk | grep '^sd' | tr -s " " | cut -d" " -f4` $END" $GREEN------------------------------------------------------------------$END [root@centos7 ~]# bash /data/systeminfo.sh | column -t -----------------------Host Systeminfo---------------------------- HOSTNAME: centos7 IPADDR: 10.0.0.10 OVERSION: CentOS_Linux_release_7.8.2003_(Core) KERNEL: 3.10.0-1127.el7.x86_64 CPU: Intel(R)_Core(TM)_i5-1035G1_CPU_@_1.00GHz MEMORY: 1.8G DISK: 200G ------------------------------------------------------------------ [root@centos7 ~]#
6.20分钟内通关vimtutor
[root@centos7 ~]# vimtutor zh
按照提示练习。