当前位置: 首页 > news >正文

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
 hostnamectl hostname node1.example.com
 
 nmcli connection modify enp1s0 ipv4.addresses 192.168.122.10/24 ipv4.gateway 192.168.122.1 ipv4.dns 192.168.122.1 ipv4.method manual connection.autoconnect yes
 启动:nmcli connection up enp1s0
         
 终端连接node1 ssh root@node1
 exit
 
可以连接xshell方便
配置好终端后可通过ssh root@node1 连接
利用xshell连接终端的IP地址192.168.100.5
ssh root@node1 就可以切换到node1做题
2、配置默认软件仓库YUM
http://ansible.example.com/rhel9/BaseOS
http://ansible.example.com/rhel9/AppStream
请配置你的虚拟机,以将这些位置作为默认软件源
1.cd /etc/yum.repos.d
vim server.repo
[aa]
name=aal
baseurl=http://ansible.example.com/rhel9/BaseOS
enabled=1
gpgcheck=0

3、调试 SELinux
配置 httpd 在 82 端口上提供 Web 服务,满足以下要求:
1)此 Web 服务器能够提供/var/www/html/中所有现有的 HTML 文件
2)此 Web 服务器在系统启动时自动启动
3)确保 SELinux 保护机制运行在 Enforcing 模式
1.getenforce 查看是=是否处于Enforcing模式
修改:vim/etc/selinux/config
2.查看/var/www/html/中有哪些文件
cd /var/www/html/
3.ls -l
尝试去访问web服务器:file1 file2 file3都不行
4.配置防火墙
查看防火墙
firewall-cmd --list-all
发现82端口没有,所以添加允许82端口通过防火墙
firewall-cmd --add-port=82/tcp --permanent
firewall-cmd --reload
再次尝试还是不行
5.考虑selinux
查看http允许的端口
semanage port -l | grep http
添加:semanage port -a -t http_port_t -p tcp 82
重启:systemctl restart httpd
systrmctl enable httpd
再次尝试发现只有file不能访问web
6.考虑上下文标签
查看: ll -Z
修改:semanage fcontext -a -t http_sys_conent_t /var/www/html/file1
应用:restorecon -Rv /var/www/html/file1
7.访问web:curl http://node1:82/file1
4、配置用户账户
创建用户 tammy,其用户 ID 为 2024,此用户的密码应当是 redhat
1.创建用户:useradd -u 2024 tammy
2.创建密码:echo redhat | passwd --stdin tammy
5、创建用户账户
根据下列要求创建用户及组账号:
1)名为 admins 的组
2)用户 zhsan,其附属组为 admins
3)用户 lisi,其附属组还属于 admins
4)用户 wangwu,没有可交互的登录 Shell,且不属于 admins 组
5)zhsan、lisi、wangwu 的密码都应该是 redhat
1.创建一个组
groupadd admins
2.创建附属组
useradd -G admins zhsan
useradd -G admins lisi
3.创建没有交互的用户
useradd -s /sbin/nologin wangwu
4.创建密码
echo redcat | passwd --stdin zhsan
echo redcat | passwd --stdin lisi
echo redcat | passwd --stdin wangwu
6、配置 cron 计划任务
配置计划任务:
(1)以用户 zhsan 的身份每 5 分钟执行一次命令 logger "RH200 Test"
(2)以zhsan的身份每天下午2:28分执行一次命令logger "RH200 Test"
1.周期性任务
crontab -u zhsan -e
*/5 * * * * logger "RH200 Test"
28 14 * * * 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 文件
1.复制
cp /etc/hosts /var/tmp/hosts
2.查看文件权限
ll /var/tmp/hosts
观察文件属于哪一个用户和组以及权限
3.配置权限
setfacl -m u:zhsan:rw /var/tmp/hosts
setfacl -m u:lisi:--- /var/tmp/hosts
8、创建共用目录
创建具有以下特点的共用目录:
1)/home/tools 的组的所有权是 admins
2)此目录能被admins组的成员读取、写入和访问,除 root 外其他用户没有这些权限
在此目录下创建的文件,其组的所有权自动设置为 admins 组
1.创建目录
mkdir /home/tools
2.查看权限
ls -ld /home/tools
3.修改文件所属组
chgrp admins /home/tools
4.chmod g=rwx o=--- /home/tools
chmod g+s /home/hosts
9、配置NTP时间客户端
设置你的系统,使其成为 ansible.example.com 的 NTP 客户端。
1.检查chrony服务
2.vim /etc/chrony.conf
写入:server ansible.example.com iburst
3.重启
systemctl restart chronyd
systemctl enable chronyd
4.同步到硬盘
hwlock -w
5.检查
chronyc sources
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 写入
1.安装autofs
yum -y install autofs
2.挂载主目录
vim /etc/auto.master
/rhome /etc/auto.nfs
3.复制
cp /etc/auto.misc /etc/auto.nfs
4.挂载子目录
vim /etc/auto.nfs
remoteuser1 -fstype=nfs,vers=4,rw ansible.example.com:/rhome/remoteuser1
5.重启服务
systemctl restart autofs.service
systemctl enable autofs.service
6.验证
cd /chome
ls -a
cd remoteuser1/
11、查找文件
查找用户tammy的文件,并将其副本放入/root/files目录
1.创建目录
mkdir /root/files
2.find / -user tammy -exec cp -rf {} /root/files/\;
12、查找字符串
找出文件/etc/man_db.conf 中包含字符串 sbin 的所有行,将其副本按原始顺序存放到文件 /root/out.txt 中。文件/root/out.txt 中不得包含空行,且所有行必须是/etc/man_db.conf 中原始行的准确副本。
grep sbin /etc/man_db.conf | grep -v ^$ > /root/out.txt
13、创建归档
(1)创建一个名为/root/backup.tar.bz2 的 tar 归档,其应该包含/usr/local/的内容。此归档文件 必须使用 bzip2 进行压缩。
1.安装bzip2
yum -y install bzip2
2.tar -cjvf /root/backup.tar.bz2 /usr/local/
(2)创建一个名为/root/sysconfig.tar.gz 的 tar 归档,其应该包含/etc/sysconfig/的内容。此归档文件 必须使用 gzip 进行压缩。
tar -czvf /root/sysconfig.tar.gz /etc/sysconfig/
14、系统用户密码的有效期
在系统中新增的用户,要求 25 天后密码自动失效,密码过期前 5 天警告
vim /etc/login.defs
:MAX:25 WARM:5
15、配置sudo提权
为你的系统配置sudo提权,具体要求如下:
1)创建user1用户,设置用户密码为test。
2)授权user1组中的任何用户都可以无密码执行管理员命令
1.useradd user1
echo test | passwd --stdin user1
2.visudo

