目录
在mars.domain250.example.com上执行以下任务
在 venus.domain250.example.com 上执行以下任务
考试须知
系统 | IP |
mars.domain250.example.com | 172.25.250.100 |
venus.domain250.example.com | 172.25.250.200 |
mars的根密码为flectrag
系统会在重新引导后进行评测,实施的所有配置和服务在重新引导后要仍然保留。服务必须在无人干预的情况下启动。在无法引导或无法进行无人干预引导的系统上完成的所有操作将为零分。
在mars.domain250.example.com上执行以下任务
一、配置mars网络
-
主机名:
mars.domain250.example.com
-
IP 地址:
172.25.250.100
-
子网掩码:
255.255.255.0
-
网关:
172.25.250.254
答案:
进入mars的console界面
命令
显示所有连接
nmcli connection show
若存在网卡,则
nmcli connection modify Wired\ connection\ 1 ipv4.addresses 172.25.250.100/24 ipv4.gateway 172.25.250.254 ipv4.dns 172.25.250.254 ipv4.method manual connection.autoconnect yes
若不存在网卡,则
(tab键自动补全提示)
nmcli connection add ifname enp1s0 type ethernet con-name enp1s0 ipv4.addresses 172.25.250.100/24 ipv4.gateway 172.25.250.254 ipv4.dns 172.25.250.254 ipv4.method manual connection.autoconnect yes
重新加载网卡
nmcli connection reload
激活网卡
nmcli connection up Wired\ connection\ 1 或 nmcli connection up en1s0
设置主机名
hostnamectl set-hostname mars.domain250.example.com
刷新
bash
二、配置系统使用默认存储库
YUM 存储库已可以从 http://content/rhel8.0/x86_64/dvd/BaseOS
和 http://content/rhel8.0/x86_64/dvd/AppStream
使用配置您的系统,以将这些位置用作默认存储库。
答案:
cd /etc/yum.repos.d/
vi mars.repo
[BaseOS]
name=BaseOS
baseurl=http://content/rhel8.0/x86_64/dvd/BaseOS
gpgcheck=0
enabled=1
[AppStream]
name=AppStream
baseurl=http://content/rhel8.0/x86_64/dvd/AppStream
gpgcheck=0
enabled=1
测试
yum makecache ;yum -y install vim
三、调试SELINUX
非标准端口 82
上运行的 Web 服务器在提供内容时遇到问题。根据需要调试并解决问题,使其满足以下条件:
-
系统上的 Web 服务器能够提供
/var/www/html
中所有现有的 HTML 文件(注:不要删除或以其他方式改动现有的文件内容) -
Web 服务器在端口
82
上提供此内容 -
Web 服务器在系统启动时
自动启动
答案:
查看httpd服务端口号
vim /etc/httpd/conf/httpd.conf
修改防火墙配置,开放http服务和82端口
firewall-cmd --add-service=http --permanent;firewall-cmd --add-port=82/tcp --permanent
重载防火墙
firewall-cmd --reload
重启httpd服务
systemctl restart httpd
[root@mars ~]# systemctl restart httpd
Job for httpd.service failed because the control process exited with error code.
See "systemctl status httpd.service" and "journalctl -xe" for details.
查看报错日志
journalctl -xe
通过semange添加新端口
#帮助文档
[root@mars ~]# man semanage port | grep \#
# semanage port -l
# semanage port -a -t http_port_t -p tcp 81
# semanage port -a -t ssh_port_t -p tcp 8991
[root@mars ~]# semanage port -a -t http_port_t -p tcp 82
修改file1安全上下文
#帮助文档
[root@mars html]# man semanage fcontext | grep \#
# semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?"
# restorecon -R -v /web
# semanage fcontext -a -e /home /home1
# restorecon -R -v /home1
# semanage fcontext -a -t home_root_t "/disk6"
# semanage fcontext -a -e /home /disk6/home
# restorecon -R -v /disk6
[root@mars html]# semanage fcontext -m -t httpd_sys_content_t "/var/www/html/file1"
[root@mars html]# restorecon -R -v /var/www/html/file1
Relabeled /var/www/html/file1 from unconfined_u:object_r:default_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
重启httpd服务并设置开机自启
systemctl enable httpd; systemctl restart httpd
验证
curl http://localhost:82/file1
四、创建用户账户
-
名为
sysmgrs
的组 -
用户
natasha
,作为次要组从属于sysmgrs
-
用户
harry
,作为次要组还从属于sysmgrs
-
用户
sarah
,无权访问系统上的交互式 shell
且不是sysmgrs
的成员 -
natasha
、harry
和sarah
的密码应当都是flectrag
答案:
[root@mars ~]# groupadd sysmgrs
[root@mars ~]# useradd natasha -G sysmgrs
[root@mars ~]# useradd harry -G sysmgrs
[root@mars ~]# useradd sarah -s /sbin/nologin
[root@mars ~]# echo flectrag | passwd --stdin natasha
Changing password for user natasha.
passwd: all authentication tokens updated successfully.
[root@mars ~]# echo flectrag | passwd --stdin harry
Changing password for user harry.
passwd: all authentication tokens updated successfully.
[root@mars ~]# echo flectrag | passwd --stdin sarah
Changing password for user sarah.
passwd: all authentication tokens updated successfully.
五、配置cron任务
配置 cron
作业,该作业每隔 2 分钟
运行并执行以下命令:
-
logger "EX200 in progress"
,以用户natasha
身份运行
答案:
crontab -e -u natasha
*/2 * * * * logger "EX200 in progress"
重启crond服务并设置开机自启
systemctl enable crond;systemctl restart crond
六、创建共享目录
创建具有以下特征的协作目录 /home/managers
:
-
/home/managers
的组用权是sysmgrs
-
目录应当可被
sysmgrs
的成员读取、写入和访问,但任何其他用户不具这些权限。(当然,root 用户有权访问系统上的所有文件和目录) -
/home/managers
中创建的文件自动将组所有权设置到sysmgrs
组
答案:
[root@mars ~]# mkdir /home/managers
[root@mars managers]# cd /home/
[root@mars home]# ll
total 0
drwx------. 2 devops devops 62 Feb 24 22:00 devops
drwx------. 2 harry harry 62 Feb 25 00:11 harry
drwxr-xr-x. 2 root root 6 Feb 25 00:20 managers
drwx------. 2 natasha natasha 62 Feb 25 00:11 natasha
drwx------. 2 sarah sarah 62 Feb 25 00:12 sarah
drwx------. 2 student student 62 May 22 2019 student
drwx------. 2 sysmgrs sysmgrs 62 Feb 25 00:11 sysmgrs
[root@mars home]# chgrp sysmgrs managers/
[root@mars home]# ll
total 0
drwx------. 2 devops devops 62 Feb 24 22:00 devops
drwx------. 2 harry harry 62 Feb 25 00:11 harry
drwxr-xr-x. 2 root sysmgrs 6 Feb 25 00:20 managers
drwx------. 2 natasha natasha 62 Feb 25 00:11 natasha
drwx------. 2 sarah sarah 62 Feb 25 00:12 sarah
drwx------. 2 student student 62 May 22 2019 student
drwx------. 2 sysmgrs sysmgrs 62 Feb 25 00:11 sysmgrs
[root@mars home]# chmod 2770 managers
[root@mars home]# ll
total 0
drwx------. 2 devops devops 62 Feb 24 22:00 devops
drwx------. 2 harry harry 62 Feb 25 00:11 harry
drwxrws---. 2 root sysmgrs 6 Feb 25 00:20 managers
drwx------. 2 natasha natasha 62 Feb 25 00:11 natasha
drwx------. 2 sarah sarah 62 Feb 25 00:12 sarah
drwx------. 2 student student 62 May 22 2019 student
drwx------. 2 sysmgrs sysmgrs 62 Feb 25 00:11 sysmgrs
[root@mars home]# cd managers/
[root@mars managers]# touch ceshi
[root@mars managers]# ll
total 0
-rw-r--r--. 1 root sysmgrs 0 Feb 25 00:21 ceshi
七、配置NTP
配置您的系统,使其成为 materials.example.com
的 NTP 客户端。(注:materials.example.com
是 classroom.example.com
的 DNS 别名)。
答案:
修改NTP配置文件
vim vim /etc/chrony.conf
server materials.example.com iburst
重启chronyd.service服务并设置开机自启
systemctl enable chronyd.service;systemctl restart chronyd.service
验证
chronyc sources -v
[root@mars ~]# chronyc sources -v
210 Number of sources = 1
.-- Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
|| .- xxxx [ yyyy ] +/- zzzz
|| Reachability register (octal) -. | xxxx = adjusted offset,
|| Log2(Polling interval) --. | | yyyy = measured offset,
|| \ | | zzzz = estimated error.
|| | | \
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* classroom.example.com 8 6 37 27 -3877ns[-2004us] +/- 999us
同步系统时间到硬件时间
hwclock -w
八、配置autofs
配置 autofs
,以按照如下所述自动挂载远程用户的主目录:
-
materials.example.com
(172.25.254.254
) NFS 导出/rhome
到您的系统。此文件系统包含为用户remoteuser1
预配置的主目录 -
remoteuser1
的主目录是materials.example.com:/rhome/remoteuser1
-
remoteuser1
的主目录应自动挂载到本地/rhome
下的/rhome/remoteuser1
-
主目录必须可供其用户
写入
-
remoteuser1
的密码是flectrag
答案:
[root@mars ~]# yum -y install autofs
[root@mars ~]# vim /etc/auto.master
/rhome /etc/auto.misc
[root@mars ~]# vim /etc/auto.misc
remoteuser1 -fstype=nfs,rw materials.example.com:/rhome/remoteuser1
重启autofs服务并设置开机自启
systemctl enable autofs;systemctl restart autofs
验证用remoteuser1用户登录并创建文件
九、配置 /var/tmp/fstab 权限
将文件 /etc/fstab
复制到 /var/tmp/fstab
。配置 /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@mars ~]# cp /etc/fstab /var/tmp/fstab
[root@mars ~]# cd /var/tmp/
[root@mars tmp]# ll
total 4
-rw-r--r--. 1 root root 427 Feb 25 00:49 fstab
drwx------. 3 root root 17 Feb 25 00:34 systemd-private-14ba3ddb27ad483b8288d9fe2f7ae843-chronyd.service-XF0Vbb
drwx------. 3 root root 17 Feb 25 00:00 systemd-private-14ba3ddb27ad483b8288d9fe2f7ae843-httpd.service-Qlcv5G
查看帮助文档
man setfacl
[root@mars tmp]# setfacl -m u:natasha:rw /var/tmp/fstab
[root@mars tmp]# setfacl -m u:harry:--- /var/tmp/fstab
[root@mars tmp]# getfacl /var/tmp/fstab
getfacl: Removing leading '/' from absolute path names
# file: var/tmp/fstab
# owner: root
# group: root
user::rw-
user:natasha:rw-
user:harry:---
group::r--
mask::rw-
other::r--
十、配置用户账户
配置用户 manalo
,其用户 ID 为 3533
。此用户的密码应当为 flectrag
。
答案:
[root@mars tmp]# useradd -u 3533 manalo
[root@mars tmp]# echo flectrag | passwd --stdin manalo
Changing password for user manalo.
passwd: all authentication tokens updated successfully.
十一、查找文件
查找当 jacques
所有的所有文件并将其副本放入 /root/findfiles
目录。
答案:
[root@mars ~]# mkdir /root/findfiles
[root@mars ~]# find / -user jacques -exec cp -a {} /root/findfiles \;
find: ‘/proc/5141/task/5141/fd/7’: No such file or directory
find: ‘/proc/5141/task/5141/fdinfo/7’: No such file or directory
find: ‘/proc/5141/fd/8’: No such file or directory
find: ‘/proc/5141/fdinfo/8’: No such file or directory
十二、查找字符串
查找文件 /usr/share/xml/iso-codes/iso_639_3.xml
中包含字符串 ng
的所有行。将所有这些行的副本按原始顺序放在文件 /root/list
中。 /root/list
不得包含空行,且所有行必须是 /usr/share/xml/iso-codes/iso_639_3.xml
中原始行的确切副本。
答案:
grep "ng" /usr/share/xml/iso-codes/iso_639_3.xml | grep -v ^$ > /root/list
十三、创建存档
创建一个名为 /root/backup.tar.gz
的 tar 存档,其应包含 /usr/local
的 tar 存档,其应包含 /usr/local
的内容。该 tar 存档必须使用 gzip
进行压缩。
答案:
tar -zcv -f /root/backup.tar.gz /usr/local
十四、编写脚本
在/usr/bin目录下创建一个repwis脚本,查找/usr目录下小于10M并且组ID不为root的文件,把查找到的文件结果拷贝到/root/myfiles文件夹内。
答案:
创建目录
mkdir /root/myfiles
编写脚本
cd /usr/bin;vim repwis
#!/bin/bash
for i in `awk -F ":" '{print $3}' /etc/group`
do
if [ 0 != $i ];then
find /usr -size -10M -a -gid $i -exec cp -a {} /root/myfiles \;
fi
done
赋予执行权限
chmod +x repwis
执行脚本
./repwis
十五、编写脚本
创建一个名为myshell的脚本,该脚本放在/usr/local/bin下,该脚本用于查找/usr目录下所有大小在50k~10M之间且具有修改组ID权限的文件,将查找到的文件放置在/root/myfiles下
答案:
创建目录
mkdir /root/myfiles
编写脚本
cd /usr/local/bin
vim myshell
#!/bin/bash
find /usr -type f -size +50k -a -size -10M -a -perm -2000 -exec cp -a {} /root/myfiles \;
赋予执行权限
chmod +x myshell
执行脚本
./myshell
十六、设定sysmgrs组成员sudo不需要密码
答案:
vim /etc/sudoers
十七、配置密码策略
创建新用户时,默认密码策略为20天后,密码会过期
答案:
vim /etc/login.defs
第25行把PASS_MAX_DAYS的值改为20
十八、配置登录欢迎语
登录到普通用户后,提示一句·欢迎语“hello word!“或者用户登录前显示欢迎语提示
答案:
登录后提示 echo "hello word!" >> /etc/motd
登录前提示 echo "hello word!" >> /etc/issue
十九、配置umask
用户natasha默认创建文件权限为r--r--r--,默认创建目录权限为r-xr-xr-x
答案:
切换到natasha用户再进行操作
echo "umask 222" >> ~/.bashrc
source ~/.bashrc
二十、变量与命令
生成一个环境变量rhcsa,用户在调用这个变量时输出一句话“This is RHCSA!”
自定义一个命令rhce,用户在使用这个命令时输出一句话“This is RHCE!”
答案:
vim ~/.bashrc
export rhcsa='This is RHCSA!'
alias rhce='echo This is RHCE!'
最后三遍sync,并重启检查是否能正常进系统。
二十一、利用注册表服务器的镜像搭建容器
利用注册表服务器上的httpd镜像创建一个名为logserver的容器。
将其配置为systemd服务的形式运行,仅面向eldorado用户。
服务名应为container-logserver.service,此服务在重启系统后将自动启动。
注册表镜像服务器用户密码 admin/redhat321
二十二、配置容器持久化存储
配置systemd-journald服务,要求永久保留日志数据。
将/var/log/journal目录及任何子目录中的任何 *.journal 文件复制到/home/eldorado/container_journal中。
容器服务启动时自动将目录/home/eldorado/container_journal目录挂载到容器的/var/log/journal下。
推荐二十一、二十二一起答:
使用root登录到servera
ssh root@servera
修改systemd-journald的配置文件,设定日志为持久存储persistent
重启systemd-journald.service服务,并重启节点
systemctl restart systemd-journald.service
sync(三遍)
reboot
使用ssh登录eldorado到servera
ssh eldorado@servera
查看eldorado家目录下是否存在container_journal,不存在则创建
mkdir /home/eldorado/container_journal
复制文件
cp -a /var/log/journal/*/*.journal /home/eldorado/container_journal
登录镜像仓库(不验证tls安全层协议)
podman login registry.lab.example.com --tls-verify=false
下载镜像
podman pull registry.lab.example.com/rhel8/httpd-24 --tls-verify=false
查看镜像
podman images
创建并运行持久化存储的容器
podman run -itd --name -v logserver /home/eldorado/container_journal:/var/log/journal:Z 镜像ID
创建普通用户启动服务所用的目录,此目录名称固定且只能是 ~/.config/systemd/user
mkdir -p ~/.config/systemd/user
生成容器服务单元文件
podman generate systemd --name logserver --files
编辑生成的container-logserver.service文件
vim container-logserver.service
重载该配置文件,并设置开启自启
systemctl --user daemon-reload
systemctl --user enable container-logerver.service
给eldorado用户启用逗留功能
loginctl enable-linger eldorado
验证
使用ssh登录root用户到servera,退出,再用ssh登录eldorado,查看容器是否在运行
ssh root@servera
ssh eldorado@servera
podman ps
进入本机~/container_journal目录并创建文件ceshi,然后进入容器的/var/log/journal目录,查看是否存在ceshi文件
cd ~/container_journal;touch ceshi;ls
podman exec -it logserver /bin/bash
cd /var/log/journal;ls
在 venus.domain250.example.com 上执行以下任务
一、设置root密码
将 venus 的 root 密码设置为 flectrag
。您需要获得系统访问权限才能进行此操作
答案:
进入venus的console界面
通过Ctrl+Alt+Del重启
在选择内核界面按e进入下面界面并在如下位置输入rd.break console=tty0
按Ctrl+x 执行
mount -o remount,rw /sysroot
chroot /sysroot
echo flectrag | passwd --stdin root
touch /.autorelabel
exit
reboot
二、配置系统使用默认存储库
YUM 存储库已可以从 http://content/rhel8.0/x86_64/dvd/BaseOS
和 http://content/rhel8.0/x86_64/dvd/AppStream
使用配置您的系统,以将这些位置用作默认存储库
答案:
cd /etc/yum.repos.d/
vi venus.repo
[BaseOS]
name=BaseOS
baseurl=http://content/rhel8.0/x86_64/dvd/BaseOS
gpgcheck=0
enabled=1
[AppStream]
name=AppStream
baseurl=http://content/rhel8.0/x86_64/dvd/AppStream
gpgcheck=0
enabled=1
测试
yum makecache ;yum -y install vim
三、调整逻辑卷大小
将逻辑卷 vo
及其文件系统的大小调整到 230
MiB。确保文件系统内容保持不变。注:分区大小很少与请求的大小完全相同,因此可以接受范围为 217
MiB 到 243
MiB 的大小。
答案:
查看当前文件系统信息及lv、vg信息
判断vg大小后及应该对lv进行增大或减小的操作后
lvextend -L 230M /dev/myvol/vo
文件系统同步
resize2fs /dev/myvol/vo
四、添加交换分区
向您的系统添加一个额外的交换分区 756MiB
。交换分区应在系统启动时自动挂载
。不要删除或以任何方式改动系统上的任何现有交换分区。
答案:
判断各磁盘空间大小及后续题目限制(比如VDO卷题要求使用未分区的磁盘)
fdisk /dev/vdb
partprobe
使用mkswap格式化新分区
mkswap /dev/vdb2
写入配置文件(建议使用UUID)
自动挂载
swapon -a
验证
通过前后free查看swap容量大小也可验证变化
原来
现在
五、创建逻辑卷
-
逻辑卷取名为
qa
,属于qagroup
卷组,大小为60
个扩展块 -
qagroup
卷组中逻辑卷的扩展块大小应当为16 MiB
-
使用
ext3
文件系统格式化新逻辑卷。该逻辑卷应在系统启动时自动挂载到/mnt/qa
下
答案:
判断各磁盘空间大小决定使用哪个磁盘分区及后续题目限制(比如VDO卷题要求使用未分区的磁盘)
[root@venus ~]# fdisk /dev/vdb
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n
Partition number (3-128, default 3):
First sector (2549760-10485726, default 2549760):
Last sector, +sectors or +size{K,M,G,T,P} (2549760-10485726, default 10485726):
Created a new partition 3 of type 'Linux filesystem' and of size 3.8 GiB.
Command (m for help): w
The partition table has been altered.
Syncing disks.
[root@venus ~]# partprobe
[root@venus ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 16G 0 disk
├─vda1 252:1 0 10G 0 part /
└─vda2 252:2 0 1.2G 0 part
└─vgroup-swap 253:0 0 512M 0 lvm [SWAP]
vdb 252:16 0 5G 0 disk
├─vdb1 252:17 0 487.8M 0 part
│ └─myvol-vo 253:1 0 232M 0 lvm /reports
├─vdb2 252:18 0 756M 0 part [SWAP]
└─vdb3 252:19 0 3.8G 0 part
vdc 252:32 0 10G 0 disk
[root@venus ~]# pvcreate /dev/vdb3
Physical volume "/dev/vdb3" successfully created.
[root@venus ~]# vgcreate -s 16M qagroup /dev/vdb3
Volume group "qagroup" successfully created
[root@venus ~]# lvcreate -l 60 -n qa qagroup
Logical volume "qa" created.
[root@venus ~]# mkfs.ext3 /dev/qagroup/qa
mke2fs 1.44.3 (10-July-2018)
Creating filesystem with 245760 4k blocks and 61440 inodes
Filesystem UUID: 93f3ed7b-2086-4d14-a5f5-6097fddf9cc3
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
[root@venus ~]# mkdir /mnt/qa
[root@venus ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Thu Apr 4 08:39:20 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
UUID=884f47c9-a69d-4c5b-915d-6b7c9c74c923 / xfs defaults 0 0
/dev/myvol/vo /reports ext4 defaults 1 2
/dev/vgroup/swap none swap defaults 0 0
UUID=4fa8f3f7-9911-4d41-980d-f3bf3e2df8c9 swap swap defaults 0 0
UUID=93f3ed7b-2086-4d14-a5f5-6097fddf9cc3 /mnt/qa ext3 defaults 0 0
[root@venus ~]# mount -a
[root@venus ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 16G 0 disk
├─vda1 252:1 0 10G 0 part /
└─vda2 252:2 0 1.2G 0 part
└─vgroup-swap 253:0 0 512M 0 lvm [SWAP]
vdb 252:16 0 5G 0 disk
├─vdb1 252:17 0 487.8M 0 part
│ └─myvol-vo 253:1 0 232M 0 lvm /reports
├─vdb2 252:18 0 756M 0 part [SWAP]
└─vdb3 252:19 0 3.8G 0 part
└─qagroup-qa 253:2 0 960M 0 lvm /mnt/qa
vdc 252:32 0 10G 0 disk
六、创建VDO卷
-
使用未分区的磁盘
-
该卷的名称为
vdough
-
该卷的逻辑大小为
50G
-
该卷使用
xfs
文件系统格式化 -
该卷(在系统启动时)挂载到
/vbread
下
答案:
查找与VDO相关软件包并安装
[root@venus ~]# yum search vdo
Last metadata expiration check: 0:38:28 ago on Sat 25 Feb 2023 01:33:09 AM CST.
============================================================== Name Exactly Matched: vdo ==============================================================
vdo.x86_64 : Management tools for Virtual Data Optimizer
============================================================= Name & Summary Matched: vdo =============================================================
libblockdev-vdo.x86_64 : The vdo plugin for the libblockdev library
================================================================== Name Matched: vdo ==================================================================
kmod-kvdo.x86_64 : Kernel Modules for Virtual Data Optimizer
alsa-plugins-vdownmix.i686 : Downmixer to stereo plugin for ALSA
alsa-plugins-vdownmix.x86_64 : Downmixer to stereo plugin for ALSA
[root@venus ~]# yum -y install vdo.x86_64 kmod-kvdo.x86_64
查看帮助文档
[root@venus ~]# vdo create --name=vdough --device=/dev/vdc --vdoLogicalSize=50G
Creating VDO vdough
Starting VDO vdough
Starting compression on VDO vdough
VDO instance 0 volume is ready at /dev/mapper/vdough
[root@venus ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 16G 0 disk
├─vda1 252:1 0 10G 0 part /
└─vda2 252:2 0 1.2G 0 part
└─vgroup-swap 253:0 0 512M 0 lvm [SWAP]
vdb 252:16 0 5G 0 disk
├─vdb1 252:17 0 487.8M 0 part
│ └─myvol-vo 253:1 0 232M 0 lvm /reports
├─vdb2 252:18 0 756M 0 part [SWAP]
└─vdb3 252:19 0 3.8G 0 part
└─qagroup-qa 253:2 0 960M 0 lvm /mnt/qa
vdc 252:32 0 10G 0 disk
└─vdough 253:3 0 50G 0 vdo
[root@venus ~]# mkfs.xfs -K /dev/mapper/vdough
meta-data=/dev/mapper/vdough isize=512 agcount=4, agsize=3276800 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1
data = bsize=4096 blocks=13107200, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=6400, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
挂载信息写入配置文件
vim /etc/fstab
关键点 defaults,x-systemd,requires=vdo.service
创建挂载目录
mkdir /vbread
挂载并查看
[root@venus ~]# mount -a
[root@venus ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 16G 0 disk
├─vda1 252:1 0 10G 0 part /
└─vda2 252:2 0 1.2G 0 part
└─vgroup-swap 253:0 0 512M 0 lvm [SWAP]
vdb 252:16 0 5G 0 disk
├─vdb1 252:17 0 487.8M 0 part
│ └─myvol-vo 253:1 0 232M 0 lvm /reports
├─vdb2 252:18 0 756M 0 part [SWAP]
└─vdb3 252:19 0 3.8G 0 part
└─qagroup-qa 253:2 0 960M 0 lvm /mnt/qa
vdc 252:32 0 10G 0 disk
└─vdough 253:3 0 50G 0 vdo /vbread
七、配置系统调优
为您的系统选择建议的 tuned
配置集并将它设为默认设置。
答案:
[root@venus ~]# tuned-adm recommend
virtual-guest
[root@venus ~]# tuned-adm profile virtual-guest
[root@venus ~]# tuned-adm active
Current active profile: virtual-guest