N25_第四周博客作业_leon

N25_第四周博客作业_leon

1.    复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限
复制
[root@localhost ~]# cp -rp /etc/skel /home/tuser1
 
查看目录里文件的权限
[root@localhost ~]# ls -la /home/tuser1                
total 24
drwxr-xr-x. 3 root root 4096 Nov 14 22:39 .
drwxr-xr-x. 8 root root 4096 Jan 12 19:09 ..
-rw-r–r–. 1 root root   18 May 11  2012 .bash_logout
-rw-r–r–. 1 root root  176 May 11  2012 .bash_profile
-rw-r–r–. 1 root root  124 May 11  2012 .bashrc
drwxr-xr-x. 2 root root 4096 Nov 12  2010 .gnome2

查看目录本身的权限
[root@localhost ~]# ls -ld /home/tuser1               
drwxr-xr-x. 3 root root 4096 Nov 14 22:39 /home/tuser1

更改目录及目录或文件的权限
[root@localhost ~]# chmod -R go= /home/tuser1  
       
查看目录本身的权限
[root@localhost ~]# ls -ld /home/tuser1               
drwx——. 3 root root 4096 Nov 14 22:39 /home/tuser1

查看目录里文件的权限
[root@localhost ~]# ls -la /home/tuser1               
total 24
drwx——. 3 root root 4096 Nov 14 22:39 .
drwxr-xr-x. 8 root root 4096 Jan 12 19:09 ..
-rw——-. 1 root root   18 May 11  2012 .bash_logout
-rw——-. 1 root root  176 May 11  2012 .bash_profile
-rw——-. 1 root root  124 May 11  2012 .bashrc
drwx——. 2 root root 4096 Nov 12  2010 .gnome2

2.    编辑/etc/group文件,添加组hadoop
查看当前系统组信息
[root@localhost ~]# tail -2 /etc/group
nova:x:2020:openstack
mysql:x:498:

添加hadoop组
[root@localhost ~]# echo "hadoop:x:888:" >> /etc/group

查看添加后的组信息
[root@localhost ~]# tail -3 /etc/group
nova:x:2020:openstack
mysql:x:498:
hadoop:x:888:

3.    手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop
查看当前系统用户信息
[root@localhost ~]# tail -5 /etc/passwd
test:x:500:500::/home/test:/bin/bash
mageia:x:1100:1100::/home/linux:/bin/bash
slackware:x:2002:2016::/home/slackware:/bin/bash
openstack:x:3003:2019::/home/openstack:/bin/bash
mysql:x:498:498::/home/mysql:/sbin/nologin

添加hadoop用户
[root@localhost ~]# echo "hadoop:x:800:888::/home/hadoop:/bin/bash" >> /etc/passwd

查看添加的hadoop用户
[root@localhost ~]# tail -5 /etc/passwd
mageia:x:1100:1100::/home/linux:/bin/bash
slackware:x:2002:2016::/home/slackware:/bin/bash
openstack:x:3003:2019::/home/openstack:/bin/bash
mysql:x:498:498::/home/mysql:/sbin/nologin
hadoop:x:800:888::/home/hadoop:/bin/bash

4.    复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限
复制
[root@localhost ~]# cp -rp /etc/skel/ /home/hadoop

查看权限
[root@localhost ~]# ls -ld /home/hadoop
drwxr-xr-x. 3 root root 4096 Nov 14 22:39 /home/hadoop
[root@localhost ~]# ls -la /home/hadoop
total 24
drwxr-xr-x. 3 root root 4096 Nov 14 22:39 .
drwxr-xr-x. 9 root root 4096 Jan 12 19:31 ..
-rw-r–r–. 1 root root   18 May 11  2012 .bash_logout
-rw-r–r–. 1 root root  176 May 11  2012 .bash_profile
-rw-r–r–. 1 root root  124 May 11  2012 .bashrc
drwxr-xr-x. 2 root root 4096 Nov 12  2010 .gnome2

更改权限
[root@localhost ~]# chmod -R go= /home/hadoop

查看权限
[root@localhost ~]# ls -ld /home/hadoop
drwx——. 3 root root 4096 Nov 14 22:39 /home/hadoop
[root@localhost ~]# ls -la /home/hadoop
total 24
drwx——. 3 root root 4096 Nov 14 22:39 .
drwxr-xr-x. 9 root root 4096 Jan 12 19:31 ..
-rw——-. 1 root root   18 May 11  2012 .bash_logout
-rw——-. 1 root root  176 May 11  2012 .bash_profile
-rw——-. 1 root root  124 May 11  2012 .bashrc
drwx——. 2 root root 4096 Nov 12  2010 .gnome2

