第四周

第四周

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

[root@node1 ~]# cp -r /etc/skel/ /home/tuser1
[root@node1 ~]# chmod -R go= /home/tuser1
[root@node1 ~]# ls -la /home/tuser1
total 16
drwx------.  2 root root   59 Jul 26 07:24 .
drwxr-xr-x. 11 root root 4096 Jul 26 07:24 ..
-rw-------.  1 root root   18 Jul 26 07:24 .bash_logout
-rw-------.  1 root root  193 Jul 26 07:24 .bash_profile
-rw-------.  1 root root  231 Jul 26 07:24 .bashrc

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

[root@node1 ~]# nano /etc/group 
手动添加hadoop:x:5006: 
[root@node1 ~]# tail -1 /etc/group
hadoop:x:5006:

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

[root@node1 ~]# nano /etc/passwd
[root@node1 ~]# tail -1 /etc/passwd
hadoop:x:5006:5006::/home/hadoop:/bin/bash

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

[root@node1 ~]# cp -r /etc/skel /home/hadoop
[root@node1 ~]# chmod go= /home/hadoop
[root@node1 ~]# ls -ld /home/hadoop/
drwx------. 2 root root 59 Jul 26 07:22 /home/hadoop/

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

[root@node1 ~]# chown -R hadoop:hadoop /home/hadoop
[root@node1 ~]# ls -la /home/hadoop
total 16
drwx------.  2 hadoop hadoop   59 Jul 26 07:22 .
drwxr-xr-x. 11 root   root   4096 Jul 26 07:24 ..
-rw-r--r--.  1 hadoop hadoop   18 Jul 26 07:22 .bash_logout
-rw-r--r--.  1 hadoop hadoop  193 Jul 26 07:22 .bash_profile
-rw-r--r--.  1 hadoop hadoop  231 Jul 26 07:22 .bashrc

6.显示/proc/meminfo文件中以大写S或小写s开头的行;用两种方式。
第一种方法:

[root@node1 ~]# cat /proc/meminfo | grep "^[sS].*"
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              6804 kB
Slab:              60744 kB
SReclaimable:      26144 kB
SUnreclaim:        34600 kB

第二种方法:

[root@node1 ~]# cat /proc/meminfo | grep -v "^[^sS].*"  
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              6804 kB
Slab:              60744 kB
SReclaimable:      26144 kB
SUnreclaim:        34600 kB

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

[root@node1 ~]# grep -v "/sbin/nologin" /etc/passwd | cut -d : -f 1
root
sync
shutdown
halt
centos
redhat
fedora
mint
mageia
slackware
hadoop

8.显示/etc/passwd文件中其默认shell为/bin/bash的用户。
第一种方法:

[root@node1 ~]# grep "/bin/bash" /etc/passwd | grep -o "^[^:]\+"
root
centos
redhat
fedora
mint
mageia
hadoop

第二种方法:

[root@node1 ~]# grep "/bin/bash" /etc/passwd | cut -d : -f 1
root
centos
redhat
fedora
mint
mageia
hadoop

9.找出/etc/passwd中的一位数或二位数。

[root@node1 ~]# grep "\<[0-9]\{1,2\}\>" /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

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

[root@node1 ~]# grep --color=auto "^[[:space:]]\+.*$" /boot/grub/grub.conf 
root (hd0,0)
kernel /vmlinuz-2.6.32-573.el6.x86_64 ro root=UUID=c5e05cf4-7e32-402e-aefa-1353baf6df38 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-573.el6.x86_64.img

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

