Linux综合练习2
Linux综合练习
前期准备工作:
root用户密码:redhat
进去后使用root用户执行一下命令,会弹出来一个窗口,右键运行node1和node2
[root@ansible ~]# virt-manager
node1主机root密码为redhat
node2主机root密码需要跟进题目需求进行破解
node1主机操作的题目:
1、配置网络地址
虚拟机 node1 的管理口令为 redhat
请为此虚拟机配置以下网络参数:
1)主机名:node1.example.com
2)IP 地址:192.168.122.10/24
3)默认网关:192.168.122.1
4)DNS 服务器:192.168.122.1
2、配置默认软件仓库YUM
http://ansible.example.com/rhel9/BaseOS
http://ansible.example.com/rhel9/AppStream
请配置你的虚拟机,以将这些位置作为默认软件源
3、调试 SELinux
配置 httpd 在 82 端口上提供 Web 服务,满足以下要求:
1)此 Web 服务器能够提供/var/www/html/中所有现有的 HTML 文件
2)此 Web 服务器在系统启动时自动启动
3)确保 SELinux 保护机制运行在 Enforcing 模式
防火墙允许通过
selinux端口标签
修改文件context值
确认模式
4、配置用户账户
创建用户 tammy,其用户 ID 为 2024,此用户的密码应当是 redhat
5、创建用户账户
根据下列要求创建用户及组账号:
1)名为 admins 的组
2)用户 zhsan,其附属组为 admins
3)用户 lisi,其附属组还属于 admins
4)用户 wangwu,没有可交互的登录 Shell,且不属于 admins 组
5)zhsan、lisi、wangwu 的密码都应该是 redhat
6、配置 cron 计划任务
配置计划任务:
(1)以用户 zhsan 的身份每 5 分钟执行一次命令 logger “RH200 Test”
(2)以zhsan的身份每天下午2:28分执行一次命令logger “RH200 Test”
7、配置文件权限
将文件/etc/hosts复制为/var/tmp/hosts并按要求配置/var/tmp/hosts的权限:
1)文件/var/tmp/hosts 属于 root 用户
2)文件/var/tmp/hosts 属于 root 组
3)任何用户对/var/tmp/hosts 都没有可执行权限
4)用户 zhsan 能够读取和写入/var/tmp/hosts 文件
5)用户 lisi 无法读取或写入/var/tmp/hosts 文件
6)所有其他用户(当前或未来)能够读取/var/tmp/hosts 文件
复制文件
acl
8、创建共用目录
创建具有以下特点的共用目录:
1)/home/tools 的组的所有权是 admins
2)此目录能被admins组的成员读取、写入和访问,除 root 外其他用户没有这些权限
在此目录下创建的文件,其组的所有权自动设置为 admins 组
9、配置NTP时间客户端
设置你的系统,使其成为 ansible.example.com 的 NTP 客户端。
[root@node1 ~]# vim /etc/chrony.conf
10、配置autofs
按照以下要求,通过 autofs 自动挂载远程用户的主目录:
1)ansible.example.com(192.168.122.1)通过 NFS 共享目录/rhome 到你的系统, 此文件系统中包含为用户 remoteuser1 预配置的主目录
2)预设用户 remoteuser1 的登录密码时 password
3)预设用户 remoteuser1 的主目录是 ansible.example.com:/rhome/remoteuser1
4)预设用户 remoteuser1 的主目录应自动挂载到本地的/rhome/remoteuser1 目录
挂载后的主目录必须可供用户 remoteuser1 写入
安装autofs
[root@node1 ~]# yum install autofs -y
编辑主映射文件
复制/etc/auto.misc到/etc/auto.nfs,然后修改/etc/auto.nfs
重启autofs
[root@node1 ~]# systemctl restart autofs.service
[root@node1 ~]# systemctl enable autofs.service
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.
成功挂载
11、查找文件
查找用户tammy的文件,并将其副本放入/root/files目录
[root@node1 ~]# mkdir /root/files
[root@node1 ~]# find / -user tammy -exec cp -rf {} /root/files/ \;
12、查找字符串
找出文件/etc/man_db.conf 中包含字符串 sbin 的所有行,将其副本按原始顺序存放到文件 /root/out.txt 中。文件/root/out.txt 中不得包含空行,且所有行必须是/etc/man_db.conf 中原始行的准确副本。
[root@node1 ~]# grep sbin /etc/man_db.conf | grep -v ^$ >/root/out.txt
13、创建归档
(1)创建一个名为/root/backup.tar.bz2 的 tar 归档,其应该包含/usr/local/的内容。此归档文件 必须使用 bzip2 进行压缩。
查看有无bzip2软件,如果没有则下载
[root@node1 ~]# yum install bzip2 -y
[root@node1 ~]# tar -czvf /root/backup.tar.bz2 /usr/local/
(2)创建一个名为/root/sysconfig.tar.gz 的 tar 归档,其应该包含/etc/sysconfig/的内容。此归档文件 必须使用 gzip 进行压缩。
[root@node1 ~]# tar -czvf /root/sysconfig.tar.gz /etc/sysconfig
14、系统用户密码的有效期
在系统中新增的用户,要求 25 天后密码自动失效,密码过期前 5 天警告
修改配置文件
[root@node1 ~]# vim /etc/login.defs
15、配置sudo提权
为你的系统配置sudo提权,具体要求如下:
1)创建user1用户,设置用户密码为test。
[root@node1 ~]# useradd user1
[root@node1 ~]# echo test | passwd --stdin user1
2)授权user1组中的任何用户都可以无密码执行管理员命令
修改配置文件
visudo
node2题目
1、设置root密码,并且设置网络参数
获得系统 node2 的管理权限,并将 node2 的 root 密码设置为 redhat
在linux行末尾添加 rd.break console=tty0
修改root密码
2、配置软件仓库YUM
http://ansible.example.com/rhel9/BaseOS
http://ansible.example.com/rhel9/AppStream
请配置你的虚拟机,以将这些位置作为默认软件源。
通过scp远程复制node1的yum仓库配置文件
[root@node2 yum.repos.d]# scp root@node1:/etc/yum.repos.d/server.repo /etc/yum.repos.d/
3、调整逻辑卷大小
将逻辑卷 lv0 及其文件系统大小调整到 300MiB。确保文件系统内容保持不变。
查看卷组的大小是否够给逻辑卷扩容
[root@node2 ~]# vgdisplay --- Volume group ---VG Name vg0System ID Format lvm2Metadata Areas 1Metadata Sequence No 2VG Access read/writeVG Status resizableMAX LV 0Cur LV 1Open LV 1Max PV 0Cur PV 1Act PV 1VG Size 596.00 MiBPE Size 4.00 MiBTotal PE 149Alloc PE / Size 40 / 160.00 MiBFree PE / Size 109 / 436.00 MiBVG UUID f2yYVj-nRu5-4Lpw-HKqW-FjDd-tmnu-Y7mCht
扩容lv
4、添加交换分区
为你的系统额外添加一个 512MiB 的交换分区, 此交换分区应在系统启动时自动挂载,
不要删除或以任何方式改动系统上原有的交换分区。
首先查看硬盘大小是否足够,然后分区
[root@node2 ~]# parted -l
[root@node2 ~]# parted /dev/vdb
(parted) unit #修改单位 单位? [compact]? mib
(parted) p
型号:Virtio 块设备 (virtblk)
磁盘 /dev/vdb:10240MiB
扇区大小 (逻辑/物理):512B/512B
分区表:msdos
磁盘标志:编号 起始点 结束点 大小 类型 文件系统 标志1 10.0MiB 610MiB 600MiB primary(parted) mkpart
分区类型? primary/主分区/extended/扩展? primary
文件系统类型? [ext2]?
起始点? 620mib
结束点? 1132mib
(parted) p
型号:Virtio 块设备 (virtblk)
磁盘 /dev/vdb:10240MiB
扇区大小 (逻辑/物理):512B/512B
分区表:msdos
磁盘标志:编号 起始点 结束点 大小 类型 文件系统 标志1 10.0MiB 610MiB 600MiB primary2 620MiB 1132MiB 512MiB primary ext2格式化
[root@node2 ~]# udevadm settle
[root@node2 ~]# mkswap /dev/vdb2
正在设置交换空间版本 1,大小 = 512 MiB (536866816 个字节)
无标签,UUID=c3af19e0-55c9-4a4a-acc2-80ab37afdf03
永久挂载
vim /etc/fstab
UUID=c3af19e0-55c9-4a4a-acc2-80ab37afdf03 swap swap defaults 0 0[root@node2 ~]# swapon -a
5、创建逻辑卷
根据以下要求,创建新的逻辑卷:
1)逻辑卷的名字为 mylv,属于 myvg 卷组,大小为 50 个扩展单元
2)卷组 myvg 中的逻辑卷的扩展块大小应当为 16MiB
3)使用 vfat 文件系统将逻辑卷 mylv 格式化
此逻辑卷应当在系统启动时自动挂载到/mnt/mydata 目录下
创建分区
(parted) mkpart
分区类型? primary/主分区/extended/扩展? primary
文件系统类型? [ext2]?
起始点? 1150mib
结束点? 3150mib
[root@node2 ~]# udevadm settle
创建物理卷
[root@node2 ~]# pvcreate /dev/vdb3
创建卷组,扩展块大小为16mib
[root@node2 ~]# vgcreate -s 16M myvg /dev/vdb3
创建逻辑卷
[root@node2 ~]# lvcreate -l 50 -n mylv myvg
格式化
[root@node2 ~]# mkfs.vfat /dev/myvg/mylv
mkfs.fat 4.2 (2021-01-31)
自动挂载
[root@node2 ~]# mkdir /mnt/mydata
vim /etc/fstab
UUID=3F3B-33BC /mnt/mydata vfat defaults 0 0[root@node2 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 982M 0 982M 0% /dev/shm
tmpfs 393M 5.6M 388M 2% /run
/dev/vda3 6.2G 1.5G 4.8G 23% /
/dev/vda1 1014M 178M 837M 18% /boot
/dev/mapper/vg0-lv0 275M 14K 259M 1% /reports
tmpfs 197M 0 197M 0% /run/user/0
/dev/mapper/myvg-mylv 799M 4.0K 799M 1% /mnt/mydata
6、配置系统调优
为你的系统选择建议的 tuned 配置集并将它设为默认设置
查看系统建议配置
[root@node2 ~]# tuned-adm recommend
virtual-guest
设置为默认配置
[root@node2 ~]# tuned-adm profile virtual-guest
激活
[root@node2 ~]# tuned-adm active
Current active profile: virtual-guest