N25第四周 chmod chown以及 grep命令的常用示例

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

    [root@localhost ~]# cp -r /etc/skel /home/tuser1
    [root@localhost ~]# ls -al /home/tuser1/skel
    total 12
    drwxr-xr-x. 3 root root  74 Dec 22 04:09 .
    drwx------. 3 root root  17 Dec 22 04:09 ..
    -rw-r--r--. 1 root root  18 Dec 22 04:09 .bash_logout
    -rw-r--r--. 1 root root 193 Dec 22 04:09 .bash_profile
    -rw-r--r--. 1 root root 231 Dec 22 04:09 .bashrc
    drwxr-xr-x. 4 root root  37 Dec 22 04:09 .mozilla
    [root@localhost ~]# chmod -R go-rx /home/tuser1
    [root@localhost ~]# ls -al /home/tuser1/skel
    total 12
    drwx------. 3 root root  74 Dec 22 04:09 .
    drwx------. 3 root root  17 Dec 22 04:09 ..
    -rw-------. 1 root root  18 Dec 22 04:09 .bash_logout
    -rw-------. 1 root root 193 Dec 22 04:09 .bash_profile
    -rw-------. 1 root root 231 Dec 22 04:09 .bashrc
    drwx------. 4 root root  37 Dec 22 04:09 .mozilla
    [root@localhost ~]#

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

    [root@localhost etc]# vim /etc/group
    admins:x:5035:slackware
    clouds:x:5036:
    nova:x:5037:openstack
    mysql:x:227:
    hadoop:x:5038:

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

    [root@localhost etc]# vim passwd

    jow:x:4067:4067::/home/jow:/bin/bash
    centos:x:4068:4068::/home/centos:/bin/bash
    user1:x:4069:4069::/home/user1:/bin/bash
    user2:x:4070:4070::/home/user2:/bin/bash
    apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
    pcp:x:228:228:Performance Co-Pilot:/var/lib/pcp:/sbin/nologin
    named:x:25:25:Named:/var/named:/sbin/nologin
    magia:x:1100:1100::/home/linux:/bin/bash
    slackware:x:2002:2016::/home/slackware:/bin/tcsh
    openstack:x:3003:5036::/home/openstack:/bin/bash
    mysql:x:227:227::/home/mysql:/sbin/nologin
    hadoop:x:3004:5038::/home/hadoop:/bin/bash

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

    [root@localhost ~]# cp -r /etc/skel /home/hadoop
    [root@localhost ~]# ls -l /home | grep hadoop
    drwxr-xr-x.  3 root     root       74 Dec 22 04:31 hadoop
    [root@localhost ~]# chmod -R go= /home/hadoop
    [root@localhost ~]# ls -al /home/hadoop 
    total 16
    drwx------.  3 root root   74 Dec 22 04:31 .
    drwxr-xr-x. 26 root root 4096 Dec 22 04:31 ..
    -rw-------.  1 root root   18 Dec 22 04:31 .bash_logout
    -rw-------.  1 root root  193 Dec 22 04:31 .bash_profile
    -rw-------.  1 root root  231 Dec 22 04:31 .bashrc
    drwx------.  4 root root   37 Dec 22 04:31 .mozilla
    [root@localhost ~]# ls -al /home | grep hadoop
    drwx------.  3 root     root       74 Dec 22 04:31 hadoop
    [root@localhost ~]#

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

    [root@localhost ~]# chown -R hadoop:hadoop /home/hadoop
    [root@localhost ~]# ls -al /home | grep hadoop
    drwx------.  3 hadoop   hadoop     74 Dec 22 04:31 hadoop
    [root@localhost ~]#

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

第一种:
    [root@localhost ~]# cat /proc/meminfo | grep  "^[sS].*"
    SwapCached:            0 kB
    SwapTotal:       2098172 kB
    SwapFree:        2098172 kB
    Shmem:              7264 kB
    Slab:             114028 kB
    SReclaimable:      65800 kB
    SUnreclaim:        48228 kB