node2题目
1、设置root密码,并且设置网络参数
获得系统 node2 的管理权限,并将 node2 的 root 密码设置为 redhat
1.进入node2界面,找到“发送按键”选ctrl + alt delete
重启进入rescue 按e
2.在有linux这一行的最后写rd.break console.tty0
3.进入伪系统
挂载 mount -o remount,rw /sysroot/
chroot /sysroot/
4.修改密码:
echo redhat | passwd --stdin root
touch /.autorelabel
exit exit
2、配置软件仓库YUM
http://ansible.example.com/rhel9/BaseOS
http://ansible.example.com/rhel9/AppStream
请配置你的虚拟机,以将这些位置作为默认软件源。
1.复制nide1的yum仓库
scp root@node1:/etc/yum.repos.d/server.repo /etc/yum.repos.d/
2.验证
yum -y install net-tools
3、调整逻辑卷大小
将逻辑卷 lv0 及其文件系统大小调整到 300MiB。确保文件系统内容保持不变。
1.查看lv0有多少,再确定加多少内存,同时需要判定vg0够不够扩容
df -TH
vgdisplay
2.扩容:lvextend -L 300M /dev/vg0/lv0
3.同步:resize2fs /dev/vg0/lv0
4、添加交换分区
为你的系统额外添加一个 512MiB 的交换分区, 此交换分区应在系统启动时自动挂载,
不要删除或以任何方式改动系统上原有的交换分区。
创建一个512MiB的分区格式为swap写到swap分区就可以
1.查看哪个分区可以划分
parted -l
2.创建分区:
parted /dev/sdb
unit
MiB
mkpart
p
primary
w
3.加载:udevadm settle
4.加入内存
mkswap /dev/vdb2
vim /etc/fstab:
5.启用:swapon -a
5、创建逻辑卷
根据以下要求,创建新的逻辑卷:
1)逻辑卷的名字为 mylv,属于 myvg 卷组,大小为 50 个扩展单元
2)卷组 myvg 中的逻辑卷的扩展块大小应当为 16MiB
3)使用 vfat 文件系统将逻辑卷 mylv 格式化
此逻辑卷应当在系统启动时自动挂载到/mnt/mydata 目录下
1.创建分区2000m
parted /dev/sdb
重启:udevadm settle
2.创建物理卷,卷组
pvcreate /dev/vdb3
vgcreate -s 16M myvg /dev/vdb3
lvcreate -l 50 -n mylv myvg
3.格式化:mkfs.vfat /dev/myvg/mglv
4.挂载
mkdir /mnt/mydata
blkid
vim /etc/fstab

