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

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

cp -a /etc/skel/ /home/tuser1

chmod -R 700 /home/tuser1/ 

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

echo "hadoop:x:2016" >> /etc/group

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

echo "hadoop:x:2016:2016::/home/hadoop:/bin/bash" >> /etc/passwd

mkdir -pv /home/hadoop

cp -r /etc/skel/.bash* /home/hadoop/

chown -R hadoop:hadoop /home/hadoop/

chmod -R 700 /home/hadoop/

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

cp -a /etc/skel/ /home/hadoop

chmod -R 700 /home/hadoop/ 

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

chown -R hadoop:hadoop /home/hadoop

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

法一:egrep -i "s" /proc/meminfo

法二:sed -n '/^[Ss].*/p' /proc/meminfo

法三:awk '/^[sS].*/{print $0}' /proc/meminfo

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

法一:grep -v "/sbin/nologin" /etc/passwd

法二:awk '!/\/sbin\/nologin/{print $0}' /etc/passwd

法三:sed -n '/\/sbin\/nologin/!p' /etc/passwd

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

法一:grep "/bin/bash" /etc/passwd

法二:sed -n '/\/bin\/bash/p' /etc/passwd

法三:awk '/\/bin\/bash/{print $0}' /etc/passwd

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

egrep -o "[0-9][0-9]|[0-9]" /etc/passwd

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

egrep ^[[:space:]]+ /boot/grub/grub.conf

grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf

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

egrep "^#[[:space:]]+[^[:space:]]{1,}" /etc/rc.d/rc.sysinit

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

netstat -tan|grep "LISTEN[[:space:]]\+$"

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

useradd bash

useradd testbash

useradd basher

useradd nologin -s /sbin/nologin

egrep '^(\<.*\>).*\1$' /etc/passwd  #\<.*\>表示锚定第一个单词

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

(0)
N21_Ross_GellerN21_Ross_Geller
上一篇 2016-08-05 16:15
下一篇 2016-08-05 16:15

相关推荐

  • 编译安装bind9

    一、下载bind9.9.5源码包     可以通过www.isc.org站点来获得源码包。 二、将源码包解压到任意目录     源码包通常都是.tar.gz文件,因此我们需要先将其解压: 三、编译安装bind     1、安装前的准备工作 …

    Linux干货 2015-05-05
  • 你收到来自一个来自noob的blog,请注意查收~

                  本人较为懒,部分内容为直接cp,勿怪                 图片借鉴余知乎某位深藏不漏的用户 关于ls命令输出结果的详解:     1 如何知道自己当前…

    2017-09-03
  • 开源堡垒机-01-JumpServer的安装

    前段时间曾经用过JumpServer帮助一个客户完成了他的关于堡垒机的需求,由于当时赶进度,没来得及将整个过程记录和完善,现在抽时间慢慢整理下。 1)JumpServer的介绍 Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。 支持常见系统: Cent…

    Linux干货 2016-07-22
  • centos 7 修改sshd服务默认端口号

    由于最近sshd服务默认端口号22被匿名进行试探性的进行登入,为防止匿名用户再次进行试探性的登入,将sshd服务的默认端口号进行修改。 环境:centos 7.3  xshell 思路:先将sshd的被指文件进行修改,把sshd服务的默认端口号修改为所需要的端口号,然后重启sshd服务,发现重启报错。找其原因是应为selinux不允许自定义sshd…

    Linux干货 2017-04-06
  • Linux中的包管理

    1. RPM介绍 rpm是linux中的包管理软件,通过rpm用户可以对rpm包进行查询、安装、卸载、升级和校验等操作。 1.1 查询 查询 -q:可以查看某个包是否已经安装 -qa:查看系统已经安装的所有包 -qi:查询某个安装包的详细情况 -ql:查询安装某个包之后会生成哪些文件 -qc:查询某个软件的配置文件 -qd:查询某个软件的所有文档 &#821…

    Linux干货 2017-04-17
  • shell脚本练习题

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信 息,包括主机名,IPv4地址,操作系统版本,内核版本, CPU型号,内存大小,硬盘大小。 #!/bin/bash ##编写脚本/root/bin/systeminfo.sh,显示当前主机系统信 息,包括主机名,IPv4地址,操作系统版本,内>核版本, C…

    Linux干货 2016-08-24

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-05 16:59

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