第四周作业

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

答:

    复制目录:cp -R /etc/skel /home/tuser1

    修改权限:chmod -R go=- /home/tuser1


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

答:

    vim /etc/group

    在最后一行,新增 "hadoop:x:1001:",然后:wq保存退出


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

答:

    vim /etc/passwd

在最后一行,新增“hadoop:X:1001:1001::/home/hadoop:/bin/bash”,然后:wq保存退出


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

答:

    复制文件:cp -R /etc/skel /home/hadoop

    修改权限:chmod -R go=- /home/hadoop


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

答:

    chown -R hadoop:hadoop /home/hadoop


6、显示/proc/meminfo文件中以大写或小写s开头的行,用三种方式。######

答:

    方法一、grep -i "^s" /proc/meminfo

    方法二、grep "^[sS]" /proc/meminfo

    方法三、grep -E "^(s|S)" /proc/meminfo


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

答:

    grep [^/sbin/nologin]$ /etc/passwd


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

答:

    grep /bin/bash$ /etc/passwd


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

答:

    grep ":[0-9]\{1,2\}:" /etc/passwd


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

答:

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

    grep -E "^[[:space:]]+" /boot/grub/grub.conf

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


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

答:

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

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

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


12、打出netstat -tan命令执行结果中以“Listen”,后或跟空白字符结尾的行。

答:

    netstat -tan | grep "Listen[[:space:]]\{0,\}$"

    netstat -tan | grep "Listen[[:space:]]*$"


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

答:

    步骤一:创建用户

     useradd bash

     useradd testbash

     useradd basher

     useradd -s /sbin/nologin nologin

    

    步骤二:创建一个shell script文件


#!/bin/bash

#

if [ -e /tmp/username.txt ];then

  rm -f /tmp/username.txt

  cut -d: -f1 /etc/passwd > /tmp/username.txt

else

  cut -d: -f1 /etc/passwd > /tmp/username.txt

fi


for User_Name in $(cat /tmp/username.txt)

  do

    grep "^\($User_Name\):.*\1$" /etc/passwd

  done

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

(0)
N24_shishenN24_shishen
上一篇 2016-12-07 16:28
下一篇 2016-12-07 20:36

相关推荐

  • JoSQL内存数据库远程代码执行漏洞(含EXP)

    JoSQL全称SQL for Java Objects,提供了应用SQL语句的Java对象的集合的能力开发,JoSQL提供了搜索,排序,group等对Java对象的集合进行类似SQL的查询应该应用的功能。 例如,查找所有在2004年内修改过的html文件: SELECT * FROM   java.io.File WH…

    Linux干货 2015-03-06
  • shell 脚本编程基础

    Shell脚本简介: Shell脚本是一种特殊的程序,它是用户与linux系统内核之间的一个接口,shell是一个工具程序,在用户登录后系统启动。它解释并运行由命令行或脚本文件输入的命令,从而实现用户与内核间的交互。 Shell脚本:也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的,是利用shell的功…

    Linux干货 2016-08-21
  • CentOS 系统启动流程[转载]

    Linux(CentOS)系统启动过程大致按照如下顺序: POST –> BootSequence(BIOS) –>Bootloader(MBR) –>Kernel(ramdisk)–>rootfs(readonly)–>switchroot–>/sb…

    Linux干货 2017-01-28
  • Linux boot分区意外格式化或清除之后…

    boot分区在没有备份的情况下意外被清空,包括启动引导信息也没了。这时若Linux还在运行,那你是幸运的, 修复的方法: 1. cat  /etc/*release      #赶快先确定当前系统的具体版本。有ISO镜像赶快挂载上来.   &nbsp…

    Linux干货 2016-03-22
  • 查找find及压缩与解压

    find  根据时间戳:以“天”为单位;              -atime [+|-]#,                #: [#,#+1)   2 那就是大于等于二天小于…

    2017-08-12
  • vsftp通过pam_mysql做虚拟用户认证

    vsftpd可以通过三种账户登录系统: 系统账户:系统本地账户登录系统,默认进入的目录是用户家目录,可以在所有有权限的路径切换; 匿名账户:匿名用户登录,然后映射为一个本地用户; 虚拟账户:既不是系统本地用户也不是匿名用户,而是通过pam做第三方认证的方法,支持文件和数据库,ldap的认证,此处通过mysql进行实验; 一、准备实验环境 实验在一台虚拟机上进…

    Linux干货 2017-06-07