当前位置: 首页 > 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.dtcms.com/a/320550.html

相关文章:

  • Chrome与Firefox浏览器安全运维配置命令大全:从攻防到优化的专业实践
  • 内网穿透原理与部署实战指南:从理论到企业级应用
  • React Hooks 完全指南:从概念到内置 Hooks 全解析
  • C++-->stl: list的使用
  • 为什么输入 URL 后会显示页面?HTTP 协议的 “幕后操作”
  • docker缓存目录转移设置和生效过程
  • 稿定科技:多云架构下的 AI 存储挑战与 JuiceFS 实践
  • 负氧离子监测站:守护清新空气的科技卫士
  • 从零掌握 Java AWT:原理、实战与性能优化
  • 用JOIN替代子查询的查询性能优化
  • 《前端60问:从设备判断到性能优化全解》
  • 高校合作 | 世冠科技联合普华、北邮项目入选教育部第二批工程案例
  • Emacs 折腾日记(二十九)—— 打造C++ IDE
  • 弱电+机房+设备+运维资料合集方案(Word+PPT)
  • 天翼云与飞轮科技达成战略合作,共筑云数融合新生态
  • 深入解析基于Zookeeper分布式锁在高并发场景下的性能优化实践指南
  • SQL聚合函数:SUM与COUNT的区别
  • 解锁Java开发新姿势:飞算JavaAI深度探秘 #飞算JavaAl炫技赛 #Java开发
  • 力扣-53.最大子数组和
  • Java基础知识总结
  • 文件管理从基础到高级:文件描述符、超大文件切片重组与快速删除实战
  • Android 的CameraX的使用(配置,预览,拍照,图像分析,录视频)
  • Harbor 企业级实战:单机快速上手 × 高可用架构搭建 × HTTPS安全加固
  • 音视频直播全链路技术手册:核心术语与实战应用解析
  • Flink的窗口
  • LangChain4j终极指南:Spring Boot构建企业级Agent框架
  • 双目标定中旋转矩阵参数应用及旋转角度计算(聚焦坐标系平行)
  • 三方相机问题分析七:【datespace导致GPU异常】facebook 黑块和Instagram花图问题
  • Linux Shell:Nano 编辑器备忘
  • 以下是使用这款ePub编辑器将指定章节转换为TXT文本文档的操作方法