5.    修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop
查看属主属组
[root@localhost ~]# ls -ld /home/hadoop
drwx——. 3 root root 4096 Nov 14 22:39 /home/hadoop
[root@localhost ~]# ls -la /home/hadoop
total 24
drwx——. 3 root root 4096 Nov 14 22:39 .
drwxr-xr-x. 9 root root 4096 Jan 12 19:31 ..
-rw——-. 1 root root   18 May 11  2012 .bash_logout
-rw——-. 1 root root  176 May 11  2012 .bash_profile
-rw——-. 1 root root  124 May 11  2012 .bashrc
drwx——. 2 root root 4096 Nov 12  2010 .gnome2

更改属主属组        
[root@localhost ~]# chown -R hadoop:hadoop /home/hadoop

查看属主属组
[root@localhost ~]# ls -ld /home/hadoop
drwx——. 3 hadoop hadoop 4096 Nov 14 22:39 /home/hadoop
[root@localhost ~]# ls -la /home/hadoop
total 24
drwx——. 3 hadoop hadoop 4096 Nov 14 22:39 .
drwxr-xr-x. 9 root   root   4096 Jan 12 19:31 ..
-rw——-. 1 hadoop hadoop   18 May 11  2012 .bash_logout
-rw——-. 1 hadoop hadoop  176 May 11  2012 .bash_profile
-rw——-. 1 hadoop hadoop  124 May 11  2012 .bashrc
drwx——. 2 hadoop hadoop 4096 Nov 12  2010 .gnome2

6.    显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式
第一种
[root@localhost ~]# grep "^[sS]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       4095992 kB
SwapFree:        4095992 kB
Shmem:               212 kB
Slab:              90468 kB
SReclaimable:      35188 kB
SUnreclaim:        55280 kB

第二种
[root@localhost ~]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       4095992 kB
SwapFree:        4095992 kB
Shmem:               212 kB
Slab:              90460 kB
SReclaimable:      35196 kB
SUnreclaim:        55264 kB

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

选出非/sbin/nologin的行
[root@localhost ~]# grep -v "\/sbin\/nologin\>$" /etc/passwd
root: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
test:x:500:500::/home/test:/bin/bash
mageia:x:1100:1100::/home/linux:/bin/bash
slackware:x:2002:2016::/home/slackware:/bin/bash
openstack:x:3003:2019::/home/openstack:/bin/bash
hadoop:x:800:888::/home/hadoop:/bin/bash

切割用户名
[root@localhost ~]# grep -v "\/sbin\/nologin\>$" /etc/passwd | cut -d : -f1
root
sync
shutdown
halt
test
mageia
slackware
openstack
hadoop

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

选出非/bin/bash的行的行
[root@localhost ~]# grep -v "\/bin\/bash\>$" /etc/passwd
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
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
mysql:x:498:498::/home/mysql:/sbin/nologin

切割用户名
[root@localhost ~]# grep -v "\/bin\/bash\>$" /etc/passwd | cut -d : -f1
bin
daemon
adm
lp
sync
shutdown
halt
mail
uucp
operator
games
gopher
ftp
nobody
dbus
vcsa
abrt
haldaemon
ntp
saslauth
postfix
avahi
sshd
tcpdump
mysql

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

找出/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
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
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

