4.Linux权限管理与grep命令应用

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

       cp -r /etc/skel /home/tuser1

       chmod 700 /home/tuser1

       cp:文件复制命令

         格式:cp [OPTION]… SOURCE… DIRECTORY

                     -r:递归复制

                     -a:如果source是多个源的话,就需要用到

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

       vim /etc/group 

         需要重编辑模式到输入模式

         i:从编辑模式>输入模式

           hadoop:x:2004:

        回顾:vim 三种模式

               编辑模式 –> 输入模式

                         i

               输入模式–>编辑模式

                        esc

               末行模式–>

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

      vim /etc/passwd 

      输入i:进入输入模式

      

hadoop:x:2004:2004::/home/hadoop:/bin/bash

[root@localhost skel]# vim /etc/passwd

[root@localhost skel]# id hadoop

uid=2004(hadoop) gid=2004(hadoop) groups=2004(hadoop)

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

     

     cp -r /etc/skel /home/hadoop

       chmod 700 /home/hadoop

       cp:文件复制命令

         格式:cp [OPTION]… SOURCE… DIRECTORY

                     -r:递归复制

                     -a:如果source是多个源的话,就需要用到

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

      chown:修改文件属性的命令

           -R:递归修改

      chown -R hadoop:hadoop /home/hadoop


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

       grep -i “^s” /proc/meminfo

       grep “^[s,S]” /proc/meminfo

 

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

       grep -v “/sbin/nologin$” /etc/passwd | cut -d: -f1

       

       grep:文本过滤命令

           grep [option] pattern [file]..

                 –color=auto:对表达式匹配到的内容进行着色

                 -v:显示没有被匹配到的字符串

                 -i:不区分大小写

                 -o:紧显示匹配到的字符串

                 -q:侵没模式,不显示匹配到的内容,只会返回是否匹配到,如果匹配到哦着显示0否则显示1

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

          grep “/bin/bash$” /etc/passwd | cut -d : -f1

[root@localhost hadoop]# grep "/bin/bash$" /etc/passwd | cut -d : -f1
root
weblogic
mandriva
tuser1
hadoop
bash
testbsh
basher

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

         grep “\<[0-9]\{1,2}\>” /etc/passwd

[root@localhost hadoop]# grep "\<[0-9]\{1,2\}\>" /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
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
saslauth:x:497:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

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

        grep “^[[:space:]]\{1,\}” /boot/grub/grub.conf

[root@localhost hadoop]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.i686 ro root=UUID=a7a4e707-a51b-41fd-9ac6-7c36e53afb26 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-358.el6.i686.img

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

       grep “^#[[:space:]][[:space:]]\{1,\}” /etc/rc.d/rc.sysinit


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

  [root@localhost hadoop]# netstat -tan | grep "\<LISTEN\>[[:space:]]*$"
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      
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 ::1:631                     :::*                        LISTEN      
tcp        0      0 ::1:25                      :::*                        LISTEN

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

[root@localhost hadoop]# useradd bash
[root@localhost hadoop]# useradd testbsh
[root@localhost hadoop]# useradd basher
[root@localhost hadoop]# useradd -s /sbin/nologin nologin
[root@localhost hadoop]# grep "/sbin/nologin$" /etc/passwd | cut /-d : -f1
cut: /-d: No such file or directory
cut: :: No such file or directory
[root@localhost hadoop]# grep "/sbin/nologin$" /etc/passwd | cut -d : -f1
bin
daemon
adm
lp
mail
uucp
operator
games
gopher
ftp
nobody
dbus
usbmuxd
vcsa
rtkit
avahi-autoipd
abrt
pulse
haldaemon
saslauth
postfix
ntp
apache
gdm
sshd
tcpdump
nologin

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

       grep -i “^s” /proc/meminfo

       [root@localhost hadoop]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       2064376 kB
