您的位置:首页 > 运维架构 > Linux

第四次作业

2016-08-28 22:31 204 查看
1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。
Linux的权限管理:

文件的权限主要针对三类对象进行管理:

owner:属主 u
group:属组 g
other:其它 o
每个文件针对每类访问者都定义了三种权限:
r:Readable
w:writable
x:eXcutable
文件:
r:可使用文件查看类工具获取其内容
w:可修改其内容
x:可以把此文件提请内核启动为一个进程
目录:
r:可以使用ls查看此目录中文件列表
w:可在此目录中创建文件,也可删除此目录中的文件
x:可以使用ls -l 查看此目录中文件列表,可以cd进入此目录
用八进制表示权限的方式:
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
chmod命令:更改文件权限
用法: chmod [OPTION]... MODE[,MODE]... FILE...
or: chmod [OPTION]... OCTAL-MODE FILE... //通过八进制更改文件权限
or: chmod [OPTION]... --reference=RFILE FILE...
mode: 权限设定字串,格式如下 : [ugoa...][[+-=][rwx]...][,...],其中
u:属主

g:属组

o:其它

a:所有用户

+:添加权限

-:删除权限

=:赋值权限
常用选项:
-c,--changes
只输出被改变文件的信息
-f,--silent,--quiet
当chmod不能改变文件模式时,不通知文件的用户
--help
输出帮助信息。
-R,--recursive
可递归遍历子目录,把修改应到目录下所有文件和子目录
--reference=filename
参照filename的权限来设置权限
-v,--verbose
无论修改是否成功,输出每个文件的信息
[root@localhost home]# cp -r /etc/skel/ ./tuser1/    //-r复制目录
[root@localhost home]# chmod -R go= tuser1/
[root@localhost tuser1]# ll -a
total 16
drwx------. 3 root root   74 Aug 26 23:01 .
drwx------. 9 root root 4096 Aug 26 23:01 ..
-rw-------. 1 root root   18 Aug 26 23:01 .bash_logout
-rw-------. 1 root root  193 Aug 26 23:01 .bash_profile
-rw-------. 1 root root  231 Aug 26 23:01 .bashrc
drwx------. 4 root root   37 Aug 26 23:01 .mozilla
2、编辑/etc/group文件,添加组hadoop。
hadoop:x:3005:
3、手动编辑/etc/passw d文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。
hadoop:x:3005:3005::/home/hadoop:/bin/bash
4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。
[root@localhost home]# chmod -R go= hadoop
[root@localhost home]# ll
total 8
drwx------.  3 root      root       74 Aug 27 02:10 hadoop
drwx------.  3 hadoop        3006   74 Aug 27 02:06 june
drwx------. 15 jun_shao  jun_shao 4096 Aug 26 21:26 jun_shao
drwx------.  3 mageia    mageia     74 Aug 20 08:06 linux
drwx------.  3      1005 distro     74 Aug 20 08:05 mandriva
drwx------.  5 openstack clouds   4096 Aug 21 00:56 openstack
drwx------.  3 slackware distro     74 Aug 20 08:25 slackware
drwx------.  3 root      root       74 Aug 26 23:01 tuser1
drwx------.  3 user1     user1      74 Aug 21 10:36 user1
5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。
chown命令:更改文件的属主属组
用法:chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown [OPTION]... --reference=RFILE FILE...
选项:
-c 显示更改的部分的信息
-f 忽略错误信息
-h 修复符号链接
-R 处理指定目录以及其子目录下的所有文件
-v 显示详细的处理信息
-deference 作用于符号链接的指向,而不是链接文件本身
[root@localhost home]# chown -R hadoop hadoop/
6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;
[root@localhost home]# cat /proc/meminfo | grep '^[s|S]'    //[]匹配括号中的单个字符,^括号外面表示以某个字符开头,|表示或
SwapCached:           72 kB
SwapTotal:       2097148 kB
SwapFree:        2094544 kB
Shmem:              5952 kB
Slab:              83580 kB
SReclaimable:      31844 kB
SUnreclaim:        51736 kB

