第四周:/etc/passwd、/etc/group文件熟悉及配合grep使用正则表达式

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

[root@wlm ~]# useradd tuser1
[root@wlm ~]# cp -r etc/skel/ /home/tuser1/
cp: cannot stat `etc/skel/': No such file or directory
[root@wlm ~]# cp -r /etc/skel/ /home/tuser1/
[root@wlm ~]# chmod -R go=  /home/tuser1/
[root@wlm ~]# ll /home/tuser1/
total 4
drwx------. 4 root root 4096 Oct 14 00:54 skel

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

[root@wlm ~]# echo "hadoop:x:2000:" >> /etc/group 
[root@wlm ~]#

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

[root@wlm ~]# echo "hadoop:x:2000:2000::/home/hadoop:/bin/bash" >> /etc/passwd

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

[root@wlm ~]# cp -r  /etc/skel/ /home/hadoop
[root@wlm ~]# chmod -R go= /home/hadoop/
[root@wlm ~]# ls -ld  /home/hadoop/
drwx------. 4 root root 4096 Oct 14 01:03 /home/hadoop/

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

[root@wlm ~]# ls -ld /home/hadoop/
drwx------. 4 hadoop hadoop 4096 Oct 14 01:03 /home/hadoop/

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

[root@app1 tmp]# grep -i ^s /proc/meminfo 
SwapCached:         7280 kB
SwapTotal:      16777212 kB
SwapFree:       16350232 kB
Shmem:             16020 kB
Slab:             326744 kB
SReclaimable:     286880 kB
SUnreclaim:        39864 kB
[root@app1 tmp]# grep "^[Ss]" /proc/meminfo 
SwapCached:         7280 kB
SwapTotal:      16777212 kB
SwapFree:       16350232 kB
Shmem:             16020 kB
Slab:             326708 kB
SReclaimable:     286876 kB
SUnreclaim:        39832 kB
[root@app1 tmp]# grep "^(s|S)" /proc/meminfo 
[root@app1 tmp]# egrep "^(s|S)" /proc/meminfo

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

[root@wlm ~]# grep -v "\(/sbin/nologin\)$" /etc/passwd

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

[root@wlm ~]# grep  "\(/bin/bash\)$" /etc/passwd

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

[root@wlm ~]# grep -Eo "\<([0-9]|[1-9][0-9])\>" /etc/passwd | wc -l
52
[root@wlm ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd | wc -l
52

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

[root@wlm ~]# grep -E "^[[:space:]]+" /boot/grub/grub.conf
[root@wlm ~]# grep "^[[:space:]]" /boot/grub/grub.conf

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

[root@wlm ~]# grep "^#[[:space:]]\+[^[:space:]]\+" /etc/rc.d/rc.sysinit

12、打出netstat -tan命令执行结果中以‘LISTEN’后跟0、1或多个空白字符结尾的行。

[root@wlm ~]# netstat -tan | grep "LISTEN[[:space:]]*"

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

[root@wlm ~]# useradd bash
[root@wlm ~]# useradd testbash
[root@wlm ~]# useradd basher
[root@wlm ~]# useradd -s /sbin/nologin nologin
[root@wlm ~]# grep "^\([^:]\+\).*\1$" /etc/passwd
[root@wlm ~]# egrep "^([^:]+).*\1$" /etc/passwd

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

(5)
dawningdawning
上一篇 2016-10-13 16:23
下一篇 2016-10-13 19:31

相关推荐

  • 网络管理之虚拟网卡实现一个网卡多个地址

    一.概述 在虚拟机中实现一个网卡多个地址 完成这个功能之前需要先关闭NetworkManager功能(在centos 6系统)         chkconfig NetworkManager off   而且我们要实现虚拟网卡一个网卡多个地址只是对虚拟机有用 网卡别名…

    Linux干货 2016-09-16
  • 文件查找工具locate和find的使用分析

    文件查找工具locate和find的使用分析 不管是在windows系统中还是在Linux系统中,我们经常会一些文件进行搜索查找,而在Linux系统中经常用到的搜索工具有locate和find,这两种搜索工具的工具原理和用法都不相同,一下将这对这两种搜索工具的使用进行分析。 1、locate工具的工作原理是对/var/lib/mlocate/mlocat.d…

    Linux干货 2016-08-18
  • Linux基础知识之脚本初级编程

    1.编程语言的分类:机器语言,汇编语言,高级语言     高级语言:         静态语言:编译型语言 在程序执行之前就会编译成机器代码(完全转化完成)       &nbsp…

    Linux干货 2016-08-15
  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 # who | cut -d' ' -f1 | uniiq 2、取出最后登录到当前系统的用户的相关信息。 # id $(who | …

    Linux干货 2016-07-12
  • Linux中文件管理类命令初探

    Linux中文件管理类命令初探 文件管理通常指的是对文件或者目录进行的类似复制、移动、删除操作。 1. 文件的复制 cp 在Linux中使用cp指令完成文件复制工作,即copy之意。实际操作中又可以分为以下两种情况: 单源复制 单源复制即复制的源只有一个,这个源可以为文件或者目录。命令语法:cp [OPTION]… [-T] SOURCE DEST在实际…

    Linux干货 2016-11-06
  • 进程和计划任务

    1、进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等; 进程是运行中的程序的一个副本,是被载入内存的一个指令集合; 进程ID(PID )号码被用来标记各个进程; UID、GID 和SELinux 语境决定对文件系统的存取和访问权限,这些权限通常从执行进程的用户来继承并且存在生命周期; task struct:Linux内核存…

    Linux干货 2016-09-13