Linux权限管理与grep命令应用(第四周)

第四周作业

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

[root@localhost ~]# cp -r /etc/skel/ /home/tuser1
[root@localhost ~]# chmod -R g=,o= /home/tuser1/
[root@localhost ~]# ll -a /home/tuser1/
total 12
drwx------. 2 root root  59 Sep 11 21:06 .
drwxr-xr-x. 7 root root  78 Sep 11 21:06 ..
-rw-------. 1 root root  18 Sep 11 21:06 .bash_logout
-rw-------. 1 root root 193 Sep 11 21:06 .bash_profile
-rw-------. 1 root root 231 Sep 11 21:06 .bashrc

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

[root@localhost ~]# echo "hadoop:x:2050:" >> /etc/group
[root@localhost ~]# tail -1 /etc/group
hadoop:x:2050:

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

[root@localhost ~]# echo "hadoop:x:2050:2050::/home/hadoop:/bin/bash" >> /etc/passwd
[root@localhost ~]# tail -1 /etc/passwd
hadoop:x:2050:2050::/home/hadoop:/bin/bash

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

[root@localhost ~]# cp -r /etc/skel/ /home/hadoop
[root@localhost ~]# chmod g=,o= /home/hadoop/
[root@localhost ~]# ll -d /home/hadoop/
drwx------. 2 root root 59 Sep 11 21:26 /home/hadoop/

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

[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop/
[root@localhost ~]# ll -a /home/hadoop/
total 12
drwx------. 2 hadoop hadoop  59 Sep 11 21:26 .
drwxr-xr-x. 8 root   root    91 Sep 11 21:26 ..
-rw-r--r--. 1 hadoop hadoop  18 Sep 11 21:26 .bash_logout
-rw-r--r--. 1 hadoop hadoop 193 Sep 11 21:26 .bash_profile
-rw-r--r--. 1 hadoop hadoop 231 Sep 11 21:26 .bashrc

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

[root@localhost ~]# grep "^[sS]" /proc/meminfo 
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              6824 kB
Slab:              58404 kB
SReclaimable:      22476 kB
SUnreclaim:        35928 kB

[root@localhost ~]# grep -i "^[s]" /proc/meminfo 
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:              6824 kB
Slab:              58404 kB
SReclaimable:      22476 kB
SUnreclaim:        35928 kB

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

[root@localhost ~]# grep -v "/sbin/nologin$" /etc/passwd | cut -d: -f1

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

[root@localhost ~]# grep "/bin/bash$" /etc/passwd | cut -d: -f1

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

[root@localhost ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd

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

[root@localhost ~]# grep "^[[:space:]]" /boot/grub/grub.conf

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

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

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

[root@localhost ~]# netstat -tan | grep "LISTEN[[:space:]]\+$"

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

[root@localhost ~]# grep "^\(\<.\+\>\).*\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:3004:3004::/home/bash:/bin/bash
nologin:x:3007:3007::/home/nologin:/sbin/nologin

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

(0)
baronbaron
上一篇 2016-09-15
下一篇 2016-09-15

相关推荐

  • week3

    一,列出当前系统上所有已经登录的用户的用户名,注意,同一个用户登录多次只显示一次即可 who | cut -d' ' -f1 | sort -u 二,取出最后登录到当前系统的用户相关信息 who | cut -d'&nb…

    Linux干货 2016-11-15
  • 为大家准备了几道简单的小题,不知道看过这篇文章后能否做出来?(考验你能力的时候到了,接招吧。。。) 1、将0-9分别替代成a-j 2、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中 3、计算1+2+3+..+99+100的值 4、处理字符串“xt.,l 1 jr#!$mn2 c*/fe 3 uz 4”,只保留其中的数字…

    2017-07-22
  • 第二周作业

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关实例演示 理论上,linux一切皆文件,对于linux的管理命令均算是文件管理命令。 Linux文件类型常见的有:常规文件、目录文件、块设备文件、字符设备文件、符号链接文件、命名管道、套接字文件等。 -:常规文件 [root@iZ25c28fe7fZ ~]# ls -lh checkmount.s…

    Linux干货 2017-09-25
  • shell脚本编程之数组

       数组就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的元素。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。 一、数组的表示方式   1、下标数组 &…

    Linux干货 2016-01-05
  • 基于Keepalived构建高可用集群配置实例(HA Cluster)

    什么是集群 简单的讲集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。 关于更详细的高可用集群我们在后面再做详解…

    Linux干货 2016-11-03
  • LINUX HASH命令

    LINUX:Hash命令 介绍:linux系统下会有一个hash表,刚开始这个hash表为空,每执行过一条命令hash表会缓存下这条命令。Shel优先会查看hash表。 hash缓存表可大大提高命令的调用速率 下面介绍几个hash常用选项 刚进入系统使用Hash命令 哈希表为空 使用过命令后使用Hash命令 使用过命令后,Hash可显示缓存的命令 Hash …

    Linux干货 2017-04-03