Linux学习博客4

复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限

~]# mkdir /home/tuser1
~]# cp -a /etc/skel/. /home/tuser1
~]# chmod -R go= /home/tuser1
~]# ll -a /home/tuser1
total 16
d-wx------.  2 root root  76 Dec  5 15:49 .
drwxr-xr-x. 10 root root 117 Dec 23 16:49 ..
-rw-------.  1 root root  18 Aug  3 05:11 .bash_logout
-rw-------.  1 root root 193 Aug  3 05:11 .bash_profile
-rw-------.  1 root root 231 Aug  3 05:11 .bashrc
-rw-------.  1 root root 658 Aug  2 18:51 .zshrc

编辑/etc/group文件,添加组hadoop

~]# vim /etc/group
hadoop:x:1008:

手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop

~]# vim /etc/passwd
hadoop:x:1008:1008::/home/hadoop:/bin/bash

复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限

~]# mkdir /home/hadoop
~]# cp -a /etc/skel/. /home/hadoop
~]# chmod -R go= /home/hadoop

修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop

~]# chown -R hadoop:hadoop /home/hadoop
~]# ll -a /home/hadoop
total 16
drwx------.  2 hadoop hadoop  76 Dec  5 15:49 .
drwxr-xr-x. 11 root   root   131 Dec 23 17:52 ..
-rw-------.  1 hadoop hadoop  18 Aug  3 05:11 .bash_logout
-rw-------.  1 hadoop hadoop 193 Aug  3 05:11 .bash_profile
-rw-------.  1 hadoop hadoop 231 Aug  3 05:11 .bashrc
-rw-------.  1 hadoop hadoop 658 Aug  2 18:51 .zshrc

显示/proc/meminfo文件中以大写或小写S开头的行

方法1
~]# grep "^[Ss]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       8257532 kB
SwapFree:        8257532 kB
Shmem:              8768 kB
Slab:              92676 kB
SReclaimable:      44692 kB
SUnreclaim:        47984 kB

方法2
~]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       8257532 kB
SwapFree:        8257532 kB
Shmem:              8768 kB
Slab:              92776 kB
SReclaimable:      44716 kB
SUnreclaim:        48060 kB

显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户

~]# grep "/sbin/nologin$" /etc/passwd | cut -d":" -f1,7
bin:/sbin/nologin
daemon:/sbin/nologin
adm:/sbin/nologin
lp:/sbin/nologin
mail:/sbin/nologin
operator:/sbin/nologin
games:/sbin/nologin
ftp:/sbin/nologin
nobody:/sbin/nologin
systemd-network:/sbin/nologin
dbus:/sbin/nologin
polkitd:/sbin/nologin
postfix:/sbin/nologin
sshd:/sbin/nologin
chrony:/sbin/nologin
mariadb:/sbin/nologin
tss:/sbin/nologin
saslauth:/sbin/nologin

显示/etc/passwd文件中其默认shell为/bin/bash的用户

~]# grep "/bin/bash$" /etc/passwd | cut -d":" -f1,7
root:/bin/bash
gentoo:/bin/bash
centos:/bin/bash
archlinux:/bin/bash
mageia:/bin/bash
hadoop:/bin/bash

找出/etc/passwd文件中的一位数或两位数

~]# grep -oE "(\<[0-9]\>|\<[1-9][0-9]\>)" /etc/passwd
0
0
1
1
2
2
3
4
4
7
5
0
6
0
7
0
8
12
11
0
12
14
50
99
99
81
81
89
89
74
74
59
59
76

显示/boot/grub2/grub.cfg中以至少一个空白字符开头的行

~]# grep "^[[:space:]]\+" /boot/grub2/grub.cfg

显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行

~]# grep "^#[[:space:]]\+[^[:space:]]\+" /etc/rc.d/rc.sysinit

打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行

~]# netstat -tan | grep "LISTEN[[:space:]]*$"
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN

添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息

~]# useradd bash
~]# useradd testbash
~]# useradd basher
~]# useradd -s /sbin/nologin nologin
~]# grep "^\(\<[^[:space:]]\+\>\).*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:2003:2003::/home/bash:/bin/bash
nologin:x:2006:2006::/home/nologin:/sbin/nologin

你可能感兴趣的:(Linux学习博客4)