5.重新挂载
mount -a
6.查看
df -TH
6、配置系统调优
为你的系统选择建议的 tuned 配置集并将它设为默认设置
1.查看建议:
tuned-adm recommend
2.配置:
tuned-adm profile virtual-guest
3.激活:
tuned-amd active
http://www.lryc.cn/news/614668.html

相关文章:

  • 移动端开发中类似腾讯Bugly的产品推荐与比较-5款APP异常最终产品推荐-卓伊凡|bigniu
  • A100用transformers推理gpt-oss
  • 第六章第四节 PWM驱动LED呼吸灯 PWM驱动舵机 PWM驱动直流电机
  • 校招秋招春招小米在线测评小米测评题库|测评解析和攻略|题库分享
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘huggingface_hub’问题
  • Numpy科学计算与数据分析:Numpy高效数据处理与优化
  • Mac 电脑放在环境变量中的通用脚本
  • 免费PDF批量加密工具
  • 从零掌握 Java AWT:原理、实战与性能优化
  • 【沉浸式解决问题】pycharm关闭科学模式
  • 杰理ac791 [Info]: [LL_S]Recv - LL_CHANNEL_MAP_REQ
  • Python从入门到精通计划Day07: Python数据卷轴术:文件魔法与防御结界全指南
  • nlp-语义分析
  • 在 Vue 中使用 ReconnectingWebSocket实现即时通讯聊天客服功能
  • Java 使用 SSHJ 执行 SSH 命令和 SFTP 文件上传和下载
  • 【前端后端部署】将前后端项目部署到云服务器
  • Redis(④-消息队列削峰)
  • 吴恩达 深度学习笔记
  • Coze Studio 概览(九)--插件管理
  • 配电线路故障定位在线监测装置的技术解析与应用价值
  • 应急响应流程
  • 基于 C++ 的湍流数值模拟理论报告
  • 从零构建桌面写作软件的书籍管理系统:Electron + Vue 3 实战指南
  • 中小业务遭遇网络攻击,防护能力不足的解决办法​
  • electron 静默安装同时安装完成后自动启动(nsis)
  • Spark在什么情况下CBO才会判断失误,如何避免
  • 服务器登上去,显示 failed to send WATCHDOG 重启有效吗?
  • Uber的MySQL实践(一)——学习笔记
  • I/O原理与服务。
  • 智慧交通场景下 mAP↑28%:陌讯多模态融合算法实战解析