赞
踩
考试环境:考试过程中所有的操作是在kvm虚拟机中进行,虚拟机root密码需要破解,重设为题目指定的密码。
上午:时间2.5H
把root密码设置为要求的:
grub启动菜单选e编辑,找见默认kernel(linux16,在行末添加rd.break,b引导。(虚拟机需要删到ro,ro保留。 虚拟机中小键盘不能用的可能性比较大,特别是用passwd指定root密码的时候不易察觉,易导致root破解失败,所以虚拟机下不用小键盘。)
- mount -o rw,remount /sysroot
- chroot /sysroot
- passwd root (或者 echo 123456 |passwd --stdin root)
- touch /.autorelabel (注意/之后. 最后是bel)
- reboot
重启之后虚拟机可能默认命令行界面,如果需要切换到图形界面,root登录,执行以下命令:
[root@server ~]# systemctl isolate graphical.target (暂时图形化界面,重启之后还是命令行)
(不建议*)如果嫌每次重启切换麻烦,可以改变默认界面,执行以下命令:
- [root@server ~]# systemctl get-default
- multi-user.target
- [root@server ~]# systemctl set-default graphical.target
但是切记*最后要改回命令行界面,即:
[root@server ~]# systemctl set-default multi-user.target
按要求配置虚拟机:(注意在虚拟机中配置)
- Hostname: serverX.example.com
- IP address: 172.25.X.11 (static)
- Netmask: 255.255.255.0
- Gateway: 172.25.X.254
- Name server: 172.25.X.254
命令:
配置主机名:
[root@server ~]# hostnamectl set-hostname serverX.example.com
或者
[root@server ~]# vim /etc/hostname (默认没有此文件,手动编写)
配置网络:
- [root@server ~]# nmcli con show --active
- [root@server ~]# nmcli con mod "System eth0" ipv4.method manual ipv4.addresses "172.25.X.11/24 172.25.X.254" ipv4.dns 172.25.X.254
检验
- [root@server ~]# cat /etc/hostname
- [root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
重启服务,重启虚拟机检验
- [root@server ~]# systemctl restart NetworkManager
- [root@server ~]# reboot
检验网络没问题之后开始正式答题,推荐从实机ssh -X到server虚拟机,方便复制粘贴
1.selinux开启为enforcing
- [root@server16 ~]# setenforce 1
- [root@server16 ~]# vim /etc/selinux/config
- SELINUX=enforcing
2. YUM 的软件库源为 http://172.25.254.254/content/rhel7.0/x86_64/dvd. 将此配置为您的系统的默认软件仓库。
- [root@server16 ~]# cd /etc/yum.repos.d/
- [root@server16 yum.repos.d]# vim server.repo
- [base]
- name=server
- baseurl=http://172.25.254.254/content/rhel7.0/x86_64/dvd
- enabled=1
- gpgcheck=0
- [root@server16 ~]# yum clean all
- [root@server16 yum.repos.d]# yum makecache
- 或者 [root@server16 yum.repos.d]# yum repolist
3. 将逻辑卷vol和其文件系统大小调整到 380 MiB。要确保文件系统中的内容保持完整。请注意:分区大小很少能够完全符合要求的大小,所以大小在 350 MiB 和 410 MiB 之间都是可以接受的。
准备分区:(顺便准备14,18题所需分区)
- [root@server16 ~]# fdisk /dev/vdb
- Device Boot Start End Blocks Id System
- /dev/vdb1 2048 20971519 10484736 5 Extended
- /dev/vdb5 4096 1028095 512000 83 Linux
- /dev/vdb6 1030144 2578431 774144 83 Linux
- /dev/vdb7 2580480 3645439 532480 83 Linux
- 三个逻辑分区大小分别为500M,765M,520M,fdisk完成之后记得w保存退出。
- [root@server16 ~]# partprobe /dev/vdb
- [root@server16 ~]# pvcreate /dev/vdb5
- Physical volume "/dev/vdb5" successfully created
- [root@server16 ~]# vgcreate vg0 /dev/vdb5
- Volume group "vg0" successfully created
- [root@server16 ~]# lvcreate -L 200M -n vol vg0
- Logical volume "vol" created
- [root@server ~]# lvdisplay (查看vol路径path)
- [root@server ~]# lvresize -r -L 380M /dev/vg0/vol (切记-r,文件系统)
逻辑卷ext4在线放大,离线缩小,xfs只能放大,不能缩小。
4. 按照以下要求创建用户,组,及用户与组的关系
新建一个名为sharegrp的组
新建一个名为natasha的用户,并将sharegrp作为其附属组
新建一个名为harry的用户,也将sharegrp作为其附属组
新建一个名为sarah的用户,其不属于sharegrp组,并将其shell设置为不可登录shell
natasha、harry、sarah用户的密码均设置为emesgravy
- [root@server16 ~]# groupadd sharegrp
- [root@server16 ~]# useradd -G sharegrp natasha
- [root@server16 ~]# useradd -G sharegrp harry
- [root@server16 ~]# useradd -s /sbin/nologin sarah
- [root@server16 ~]# echo emesgravy |passwd --stdin sarah
- [root@server16 ~]# echo emesgravy |passwd --stdin harry
- [root@server16 ~]# echo emesgravy |passwd --stdin natasha
- 测试:
- [root@server16 ~]# id natasha
- [root@server16 ~]# id harry
- [root@server16 ~]# id sarah
- [root@server16 ~]# grep sarah /etc/passwd
5.复制文件/etc/fstab 到 /var/tmp目录中,并按以下要求配置/var/tmp/fstab文件的权限:
文件/var/tmp/fstab的所属人为root
文件/var/tmp/fstab的所属组为root
文件/var/tmp/fstab对任何人均没有执行权限
用户natasha对文件/var/tmp/fstab有读和写的权限
用户harry对文件/var/tmp/fstab既不能读也不能写
所有其他用户(包换当前用户及未来创建的用户)对文件/var/tmp/fstab都有读的权限
- [root@server16 ~]# cd /var/tmp/
- [root@server16 tmp]# cp /etc/fstab .
- [root@server16 tmp]# ll fstab
- [root@server16 tmp]# setfacl -m u:natasha:rw fstab
- [root@server16 tmp]# setfacl -m u:harry:- fstab
- 检查:
- [root@server16 tmp]# ll fstab
- [root@server16 tmp]# getfacl fstab
PS: ① acl权限(rwx)给错怎么办?再次setfacl -m 覆盖即可。例如:
- [root@server16 tmp]# setfacl -m u:natasha:rwx fstab
- [root@server16 tmp]# setfacl -m u:natasha:rw fstab
②acl权限用户指定错误怎么办?先删除,再添加。例如:
- [root@server16 tmp]# setfacl -m u:sarah:rw fstab
- [root@server16 tmp]# setfacl -x u:sarah fstab
- [root@server tmp]# setfacl -m u:natasha:rw fstab
记不得-x怎么办?:) 删掉fstab文件再来一次,简单粗暴。
6.对natasha用户配置计划任务,要求在本地时间的每天14:23分执行以下命令:/bin/echo hiya
- [root@server ~]# crontab -e -u natasha
- 23 14 * * * /bin/echo hiya
-
- (分 时 日 月 星期) 星期日 = 0 or 7
- 检查:
- [root@server ~]# crontab -l -u natasha
PS:由于bug,编辑保存退出时有可能自动复制出好多23 14 * /bin/echo hiya,所以一定要-l确保没问题。
7.创建一个目录/nfsshare:
用户在该目录下创建的新文件的拥有组为sharegrp。
- [root@server16 ~]# mkdir /nfsshare
- [root@server16 ~]# chgrp sharegrp /nfsshare
- [root@server16 ~]# chmod g=rwx,o=- /nfsshare/ (*)
- [root@server16 ~]# chmod g+s /nfsshare/ (*)
- [root@server16 ~]# setfacl -m u:sarah:rwx /nfsshare
- 检查:
- [root@server16 ~]# ll -d /nfsshare
- [root@server16 ~]# getfacl /nfsshare
PS:(*)标注的两条不能用原答案上给的chmod g=rws,o=- /nfsshare 一条代替,因为ll可以发现这样做组权限为rwS,即并没有x执行权限,而用上面(*)标注的两句执行完ll组权限必然是rws,即有x执行权限,符合题意要求。
8.按以下要求更新系统的内核,新内核的RPM包位于http://classroom.example.com/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm.
重新重启时,会默认以新内核启动系统。原始的内核将继续可用。
- [root@server16 ~]# wget http://172.25.254.254/content/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm
- [root@server16 ~]# ls
- [root@server16 ~]# rpm -ivh kernel-3.10.0-123.1.2.el7.x86_64.rpm
- [root@server16 ~]# reboot
- [root@server16 ~]# uname -r
- 3.10.0-123.1.2.el7.x86_64
9.在classroom.example.com 上已部署了一台LDAP认证服务器,按以下要求配置你的系统以加入到该LDAP服务中:
该认证服务的Base DN为: dc=example,dc=com
该LDAP 服务既提供的帐户信息也同时提供认证信息
认证的会话连接需要被加密,证书的下载地址为http://classroom.example.com/pub/EXAMPLE-CA-CERT.
当配置完成后,你可以使用ldapuserX登录,但在你完成autofs配置之前,是无法获取到家目录的。
ldapuserX 的密码为password
- [root@server16 ~]# yum -y install authconfig-gtk sssd krb5-workstation
- [root@server16 ~]# authconfig-gtk
- [root@server16 ~]# su - ldapuser16
- su: warning: cannot change directory to /home/guests/ldapuser16: No such file or directory
- mkdir: cannot create directory '/home/guests': Permission denied
- -bash-4.2$
10.配置你的系统以使其时间与服务器classroom.example.com 同步.
- [root@server16 ~]# vim /etc/chrony.conf
- server classroom.example.com iburst
- [root@server16 ~]# systemctl restart chronyd.service
- [root@server16 ~]# timedatectl
- Local time: Sat 2017-10-28 10:27:35 CST
- Universal time: Sat 2017-10-28 02:27:35 UTC
- RTC time: Sat 2017-10-28 02:27:34
- Timezone: Asia/Shanghai (CST, +0800)
- NTP enabled: yes
- NTP synchronized: no
- RTC in local TZ: no
- DST active: n/a
- [root@server16 ~]# timedatectl set-ntp true
- [root@server16 ~]# systemctl restart chronyd.service
- [root@server16 ~]# timedatectl
- Local time: Sat 2017-10-28 10:30:18 CST
- Universal time: Sat 2017-10-28 02:30:18 UTC
- RTC time: Sat 2017-10-28 02:30:17
- Timezone: Asia/Shanghai (CST, +0800)
- NTP enabled: yes
- NTP synchronized: yes
- RTC in local TZ: no
- DST active: n/a
- [root@server16 ~]# chronyc sources -v
11.配置autofs以当你使用ldapuserX登录时自动挂载家目录: /home/guests/ldapuserX(X为你的座位号)
classroom.example.com (172.25.254.254) 已使用NFS-exports共享了/home/guests目录。该共享目录里包括ldapuserX的家目录。
ldapuserX的家目录在classroom.example.com:/home/guests/ldapuserX
ldapuserX的家目录将会在你访问/home/guests/ldapuserX时被自动挂载本地的/home/guests/ldapuserX
ldapuserX要对其家目录有完整权限。
ldapuserX 的密码为password
- [root@server16 ~]# showmount -e classroom.example.com
- Export list for classroom.example.com:
- /home/guests 172.25.0.0/255.255.0.0
- [root@server16 ~]# yum -y install autofs
- [root@server16 ~]# vim /etc/auto.master
- /home/guests /etc/auto.ldap
- [root@server16 ~]# vim /etc/auto.ldap
- * -intr,soft,rw,v3 172.25.254.254:/home/guests/&
- [root@server16 ~]# systemctl restart autofs
- [root@server16 ~]# systemctl enable autofs
- [root@server16 ~]# su - ldapuser16
- Last login: Sat Oct 28 10:38:45 CST 2017 on pts/0
- [ldapuser16@server16 ~]
12.搭建一个Web Server,站点为http://serverX.example.com , 然后按以下步骤配置:
下载http://172.25.254.254/content/rhce/web/station.html到你的web server的DocumentRoot 重命名为index.html
不要修改index.html文件的内容
- [root@server16 ~]# yum -y install httpd
- [root@server16 ~]# cd /var/www/html/
- [root@server16 html]# wget -O index.html http://172.25.254.254/content/rhce/web/station.html
- [root@server16 html]# systemctl start httpd
- [root@server16 html]# systemctl enable httpd.service
- 检查:
- [root@server16 html]# firefox http://server16.example.com
13.创建一个名为alex的用户,设置其用户ID为3456,密码为glegunge
- [root@server16 ~]# useradd -u 3456 alex
- [root@server16 ~]# echo glengunge |passwd --stdin alex
- Changing password for user alex.
- passwd: all authentication tokens updated successfully.
- [root@server16 ~]# id alex
- uid=3456(alex) gid=3456(alex) groups=3456(alex)
14.为你的系统增加一个756MiB的SWAP分区,新的SWAP分区将会在重新启动系统后自动被激活。不要删除或修改已存在的SWAP分区。
- [root@server16 ~]# mkswap /dev/vdb6
- Setting up swapspace version 1, size = 774140 KiB
- no label, UUID=975a0fa9-2147-48e4-bc9b-1dfd0a7833e8
- [root@server16 ~]# blkid /dev/vdb6
- /dev/vdb6: UUID="975a0fa9-2147-48e4-bc9b-1dfd0a7833e8" TYPE="swap"
- [root@server16 ~]# blkid /dev/vdb6 >> /etc/fstab
- [root@server16 ~]# vim /etc/fstab
- UUID="975a0fa9-2147-48e4-bc9b-1dfd0a7833e8" swap swap defaults 0 0
- [root@server16 ~]# swapon -a
- [root@server16 ~]# swapon -s
- Filename Type Size Used Priority
- /dev/vdb6 partition 774140 0 -1
- [root@server16 ~]# free -m
- total used free shared buffers cached
- Mem: 1841 1574 266 16 4 1044
- -/+ buffers/cache: 525 1315
- Swap: 755 0 755
15.找出用户natasha拥有的所有的文件,并把它们复制到/root/findfiles/目录中。
- [root@server16 ~]# mkdir findfiles
- [root@server16 ~]# find / -user natasha -exec cp -rp {} findfiles/ \;
- find: ‘/proc/32344/task/32344/fd/6’: No such file or directory
- find: ‘/proc/32344/task/32344/fdinfo/6’: No such file or directory
- find: ‘/proc/32344/fd/6’: No such file or directory
- find: ‘/proc/32344/fdinfo/6’: No such file or directory
- cp: cannot overwrite non-directory ‘findfiles/natasha’ with directory ‘/home/natasha’
- [root@server16 ~]# cd findfiles/
- [root@server16 findfiles]# ll
- total 8
- drwxr-xr-x. 2 natasha natasha 6 Jan 27 2014 extensions
- -rw-r--r--. 1 natasha natasha 4 Jul 11 2014 gnome-initial-setup-done
- -rw-r--r--. 1 natasha natasha 1443 Jul 11 2014 monitors.xml
- -rw-rw----. 1 natasha mail 0 Oct 28 11:20 natasha
- drwxr-xr-x. 2 natasha natasha 6 Jan 27 2014 plugins
16.查找出/usr/share/dict/words文件当中所有包含seismic字符串的行,并将这些行仍然按照原始文件中的顺序.
存放入/root/wordlist中,/root/wordlist文件不能包含空行。
- [root@server16 ~]# grep seismic /usr/share/dict/words > wordlist
- 检查:
- [root@server16 ~]# less wordlist
17.创建/root/backup.tar.bz2的归档文件,其中包括/usr/local的内容,必须使用bzip的压缩。
- [root@server16 ~]# tar -cjvf backup.tar.bz2 /usr/local/*
- 检查:
- [root@server16 ~]# tar -tjvf backup.tar.bz2
PS: man tar
-c, --create -v, --verbose -f, --file ( 选项最后一个) -j, --bzip2 -J, --xz -z, --gzip
18.按照以下要求创建一个新的逻辑卷:
逻辑卷的名字为database,其属于datastore卷组,该逻辑卷由30个PE组成。
卷组datastore的单个PE大小为16MiB。
将新创建的逻辑卷格式化为xfs文件系统,在系统启动逻辑卷会被自动挂载到/mnt/database目录下。
- [root@server16 ~]# pvcreate /dev/vdb7
- Physical volume "/dev/vdb7" successfully created
- [root@server16 ~]# vgcreate -s 16M datastore /dev/vdb7
- Volume group "datastore" successfully created
- [root@server16 ~]# lvcreate -l 30 -n database datastore
- Logical volume "database" created
- [root@server16 ~]# mkfs.xfs /dev/datastore/database
- [root@server16 ~]# blkid /dev/datastore/database
- /dev/datastore/database: UUID="5e3db0a4-f9cc-4976-a8f8-26fd091bc811" TYPE="xfs"
- [root@server16 ~]# blkid /dev/datastore/database >> /etc/fstab
- [root@server16 ~]# vim /etc/fstab
- UUID="5e3db0a4-f9cc-4976-a8f8-26fd091bc811" /mnt/database xfs defaults 0 0
- [root@server16 ~]# mkdir /mnt/database
- [root@server16 ~]# mount -a
- [root@server16 ~]# df -h
- /dev/mapper/datastore-database 477M 25M 453M 6% /mnt/database
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。