[作业] 马哥2016全新Linux+Python高端运维班第四周作业

时间:2021-07-05 17:20:36

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


# [[ -e /etc/skel ]] || [[ -d /etc/skel ]] && cp -rp /etc/skel /home/tuser1 && chmod -R go-r /home/tuser1


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


# echo "hadoop:x:$[$(awk -F: '{print $3}' /etc/group|sort -n|tail -1) + 1]" >> /etc/group


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


# gid=$(grep hadoop /etc/group | cut -d: -f3) && echo -e "hadoop:x:$gid:$gid::/home/hadoop:/bin/bash" >> /etc/passwd && echo -e "hadoop:*:16231:0:99999:7:::" >> /etc/shadow


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


# [[ -e /etc/skel ]] || [[ -d /etc/skel ]] && cp -rp /etc/skel /home/hadoop && chmod go-r /home/hadoop


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


# chown -R hadoop:hadoop /home/hadoop


6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;


# awk '/^[Ss]/' /proc/meminfo
# grep "^[Ss]" /proc/meminfo# sed -n '/^[Ss]/p' /proc/meminfo


7、显示/etc/passw d文件中其默认shell为非/sbin/nologin的用户;


# grep -v "/sbin/nologin" /etc/passwd|cut -d: -f1


8、显示/etc/passw d文件中其默认shell为/bin/bash的用户;


# grep "/sbin/nologin" /etc/passwd|cut -d: -f1


9、找出/etc/passw d文件中的一位数或两位数;


# grep -E -o '\<[0-9]{1,2}\>' /etc/passwd


10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;


# grep -E '^\s' /boot/grub/grub.conf


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


# grep -E "^#[[:space:]]*\S" /etc/rc.d/rc.sysinit


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


# netstat -tan| grep -E "LISTEN[[:space:]]{0,1}$"


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

#  for user in bash testbash basher nologin;do useradd $user;done && chsh -s /sbin/nologin nologin && grep "^\([[:alnum:]]\+\>\).*\1$" /etc/passwd