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)
diglinuxdiglinux
上一篇 2016-12-22 20:29
下一篇 2016-12-23 00:50

相关推荐

  • IP地址的划分及优化

    IP地址定义:互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,所以它可以唯一标识IP网络中的每台设备,同时没台主机(计算机,网络设备,外围设备)必须具有唯一的地址。 IP地址相比于MA…

    Linux干货 2017-07-02
  • keepalived + LVS-NAT 双主互备模型

        实验环境拓扑图:     备注:内网段使用192.168.91.0/24 网段模拟。外网使用192.168.23.0/24网段模拟 1、两节点上关闭防火墙和selinux。 [root@node1 keepalived]# systemctl stop firewalld…

    Linux干货 2016-03-12
  • LINUX-echo命令

    echo命令:回显         语法:echo [-neE][字符串]     说明:echo会将输入的字符串送往标准输出。输出的字符串间         以空白字符隔开,并在最后加上换行号。   &nbs…

    Linux干货 2017-05-22
  • LVM2 ( Blog4 )

    LV基本应用,扩展及缩减实现

    Linux干货 2017-11-27
  • date命令常见用法。

    date是一个非常实用的小工具,可以查看时间,并且也可以添加选项去完成自己想完成的东西。

    Linux干货 2017-11-13
  • Linux文件管理

    Linux文件管理 Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cd cd命令用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory(也就是刚login时所在的目录)。另外,~也表示为home directory的意思,.则是表示目前所在的…

    2017-10-01

评论列表(1条)

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

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