SwapFree:        2064376 kB
Shmem:              4128 kB
Slab:              53240 kB
SReclaimable:      20592 kB
SUnreclaim:        32648 kB

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

      grep -v “/sbin/nologin$” /etc/passwd

    ot:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
weblogic:x:500:500:weblogic:/home/weblogic:/bin/bash
gentoo:x:501:503:gentoo distribution:/home/gentoo:/bin/csh
mandriva:x:1005:501::/home/mandriva:/bin/bash
slackware:x:2002:501::/home/slackware:/bin/tcsh
tuser1:x:2003:2003::/home/tuser1:/bin/bash
hadoop:x:2004:2004::/home/hadoop:/bin/bash

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

    grep “/bin/bash$” /etc/passwd

[root@localhost hadoop]# grep --color=auto "/bin/bash$" /etc/passwd
root:x:0:0:root:/root:/bin/bash
weblogic:x:500:500:weblogic:/home/weblogic:/bin/bash
mandriva:x:1005:501::/home/mandriva:/bin/bash
tuser1:x:2003:2003::/home/tuser1:/bin/bash
hadoop:x:2004:2004::/home/hadoop:/bin/bash

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

    grep “\<[[:digit:]]\{1,2\}\>” /etc/passwd

[root@localhost hadoop]# grep --color=auto "\<[[:digit:]]\{1,2\}\>" /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
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
saslauth:x:497:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

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

赞 (0)
N27_jiangyefanN27_jiangyefan
上一篇 2017-07-23 23:31
下一篇 2017-07-24 08:20

相关推荐

  • 计算机的发展及组成

    计算机发展 计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备。 1946年,世界上诞生了第一台计算机,用于军事,计算弹道。 1946年数学家冯.诺依曼提出冯诺依曼体系结构,即所有计算机由运算器、控制器、存储器、输入设备、输出设备组成,所有遵循冯.诺依曼…

    Linux干货 2017-07-13
  • Linux Basics-重定向与管道:第一部分

    Linux Basics-重定向与管道:第一部分 概述 本教程将介绍 Linux 中重定向标准 IO 流的基本技术。学习: 什么是重定向与标准 IO 流:标准输入、标准输出和标准错误 各种流和管道的实际应用   前提条件 你应该了解 Linux 基本知识以及拥有一个正常工作的 Linux 系统,在本文说明的实例中,我采用是CentOS 7 内核版本…

    Linux干货 2016-10-29
  • linux系统启动及kickstart

    1、简述linux操作系统启动流程
    2、简述grub启动引导程序配置及命令行接口详解
    3、实现kickstart文件制作与光盘镜像制作

    2018-01-17
  • 第四周练习与作业

    一、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符 复制文件至/tmp目录下: cp /etc/profile /tmp/ vim /tmp/profile 进入文件命令模式下,使用正则表达式  ;%s/^[[:blank:]]\+//g 二、复制/etc/rc.d/init.d/fu…

    2017-08-05
  • CentOS6系统启动流程

    概述     了解系统的启动流程,有助于我们了解Linux系统上的一些工作原理,有助于我们深入的理解一个系统的运作方式,那么本篇就以CentOS6系统为例,介绍一下有关Linux系统启动相关的内容,分为一下几个部分:     1、Linux系统的一些基础概念  &nbs…

    Linux干货 2016-09-09
  • 软链接,硬链接区别

    软硬链接涉及文件系统inode, 区分于inode号,硬链接inode号与链接文件相同,且创建链接不占空间.而软链接占名称字节个空间,且inode号与链接文件不同; 两者查找inode号命令都可查找inode号,命令为ls -i,如需查找本目录要加d; 在创建链接环境上,硬链接只能在同分区创建一个,不能跨分区创建;而软链接可以跨分区创建多个链接文件且可以多个…

    Linux干货 2016-10-20

评论列表(1条)

  • 马哥教育
    马哥教育 2017-07-27 00:17

    总结的不错,注意下前后排版会更好,继续加油~