第四周

第四周

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
下一篇 2017-07-26

相关推荐

  • 编译安装MariaDB源码包

        因为MySQL的发展趋势不甚乐观,MariaDB已替代MySQL被CentOS 7做为默认组件,如果想在CentOS 6中使用最新的MariaDB,则需要我们手动安装,其安装方式有三种:     1、RPM包安装     2、二进制…

    Linux干货 2015-06-08
  • 马哥教育网络班22期+第5周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell;cat /etc/passwd | grep "^\<root\>"cat /etc/passwd | grep "^\<fedora\>"cat /etc/passwd | grep "^\<user1\…

    Linux干货 2016-09-19
  • 编译内核

    了解内核;内核设计体系:单内核,微内核     linux:单内核设计,但充分借鉴了微内核体系的设计优点;为内核引入了模块化机制; 内核的组成部分一般有三种;     kernel:内核核心,一般为bzimage (bzip2格式所压缩的内核映像文件),这个文件通常位于/boot…

    Linux干货 2016-09-21
  • Man手册功能介绍

    Man:是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。 语法:man(选项)(参数) 选项: -a:在所有的man帮助手册中搜索 -f:等价于whatis指令,显示给定关键字的简短描述信息 -P:指定内容时使用分页程序 -M:指定man手册搜索的路径。 本地手册:/usr/share/man &nbsp…

    Linux干货 2016-10-17
  • 数据结构-线性表

    1. 线性表:n个数据元素的有序集合。 线性表是一种常用的数据结构。在实际应用中,线性表都是以栈、队列、字符串、数组等特殊线性表的形式来使用的。由于这些特殊线性表都具有各自的特性,因此,掌握这些特殊线性表的特性,对于数据运算的可靠性和提高操作效率都是至关重要的。  线性表是一个线性结构,它是一个含有n≥0个结点的有限序列,对于其中的结点,有且仅有一个开始结点…

    Linux干货 2015-04-07
  • Linux之高级文件系统管理

      Linux之高级文件系统管理       Linux高级文件系统管理包括以下内容   一, 磁盘配额quota管理二, 磁盘阵列RAID管理三, 逻辑磁盘LVM管理四, 磁盘LVM快照管理五, Btrfs文件系统管理         配置磁盘配额系统 在内核中执行以…

    Linux干货 2016-09-02

评论列表(1条)

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

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