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
下一篇 2017-07-24

相关推荐

  • 循环语句for、while、until

    作用:    循环语句的作用是它可以让一段代码重复的执行,直到所需条件不满足为止。 在linux中变量的赋值方式有三种:       第一:直接等于号赋值       第二:通过read交互赋值       第三:for循环的赋值 bash脚本中的循…

    Linux干货 2016-08-22
  • Linux发行版概述

    Linux发行版概述 Linux发行版有数百种之多,最主流的三个分支为Debain、Slackware、RedHat Debain Debain是三大主流发行版中唯一由社区维护的版本,无商业版本,相对较为轻巧,对使用者的技术要求较高 * Ubuntu、Knopix为Debian的主要子分支,其中Knopix是以安全著称的 Slackware(SUSE) SU…

    Linux干货 2017-07-02
  • grub安装

    创建两块磁盘分区 创建boot目录和根本目录rootfs mkdir /mnt/boot mkdir /mnt/rootfs mount /dev/sdb1 /mnt/boot mount /dev/sdb2 /mnt/rootfs 安装gurb gurb-install –root-directory=/mnt /dev/sdb1 在/mnt/…

    Linux干货 2017-11-14
  • 使用Storm实现实时大数据分析

    摘要:随着数据体积的越来越大,实时处理成为了许多机构需要面对的首要挑战。Shruthi Kumar和Siddharth Patankar在Dr.Dobb’s上结合了汽车超速监视,为我们演示了使用Storm进行实时大数据分析。CSDN在此编译、整理。 简单和明了,Storm让大数据分析变得轻松加愉快。 当今世界,公司的日常运营经常会生成TB级别的数据。数据来源…

    Linux干货 2015-04-04
  • Python之入门篇

    一、环境准备 环境准备 –> pyenv (安装python解释器,管理Python版本,管理python虚拟环境) https://github.com/pyenv/pyenv https://github.com/yyuu/pyenv-installer # yum -y install git # curl -L https://ra…

    Linux干货 2015-02-07
  • N21_第6周_vim

    N21_第6周_vim 请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; 3、删除/tmp/…

    Linux干货 2016-08-15

评论列表(1条)

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

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