第二种:
    [root@localhost ~]# cat /proc/meminfo | grep -i "^s.*"
    SwapCached:            0 kB
    SwapTotal:       2098172 kB
    SwapFree:        2098172 kB
    Shmem:              7264 kB
    Slab:             114028 kB
    SReclaimable:      65800 kB
    SUnreclaim:        48228 kB

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

    [root@localhost ~]# cat /etc/passwd | cut -d: -f1,7 
    root:/bin/bash
    bin:/sbin/nologin
    daemon:/sbin/nologin
    adm:/sbin/nologin
    lp:/sbin/nologin
    sync:/bin/sync
    shutdown:/sbin/shutdown
    halt:/sbin/halt
    mail:/sbin/nologin
    [root@localhost ~]# cat /etc/passwd | cut -d: -f1,7 | grep -v "/sbin/nologin"
    root:/bin/bash
    sync:/bin/sync
    shutdown:/sbin/shutdown
    halt:/sbin/halt

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

    [root@localhost ~]# cat /etc/passwd | cut -d: -f1,7 | grep "/bin/bash"
    root:/bin/bash
    admin:/bin/bash
    gentoo:/bin/bash
    cx:/bin/bash
    gestuser:/bin/bash
    moose:/bin/bash
    moosefs:/bin/bash

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

   [root@localhost ~]#  grep "\b[0-9]\{1,2\}\b" /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

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

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

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

    [root@localhost rc.d]# grep "^#[[:space:]]\+[^[:space:]]\+"  /etc/rc.d/rc.local
    # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
    # It is highly advisable to create own systemd services or udev rules
    # to run scripts during boot instead of using this file.
    # In contrast to previous versions due to parallel execution during boot
    # this script will NOT be run after all other services.
    # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
    # that this script will be executed during boot.
    [root@localhost rc.d]#

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

    [root@localhost ~]# netstat -tan | grep "LISTEN[[:space:]]*$"
    tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN     
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
    tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     
    tcp6       0      0 :::22                   :::*                    LISTEN     
    tcp6       0      0 ::1:631                 :::*                    LISTEN     
    tcp6       0      0 ::1:25                  :::*                    LISTEN

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

    [root@localhost ~]# useradd bash
    [root@localhost ~]# useradd testbash
    [root@localhost ~]# useradd basher
    [root@localhost ~]# useradd nologin
    [root@localhost ~]# tail -10 /etc/passwd
    named:x:25:25:Named:/var/named:/sbin/nologin
    magia:x:1100:1100::/home/linux:/bin/bash
    slackware:x:2002:2016::/home/slackware:/bin/tcsh
    openstack:x:3003:5036::/home/openstack:/bin/bash
    mysql:x:227:227::/home/mysql:/sbin/nologin
    hadoop:x:3004:5038::/home/hadoop:/bin/bash
    bash:x:4071:4071::/home/bash:/bin/bash
    testbash:x:4072:4072::/home/testbash:/bin/bash
    basher:x:4073:4073::/home/basher:/bin/bash
    nologin:x:4074:4074::/home/nologin:/bin/bash
    [root@localhost ~]# man usermod
    [root@localhost ~]# usermod -s /sbin/nologin nologin
    [root@localhost ~]# grep -E "^([^:]+\b).*\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:4071:4071::/home/bash:/bin/bash
    nologin:x:4074:4074::/home/nologin:/sbin/nologin
    [root@localhost ~]#

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

(0)
上一篇 2016-12-22 20:29
下一篇 2016-12-23 00:50

相关推荐

  • Redis基于keepalived的高可用实践

    接着上一章节来: Redis基于keepalived的高可用实现 方案拓扑图 测试方案 1.       手动关闭AppM keepalived进程确认keepalived主从变化,AppS1是否变更为主 2.       开启keepal…

    2015-03-05
  • 关于 进程和性能监控

            Linux系统状态的查看及管理工具:     pstree, ps, pidof, pgrep, top, htop, glance,pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup pstree命…

    系统运维 2016-09-11
  • 缓存需知

    Edit Web缓存核心技术点需知 5.1 HTTP首部控制 5.2 基于新鲜度检测机制: 2.1 特征1:时间局部性 2.2 特征2:空间局部性 2.3 缓存的优点 2.4 哪类数据应该被缓存 2.5 哪类数据可缓存但不应该被缓存 2.6 缓存命中率决定缓存有效性 2.7 缓存数据生命周期 2.8 缓存处理步骤 2.9 缓存和普通数据读取的区别 1. 完整…

    Linux干货 2015-02-22
  • shell脚本总结

    shell进阶:列表生成方式:列表生成方式:(1) 直接给出列表 以空白为间隔(2) 整数列表:(a) {start..end}(b) $(seq [start [step]] end)(3) 返回列表的命令$(COMMAND)(4) 使用glob,如:.sh(5) 变量引用;$@, $while read line(用法)(用于遍历文件,进行处理…

    Linux干货 2017-07-10
  • N22- 第五周

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@localhost Packages]# grep -E "^(root|fedora|user1\>)" /etc/passwd | cut -d: -f…

    Linux干货 2016-11-21
  • keepalived的实验:主主模型

    修改配置文件 [root@proxy1 ~]# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived   global_defs { notification_email { root@localhost } notification_email_from k…

    2018-03-11

评论列表(1条)

  • 马哥教育
    马哥教育 2017-01-03 17:08

    不错,完成的很好,可以看出对基础知识这块掌握的委扎实。再接再励