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)
上一篇 2017-07-23 23:31
下一篇 2017-07-24 08:20

相关推荐

  • 文件的元数据

    2018-03-11

    2018-03-11
  • N25-第七周作业

    第七周 1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@zf ~]# fdisk /dev/sdb Command (m for help): n Command action e extended p primary partit…

    Linux干货 2017-02-24
  • web 服务进阶 httpd配置成https

    web服务进阶 自建CA/https详解 一、SSL与https 1、引言 我们网上购物、网上订票,以及使用支付宝支付过程中都会在网上直接输入账号和密码。这些信息都是非常重要的,如何才能在输入的过程中,不被别人看见和窃取,就需要对你输入的信息进行加密处理。 早期的两主机通信之间是没有加解密程序,后来就在传输层与应用层之间加了一个SSL库,完成加密解密功能。 …

    Linux干货 2016-12-11
  • 网络管理之虚拟网卡实现一个网卡多个地址

    一.概述 在虚拟机中实现一个网卡多个地址 完成这个功能之前需要先关闭NetworkManager功能(在centos 6系统)         chkconfig NetworkManager off   而且我们要实现虚拟网卡一个网卡多个地址只是对虚拟机有用 网卡别名…

    Linux干货 2016-09-16
  • Linus:利用二级指针删除单向链表

    感谢网友full_of_bull投递此文(注:此文最初发表在这个这里,我对原文后半段修改了许多,并加入了插图) Linus大婶在slashdot上回答一些编程爱好者的提问,其中一个人问他什么样的代码是他所喜好的,大婶表述了自己一些观点之后,举了一个指针的例子,解释了什么才是core low-level coding。 下面是Linus的教学原文及翻译—— “…

    Linux干货 2016-07-10
  • N25第2周作业

    1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 地址:博客园http://www.cnblogs.com/qingyangzi/p/6172100.html.

    Linux干货 2016-12-13

评论列表(1条)

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

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