从Linux小白到大牛——与狼共舞的日子4

马哥教育网络班21期+第4周课程练习

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


[root@localhost ~]# cp -a /etc/skel/ /home/tuser1/
[root@localhost ~]# chmod -R 700 /home/tuser1/
[root@localhost ~]# ls -ld /home/tuser1/
drwx------. 4 root root 85 7月  30 08:26 /home/tuser1/
[root@localhost ~]# ls -la /home/tuser1/
总用量 12
drwx------. 4 root root  85 7月  30 08:26 .
drwxr-xr-x. 8 root root  95 7月  30 08:20 ..
-rwx------. 1 root root  18 7月  30 08:20 .bash_logout
-rwx------. 1 root root 193 7月  30 08:20 .bash_profile
-rwx------. 1 root root 231 7月  30 08:20 .bashrc
drwx------. 4 root root  37 7月  30 08:20 .mozilla
drwx------. 3 root root  74 7月  30 08:26 skel

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


[root@localhost ~]# echo hadoop:x:3005: >> /etc/group
[root@localhost ~]# tail -2 /etc/group
aaaaa:x:3004:
hadoop:x:3005:

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


[root@localhost ~]# echo hadoop:x:3005:3005::/home/hadoop:/bin/bash >> /etc/passwd
[root@localhost ~]# tail -2 /etc/passwd
aaaaa:x:3004:3004::/home/aaaaa:/bin/bash
hadoop:x:3005:3005::/home/hadoop:/bin/bash

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


[root@localhost ~]# cp -a /etc/skel/ /home/hadoop/
[root@localhost ~]# chmod 700 /home/hadoop/
[root@localhost ~]# ls -ld /home/hadoop/
drwx------. 3 root root 17 7月  30 08:42 /home/hadoop/

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


[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop/
[root@localhost ~]# ls -ld /home/hadoop/
drwx------. 3 hadoop hadoop 74 5月   5 18:24 /home/hadoop/
[root@localhost ~]# ls -la /home/hadoop/
总用量 16
drwx------.  3 hadoop hadoop   74 5月   5 18:24 .
drwxr-xr-x. 10 root   root   4096 7月  30 08:58 ..
-rw-r--r--.  1 hadoop hadoop   18 1月  11 2015 .bash_logout
-rw-r--r--.  1 hadoop hadoop  193 1月  11 2015 .bash_profile
-rw-r--r--.  1 hadoop hadoop  231 1月  11 2015 .bashrc
drwxr-xr-x.  4 hadoop hadoop   37 5月   5 18:24 .mozilla

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


[root@localhost home]# grep -i '^s' /proc/meminfo 
SwapCached:0 kB
SwapTotal:   2097148 kB
SwapFree:2097148 kB
Shmem:  9944 kB
Slab: 119240 kB
SReclaimable:  54716 kB
SUnreclaim:64524 kB
[root@localhost ~]# grep ^[sS] /proc/meminfo 
SwapCached:0 kB
SwapTotal:   2097148 kB
SwapFree:2097148 kB
Shmem:  9944 kB
Slab: 119240 kB
SReclaimable:  54716 kB
SUnreclaim:64524 kB

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


[root@localhost ~]# grep -v '/sbin/nologin$' /etc/passwd

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


[root@localhost ~]# grep '/bin/bash$' /etc/passwd

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


[root@localhost ~]# grep '\<[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 '^\(\<[[:alnum:]]\+\>\).*\1$' /etc/passwd

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


[root@localhost ~]# egrep '^(s|S)' /proc/meminfo 
SwapCached:0 kB
SwapTotal:   2097148 kB
SwapFree:2097148 kB
Shmem:  9916 kB
Slab: 119620 kB
SReclaimable:  54924 kB
SUnreclaim:64696 kB
[root@localhost ~]# grep -i '^s' /proc/meminfo 
SwapCached:0 kB
SwapTotal:   2097148 kB
SwapFree:2097148 kB
Shmem:  9916 kB
Slab: 119620 kB
SReclaimable:  54924 kB
SUnreclaim:64696 kB
[root@localhost ~]# grep ^[sS] /proc/meminfo 
SwapCached:0 kB
SwapTotal:   2097148 kB
SwapFree:2097148 kB
Shmem:  9916 kB
Slab: 119620 kB
SReclaimable:  54924 kB
SUnreclaim:64696 kB

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


[root@localhost ~]# grep -v '/sbin/nologin$' /etc/passwd

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


[root@localhost ~]# grep '/bin/bash$' /etc/passwd

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


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

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

(0)
上一篇 2016-08-02 10:55
下一篇 2016-08-02 10:55

相关推荐

  • Linux——文件处理工具(一)

    (1) 文件查看命令: cat,tac,rev cat [OPTION]… [FILE]…读取文件内容 –E: 显示行结束符$ –V :显示非打印字符 –n: 对显示出的每一行进行编号 –A:显示所有字符 –b:非空行编号 –s:将连续的空行变成一行 &#8211…

    2017-07-29
  • 基础命令。

    简单基础小命令 查看目录 ls 查看当前路径下的目录 ls -a 查看当前路径下的所有目录,包含隐藏目录(带.的就是隐藏) ls -A 跟-a一样,只是不显示上一路径和本身路径(就是.和..) ls -l 显示额外的信息 ls -R 进入每个文件夹查看(递归) ls -ld 查看元数据 ls -1(数字) 排列 ls -r 倒序 ls -t 按修改时间排序 …

    Linux干货 2017-05-29
  • Linux Sysadmin–part4

    一、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) A.POST加电自检 主板在接通电源后,系统首先由POST程序来对内部各个设备进行检查,自检中如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化操作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号,等待用户处理。 B.BIOS…

    2017-10-10
  • 逻辑卷LVM练习题

     2、新建用户archlinux,要求其家目录为/users/archlinux ,而后su切换至archlinux用户,复制/etc/pam.d目录至自己 的家目录 [root@Cloud /]#useradd -d /users/archlinux archlinux #新建用户archlinux [archlinux@Cloud ~]# getent…

    Linux干货 2017-03-16
  • 深入理解java嵌套类和内部类

    一、什么是嵌套类及内部类   可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:  其一、在一个类(外部类)中直接定义的内部类;  其二、在一个方法…

    Linux干货 2015-04-07
  • 用户组和权限管理

    一、3A认证     Authentication:认证     Autherization:授权     Accoutiong|Audition:审计 二、用户user      linu…

    Linux干货 2016-08-04

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-02 11:53

    写的很好,排版也很棒,加油