第四周 文件操作

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

[root@localhost ~]# cp -a /etc/skel /home/tuser1

[root@localhost ~]# chmod -R go= /home/tuser1

[root@localhost ~]# ls -ld /home/tuser1/

drwx——. 2 root root 4096 Nov 30 17:47 /home/tuser1/

 

[root@localhost ~]# cp -r /etc/skel /home/tuser1

[root@localhost ~]# chmod -R 700 /home/tuser1/

[root@localhost ~]# ls -ld /home/tuser1/

drwx——. 3 root root 4096 Dec 24 19:19 /home/tuser1/

 

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

[root@localhost ~]# vi /etc/group

[root@localhost ~]# tail -1 /etc/group

hadoop:x:557

 

[root@localhost ~]# echo “hadoop:x:557” >> /etc/group && tail -1 /etc/group

hadoop:x:557

 

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

[root@localhost ~]# vi /etc/passwd

[root@localhost ~]# tail -1 /etc/passwd

hadoop:x:1009:1009::/home/hadoop:/bin/bash

 

[root@localhost ~]# echo “hadoop:x:1009:1009::/home/hadoop:/bin/bash” >> /etc/passwd && tail -1 /etc/passwd

hadoop:x:1009:1009::/home/hadoop:/bin/bash

[root@localhost ~]# id hadoop

uid=1009(hadoop) gid=1009 groups=1009

 

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

[root@localhost ~]# cp -r /etc/skel /home/hadoop

[root@localhost ~]# chmod -R 700 /home/hadoop

[root@localhost ~]# ls -ld /home/hadoop

drwx—— 2 root root 4096 Dec 24 19:39 /home/hadoop

 

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