[root@magedu ~]# grep "^#[[:space:]]\+[^[:space:]]\+.*$" /etc/rc.d/rc.sysinit 
# /etc/rc.d/rc.sysinit - run once at boot time
# Taken in part from Miquel van Smoorenburg's bcheckrc.
# Check SELinux status
# Print a text banner.
# Only read this once.
# Initialize hardware
# Set default affinity
# Load other user-defined modules
# Load modules (for backward compatibility with VARs)
# Configure kernel parameters
# Set the hostname.
# Sync waiting for storage.
# Device mapper & related initialization
# Start any MD RAID arrays that haven't been started yet
# Remount the root filesystem read-write.
# Clean up SELinux labels
# If relabeling, relabel mount points.
# Mount all other filesystems (except for NFS and /proc, which is already
# mounted). Contrary to standard usage,
# filesystems are NOT unmounted in single user mode.
# The 'no' applies to all listed filesystem types. See mount(8).
# Update quotas if necessary
# Check to see if a full relabel is needed
# Initialize pseudo-random number generator
# Configure machine if necessary.
# Clean out /.
# Do we need (w|u)tmpx files? We don't set them up, but the sysadmin might...
# Clean up /var.
# Clean up utmp/wtmp
# Clean up various /tmp bits
# Make ICE directory
# Start up swapping.
# Set up binfmt_misc
# Boot time profiles. Yes, this should be somewhere else.
# Now that we have all of our basic modules loaded and the kernel going,
# let's dump the syslog ring somewhere so we can find it later
# create the crash indicator flag to warn on crashes, offer fsck with timeout
# Let rhgb know that we're leaving rc.sysinit

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

[root@magedu ~]# netstat -tan | grep -o "\<LISTEN[[:space:]]\+.*$"
LISTEN      
LISTEN      
LISTEN      
LISTEN

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

[root@node1 ~]# grep "^\([a-z]\+\)\>.*\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:5007:5007::/home/bash:/bin/bash
nologin:x:5010:5010::/home/nologin:/sbin/nologin

用egrep:

[root@node1 ~]# egrep "^([a-z]+)\>.*\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:5007:5007::/home/bash:/bin/bash
nologin:x:5010:5010::/home/nologin:/sbin/nologin

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

(0)
ZhengBinZhengBin
上一篇 2017-07-25 19:53
下一篇 2017-07-26 14:34

相关推荐

  • Corosync + Pacemaker 搭建高可用MariaDB服务

    Corosync + Pacemaker 搭建高可用MariaDB服务 实验描述 1.本实验的目的是为了通过手动配置corosync配置文件,实现MariaDB服务的高可用,集群心跳传递使用组播方式。2.三个节点的主机名分别为:node5.redhat.com、node6.redhat.com、node7.redhat.com。地址为172.16.100.5…

    Linux干货 2016-04-06
  • 启动流程排错,自制linux内核,编译内核

    CentOS 6启动流程: POST –> Boot Sequence(BIOS) –> Boot Loader –> Kernel(ramdisk) –> rootfs–> switchroot–> /sbin/init–>(/et…

    Linux干货 2016-09-20
  • 第一周作业-02

    Linux的命令格式 命令的语法通用格式:    ~]# COMMAND OPTIONS ARGUMENTS        COMMAND: 发起一命令:请求内核将某个二进制程序运行为一个进程;            程序 –&…

    Linux干货 2016-09-19
  • Linux三剑客awk命令

    1 .awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。 awk其名称得自…

    2017-09-08
  • Shell脚本基础练习

    脚本编程能力是作为运维工程师不可或缺的一项基本技能,各种系统的运维,如果完全靠命令行一条一条命令来执行,工作效率可想而知,而脚本却可以将完成一定功能的各个命令依据一定的流程控制,逻辑判断去完成某种功能,提升工作效率。学习shell脚本,光学习理论是远远不够的,所以在学习中要多多练习,下面就看一些关于shell脚本基础的练习 (1) 编写脚本/root/bin…

    2017-08-05
  • NET25-第11周作业

    1、详细描述一次加密通讯的过程,结合图示最佳。 第一步:他们需要实现协商好对称加密算法,单向加密算法,公钥加密算法,交换公钥等。 第二步:B用户想要将数据传给A,首先需要使用单向加密算法取出数据的特征码,并用自己的私钥对这段特征码进行加密(数字签名),B用户生成临时对称密钥,并用对称密钥加密整段数据,B用户使用 A用户的公钥加密一次性对称密钥,附加在整段数据…

    Linux干货 2017-05-15

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-04 16:07

    文本管理工具是非常重要的一项技能,从作业情况来看,掌握的还不错,继续努力。