[root@localhost home]# cat /proc/meminfo | grep '\<[S|s]'    //\<锚定字符串的开始
SwapCached:           64 kB
SwapTotal:       2097148 kB
SwapFree:        2094552 kB
Shmem:              5960 kB
Slab:              83580 kB
SReclaimable:      31844 kB
SUnreclaim:        51736 kB
7、显示/etc/passw d文件中其默认shell为非/sbin/nologin的用户;
[root@localhost home]# cat /etc/passwd | grep -v '/sbin/nologin\>'  //-v取反  \>锚定字符串的结束
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
amandabackup:x:33:6:Amanda user:/var/lib/amanda:/bin/bash
jun_shao:x:1000:1000:jun_shao:/home/jun_shao:/bin/bash
mageia:x:1100:1100::/home/linux:/bin/bash
slackware:x:2002:2016::/home/slackware:/bin/tcsh
openstack:x:3003:2019::/home/openstack:/bin/bash
user1:x:3004:3004::/home/user1:/bin/bash
hadoop:x:3005:3005::/home/hadoop:/bin/bash
[root@localhost home]# cat /etc/passwd | grep -v '/sbin/nologin\>' | cut -d: -f1
root
sync
shutdown
halt
amandabackup
jun_shao
mageia
slackware
openstack
user1
hadoop
8、显示/etc/passw d文件中其默认shell为/bin/bash的用户;
[root@localhost home]# grep '/bin/bash\>' /etc/passwd | cut -d: -f1
root
amandabackup
jun_shao
mageia
openstack
user1
hadoop
9、找出/etc/passw d文件中的一位数或两位数;
[root@localhost ~]# grep -o '\<[0-9]\{1,2\}' /etc/passwd     //-o显示匹配的内容,{}表示区间,匹配[0-9]两次
0
0
1
1
2
2
3
4
4
7
5
0
6
0
7
0
8
12
11
0
12
10
14
50
99
99
17
17
99
99
99
99
81
81
99
99
17
17
59
59
99
99
11
11
99
99
33
6
99
76
99
99
99
98
32
32
99
98
17
17
38
38
10
10
29
29
65
65
75
75
99
98
98
98
17
17
42
42
98
98
70
70
89
89
74
74
72
72
10
10
11
11
20
20
30
20
98
98
30
30
30
30
30
30
30
30
30
30
30
30
10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
[root@localhost home]# grep '^[[:space:]]\+' /boot/grub2/grub.cfg     //[:space:]表示空白字符,+表示匹配0次或多次
load_env
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
set default="${saved_entry}"
menuentry_id_option="--id"
menuentry_id_option=""
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
set timeout_style=menu
set timeout=5
set timeout=5
source ${prefix}/user.cfg
if [ -n ${GRUB2_PASSWORD} ]; then
set superusers="root"
export superusers
password_pbkdf2 root ${GRUB2_PASSWORD}
fi
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod xfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  be50a901-277e-4252-b8be-717299df19f5
else
search --no-floppy --fs-uuid --set=root be50a901-277e-4252-b8be-717299df19f5
fi
linux16 /vmlinuz-3.10.0-327.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8
initrd16 /initramfs-3.10.0-327.el7.x86_64.img
load_video
insmod gzio
insmod part_msdos
insmod xfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  be50a901-277e-4252-b8be-717299df19f5
else
search --no-floppy --fs-uuid --set=root be50a901-277e-4252-b8be-717299df19f5
fi
linux16 /vmlinuz-0-rescue-5c7c63d6669b43fa947518735648b83b root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet
initrd16 /initramfs-0-rescue-5c7c63d6669b43fa947518735648b83b.img
source ${config_directory}/custom.cfg


11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;
[root@localhost home]# grep '^#[[:space:]]\+[^[:space:]]' /boot/grub2/grub.cfg
# DO NOT EDIT THIS FILE
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.


12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;
[root@localhost home]# netstat -tan | grep 'LISTEN[[:space:]]*$'
tcp        0      0 192.168.122.1:53        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:631           0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN
tcp6       0      0 ::1:631                 :::*                    LISTEN
tcp6       0      0 ::1:25                  :::*                    LISTEN


13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;
[root@localhost home]# grep "^\(\<[[:alnum:]]\+\>\).*\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:3006:3006::/home/bash:/bin/bash
nologin:x:3009:3009::/home/nologin:/sbin/nologin
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux 八进制 访问者