[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop

[root@localhost ~]# ls -al /home/hadoop

total 20

drwx——   2 hadoop hadoop 4096 Dec 24 19:39 .

drwxr-xr-x. 12 root   root   4096 Dec 24 19:39 ..

-rwx——   1 hadoop hadoop   18 Dec 24 19:39 .bash_logout

-rwx——   1 hadoop hadoop  193 Dec 24 19:39 .bash_profile

-rwx——   1 hadoop hadoop  231 Dec 24 19:39 .bashrc

 

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

[root@localhost ~]# grep “^[sS]” /proc/meminfo

SwapCached:            0 kB

SwapTotal:       8388604 kB

SwapFree:        8388604 kB

Shmem:              6896 kB

Slab:              43572 kB

SReclaimable:      20876 kB

SUnreclaim:        22696 kB

 

[root@localhost ~]# grep -i “^s” /proc/meminfo

SwapCached:            0 kB

SwapTotal:       8388604 kB

SwapFree:        8388604 kB

Shmem:              6896 kB

Slab:              43572 kB

SReclaimable:      20876 kB

SUnreclaim:        22696 kB

 

[root@localhost ~]# grep -E “^(s|S)” /proc/meminfo

SwapCached:            0 kB

SwapTotal:       8388604 kB

SwapFree:        8388604 kB

Shmem:              6896 kB

Slab:              43572 kB

SReclaimable:      20876 kB

SUnreclaim:        22696 kB

 

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

[root@localhost ~]# grep -v “/sbin/nologin$” /etc/passwd |cut -d: -f1

root

sync

shutdown

halt

gentpp

gentoo

fedora

mageia

slackware

gentnn

slack

centos

hadoop

 

[root@localhost ~]# grep -v “nologin\>$” /etc/passwd |cut -d: -f1

root

sync

shutdown

halt

gentpp

gentoo

fedora

mageia

slackware

gentnn

slack

centos

hadoop

 

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

[root@localhost ~]# grep “/bin/bash$” /etc/passwd | cut -d: -f1

root

gentoo

mageia

gentnn

centos

hadoop

 

[root@localhost ~]# grep “bash\>$” /etc/passwd | cut -d: -f1

root

gentoo

mageia

gentnn

centos

hadoop

 

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

[root@localhost ~]# 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

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/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

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin

rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

[root@localhost ~]# grep “\<[0-9]\{1,2\}\>” /etc/passwd | cut -d: -f3 | sort -n

0

1

2

3

4

5

6

7

8

11

12

14

29

32

74

81

89

99

 

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

[root@localhost ~]# ls -ld /boot/grub

drwxr-xr-x. 2 root root 4096 Nov 30 17:49 /boot/grub

[root@localhost ~]# ls /boot/grub

splash.xpm.gz

[root@localhost ~]# ls /boot/grub2

device.map  fonts  grub.cfg  grubenv  i386-pc  locale

 

[root@localhost ~]# grep “^[[:space:]]\+.*” /boot/grub2/grub.cfg | wc -l

64

 

[root@localhost ~]# grep “^[[:space:]]\+.*” /boot/grub/grub.conf

 

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

[root@localhost ~]# grep “^#[[:space:]]\+[^[:space:]]\+” /etc/rc.d/rc.sysinit

 

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

[root@localhost ~]# netstat -tan

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address           Foreign Address         State

tcp        0      0 0.0.0.0:111             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:25            0.0.0.0:*               LISTEN

tcp        0      0 192.168.43.191:22       192.168.43.233:50240    ESTABLISHED

tcp        0     52 192.168.43.191:22       192.168.43.233:51118    ESTABLISHED

tcp6       0      0 :::111                  :::*                    LISTEN

tcp6       0      0 :::22                   :::*                    LISTEN

tcp6       0      0 ::1:25                  :::*                    LISTEN

[root@localhost ~]# netstat -tan | grep “LISTEN[[:space:]]*$”

tcp        0      0 0.0.0.0:111             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:25            0.0.0.0:*               LISTEN

tcp6       0      0 :::111                  :::*                               LISTEN 

tcp6       0      0 :::22                   :::*                               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 -s /sbin/nologin nologin

[root@localhost ~]# tail -4 /etc/passwd

bash:x:4006:4006::/home/bash:/bin/bash

testbash:x:4007:4007::/home/testbash:/bin/bash

basher:x:4008:4008::/home/basher:/bin/bash

nologin:x:4009:4009::/home/nologin:/sbin/nologin

 

[root@localhost ~]# grep  -E  “^([^:]+\>).*\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:4006:4006::/home/bash:/bin/bash

nologin:x:4009:4009::/home/nologin:/sbin/nologin

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90572

(0)
N28_noonN28_noon
上一篇 2017-12-24
下一篇 2017-12-25

相关推荐

  • 1.初识linux

    1.计算机组成 计算机五大部件:运算器、控制器、存储器、输入设备、输出设备。对应实际情况大致如下: CPU CPU(Central Processing Unit)主要包含运算器、控制器;也包含寄存器、缓存用于辅助: CPU在同一时间能并行处理的二进制数的位数称为CPU字长。字长由CPU对外数据通路的数据总线条数决定。 运算器 运算器也称…

    Linux干货 2016-08-22
  • shell与kernel的理解

    Shell 的英文释义是外壳,与kernel 内核名词遥相呼应,一外一内,一壳一核。内核就像瑞士银行的金库,存放着客户的黄金等众多的(硬件)资产,闲杂人等(包括客户)当然是严格禁止入内的,而作为客户要存取金库中的资产则需要通过专门的特定管理人员代为操作完成,并把存取(操作)的结果呈现给客户。在Linux操作系统中,shell的职能就类似于金库的操作人员,客户…

    Linux干货 2016-02-14
  • MHA–master在线修复

    本次实验基于【MHA+keepalive 高可用MYSQL集群】(续) 一、恢复背景 二、修复故障节点及MHA集群 三、提升已修复的节点为master 四、注意事项 一、恢复背景 1、设备清单 2、:percona-xtrabackup-2.3.2 (注:生产环境应定时备份;不应等到数据库DOWN后才备份,以免加剧集群的压力) 备份数据库操作: [root@…

    2017-03-01
  • M22 程序员偷懒战法

    前段时间有个外国的程序猿走红网络,这个哥们可以说是懒到了极点,上班请假给领导发短信写脚本,下班晚回家给老婆发短信写脚本,甚至于接个咖啡也要写脚本。这个哥们离职之后,他的同事在他的办公电脑上发现了这些脚本,并公布到了网上,引起众程序猿纷纷膜拜。最近我刚好学到shell脚本部分,就让我分析其中的一个跟领导请假的脚本吧。 #!/bin/sh -e # Exit e…

    Linux干货 2017-04-06
  • N25第六周总结:vim编辑器详解

    vim编辑器 一、      大纲 1、   什么是vim编辑器 2、   为什么要使用vim编辑器 3、   vim编辑器能实现哪些功能 4、   vim编辑器详解   二、   &nbs…

    Linux干货 2017-01-12
  • Linux的文本处理工具之sed的使用

    Sed文本处理工具 一、认识sed工具: sed是一种流编辑器,一次处理一行内容。当进行处理时,把当前处理的行存储在临时的缓冲区中(俗称“模式空间”)后,再用sed命令去处理缓冲区的内容,最后把处理过的缓冲区内容送往屏幕打印显示。接着处理下一行,不断重复进行读取、处理、输出,直到文件末尾。  注:sed命令处理文本,文件内容本身并没有改变,除非你使…

    Linux干货 2016-08-10

评论列表(2条)

  • 马哥教育
    马哥教育 2018-01-07 17:29

    赞,前面几个题目使用了至少一种方法实现,比较好~~排版上也很清晰,继续加油~

  • 马哥教育
    马哥教育 2018-01-07 17:38

    内容上没什么问题,排版上可以变化一下~~加油哈~