只显示匹配到的值
[root@localhost ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd
0
0
1
1
2
2
3
4
4
7
5
0
6
0
7
0
8
12
10
14
11
0
12
13
30
14
50
99
99
81
81
69
69
68
68
38
38
76
89
89
70
70
74
74
72
72

去重
[root@localhost ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd | sort -u
0
1
10
11
12
13
14
2
3
30
38
4
5
50
6
68
69
7
70
72
74
76
8
81
89
99

10.    显示/boot/grub/grub.conf中以至少一个空白字符开头的行
[root@localhost grub]# grep "^[[:space:]]\{1\}" /boot/grub/grub.conf
    root (hd0,0)
    kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=UUID=e6060ca1-a25c-4cc4-8812-a87c6ee54a42 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-279.el6.x86_64.img
[root@localhost grub]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf
    root (hd0,0)
    kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=UUID=e6060ca1-a25c-4cc4-8812-a87c6ee54a42 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-279.el6.x86_64.img
[root@localhost grub]# grep "^[[:space:]]\{1,\}.*" /boot/grub/grub.conf
    root (hd0,0)
    kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=UUID=e6060ca1-a25c-4cc4-8812-a87c6ee54a42 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-279.el6.x86_64.img
    
11.    显示/etc/rc.d/rc.sysinit文件中以#开头,后面至少一个空白字符,而后又有至少一个非空白 字符的行
[root@localhost grub]# grep "^#[[:space:]]\{1,\}[^[[:space:]]].*" /etc/rc.d/rc.sysinit

12.    打出netstat –tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行
[root@localhost grub]# netstat -tan | grep "LISTEN[[:space:]]+$"

13.    添加用户bash,testbash,basher,nologin(此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户信息
[root@localhost ~]# grep "^\(.*\):.*\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:3004:3004::/home/bash:/bin/bash
nologin:x:3007:3007::/home/nologin:/sbin/nologin

14.    显示/proc/meminfo文件中以大写或小写S开头的行;用三种方式
第一种
[root@localhost ~]# grep "^[sS]" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       4095992 kB
SwapFree:        4095992 kB
Shmem:               212 kB
Slab:              90468 kB
SReclaimable:      35188 kB
SUnreclaim:        55280 kB

第二种
[root@localhost ~]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       4095992 kB
SwapFree:        4095992 kB
Shmem:               212 kB
Slab:              90460 kB
SReclaimable:      35196 kB
SUnreclaim:        55264 kB

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

选出非/sbin/nologin的行
[root@localhost ~]# grep -v "\/sbin\/nologin\>$" /etc/passwd
root: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
test:x:500:500::/home/test:/bin/bash
mageia:x:1100:1100::/home/linux:/bin/bash
slackware:x:2002:2016::/home/slackware:/bin/bash
openstack:x:3003:2019::/home/openstack:/bin/bash
hadoop:x:800:888::/home/hadoop:/bin/bash

切割用户名
[root@localhost ~]# grep -v "\/sbin\/nologin\>$" /etc/passwd | cut -d : -f1
root
sync
shutdown
halt
test
mageia
slackware
openstack
hadoop

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

选出非/bin/bash的行的行
[root@localhost ~]# grep -v "\/bin\/bash\>$" /etc/passwd
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
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
mysql:x:498:498::/home/mysql:/sbin/nologin

切割用户名
[root@localhost ~]# grep -v "\/bin\/bash\>$" /etc/passwd | cut -d : -f1
bin
daemon
adm
lp
sync
shutdown
halt
mail
uucp
operator
games
gopher
ftp
nobody
dbus
vcsa
abrt
haldaemon
ntp
saslauth
postfix
avahi
sshd
tcpdump
mysql

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

找出/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
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
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

只显示匹配到的值
[root@localhost ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd
0
0
1
1
2
2
3
4
4
7
5
0
6
0
7
0
8
12
10
14
11
0
12
13
30
14
50
99
99
81
81
69
69
68
68
38
38
76
89
89
70
70
74
74
72
72

去重
[root@localhost ~]# grep -o "\<[0-9]\{1,2\}\>" /etc/passwd | sort -u
0
1
10
11
12
13
14
2
3
30
38
4
5
50
6
68
69
7
70
72
74
76
8
81
89
99

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

(0)
上一篇 2017-01-16 09:44
下一篇 2017-01-16 12:08

相关推荐

  • Kernel——linux的核心

    Linux Kernel: CentOS 启动流程:POST –> BootLoader(BIOS,MBR) –>Kernel(initrd) –> rootfs –> switch_root –> /sbin/init     …

    Linux干货 2016-09-11
  • sed与vim相关练习

    sed 练习 以行为单位的新增/删除功能 1将 /etc/passwd 的内容列出并且打印行号,同时,请将第 2~5 行删除! 2在第二行后(亦即是加在第三行)加上“the is xing line?”字样! 3在第二行前(亦即是加在第而行)加上“the is xing line?”字样! 4在第二行后面加入两行字,例如“the is xing line &…

    Linux干货 2016-08-10
  • linux中bash的基础特性和基本文件管理命令

    linux的文件管理类命令 linux系统下的涉及到目录管理命令,主要有 mkdir,rmdir linux系统下也会用到许多文件查看类命令,包括cat,tac,head,tail,more,less等 linux系统下涉及的文件管理类命令主要有cp,mv,rm 本节我们主要说明文件管理类命令的使用方法。 cp命令的使用方法 首先,cp这个命令的作用是可以复…

    Linux干货 2016-09-26
  • 在centos6.9上实现软RAID

    在centos6.9上实现软RAID 什么是RAID?     RAID,全称Redundant Arrays of Inexpensive(Independent)Disks。简单翻译叫磁盘阵列。    通俗一点讲就是多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提…

    Linux干货 2017-08-12
  • vsftpd基于mysql实现用户认证

    一、前言   ftp介绍:     ftp全程是File Transfer Protocol(文件传输协议),方便于实文件交换;但是在文件传输以及账号密码发送时都是以明文传输,因此是一个明文协议 ftp是C/S方式:   常见的客户端有:     GUI方式:browers、FileZilla-cl…

    Linux干货 2015-06-15
  • Shell脚本编程

    Shell脚本编程

    2017-09-20