马哥教育网络班21期-第四周课程练习

Do one thing at a time,and do well.

小僧近期忙的去尿尿的时间都要挤出来…..! 无人能理解 zZzz


复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。
编辑/etc/group文件,添加组hadoop。
手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。
复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。
修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。
显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;
显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;
显示/etc/passwd文件中其默认shell为/bin/bash的用户;
找出/etc/passwd文件中的一位数或两位数;
显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;
打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;
添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;
显示/proc/meminfo文件中以大写或小写S开头的行;用三种方式;
显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;
显示/etc/passwd文件中其默认shell为/bin/bash的用户;
找出/etc/passwd文件中的一位数或两位数;

咱现在就练习脚本,检查老师请费眼瞅瞅

#!/bin/bash
#
# 博客作业:第4周
# 2016-07-22
# 勇爷出品,如有类似,请联系rainset@gmail.com
#
if [ `id -u` -eq 0 ]; then
	echo "只为完成作业任务,不做目录存在等判断"
else
	echo "需要使用ROOT用户执行"
	exit 2
fi
#1
cp -a /etc/skel /home/tuser1 && chmod -R 700 /home/tuser1
#2
echo "hadoop:x:1001" >> /etc/group
#3
echo "hadoop:x:2000:2000::/home/hadoop:/bin/bash" >> /etc/passwd
#4
cp -a /etc/skel /home/hadoop && chmod -R 700 /home/hadoop
#5
chown -R hadoop.hadoop /home/hadoop
#6
echo "grep -i :"
grep -i "^s" /proc/meminfo
echo "grep ^[Ss]"
grep "^[Ss]" /proc /meminfo
#7
grep -v "/sbin/nologin$" /etc/passwd | cut -d: -f1
#8
grep "/bin/bash$" /etc/passwd | cut -d: -f1
#9
grep "\<[0-9]\{1,2\}\>" /etc/passwd
#10
grep "^[[:space:]]\+" /boot/grub/grub.conf
#11
grep "^[[:space:]]\+[^[:space:]]" /etc/rc.d/rc.sysinit
#12
netstat -tan | grep "LISTEN[[:space:]]*$"
#13
for i in {bash,testbash,basher,nologin}; do
	id $i &>/dev/null
	if [ $i -eq 0 ]; then
		echo "$i exist"
	elif [ $i -eq nologin ] ; then
		useradd $i -s /sbin/nologin
	else
		useradd $i
	fi
done
grep "^\([[:alnum:]]\+\).*\1$" /etc/passwd
#14
echo "其中两种方法看第6题"
echo "grep -E"
grep -E "^(s|S)" /proc/meminfo
#15
echo "题重"
#17
echo "题重"


THK

每次都有一点进步!!! 马主持的护法都是"言而无信"的人。

END

.

.

原创文章,作者:勇爷,如若转载,请注明出处:http://www.178linux.com/24366

赞 (0)
勇爷勇爷
上一篇 2016-07-29 15:27
下一篇 2016-07-29 15:27

相关推荐

  • Hadoop hdfs分布式文件系统

    一、MapReduce理论基础 每个MapReduce job都是Hadoop客户端想要执行的一个工作单元,它一般由输入数据、MapReduce程序和配置信息组成,而Hadoop会把每个job分隔成两类任务(task):map任务和reduce任务。在Hadoop集群中有两类节点来执行两类job进程的执行 1.1 大数据处理 任何基础业务包含了收集、分析、监…

    2017-12-08
  • 初学Linux之用户、组和权限

    1、用户和组管理命令 
    2、理解文件权限和默认权限 
    3、设置文件权限
    4、特殊权限 
    5、ACL

    2017-12-08
  • 软件包管理rpm和yum基本使用

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,…

    Linux干货 2016-08-29
  • 双网卡绑定及单网卡多IP地址实现方法

    Bonding就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。mode=1(active-backup):一个网卡处于活动状态 ,一个处于备份状态,所有流量都在主链路上处理。当活动网卡down掉时,启用备份…

    Linux干货 2016-09-05
  • bash脚本编程实例

    bash脚本编程实例 1.写一个脚本 接受一个以上文件路径作为参数 显示每个文件拥有的行数 总结说明本次共为几个文件统计了其行数 #!/bin/bash # read -p “please input some paths:” paths if [ -z $paths ];then echo “There are not any paths inputtin…

    Linux干货 2017-08-14
  • Awk 高级应用

                              Awk 简介   Awk 是一种变成语言,用于在Linux/UNIX下对文本和数据进行扫描与处理,数据可以来自标准输入,文件 ,管道。Awk分别代表其作者的姓…

    2017-07-17

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-29 15:44

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