1. 虚拟机创建与RHEL9系统安装全流程
作为Linux系统管理员的基础技能,虚拟机环境搭建是每个运维人员必须掌握的入门操作。我将以VMware Workstation Pro 17为例,详细演示RHEL9系统的完整安装过程。
1.1 虚拟机创建规范步骤
在VMware中创建虚拟机时,有几个关键参数需要特别注意:
- 处理器配置:建议至少2核,如果是开发环境可分配更多核心
- 内存分配:RHEL9最小需要2GB,图形界面建议4GB以上
- 磁盘空间:系统分区建议50GB起步,选择"将虚拟磁盘拆分成多个文件"更便于迁移
- 网络适配器:通常选择NAT模式即可满足大多数场景
重要提示:安装前务必确认CPU已开启虚拟化支持(Intel VT-x/AMD-V),否则会出现性能问题
安装ISO镜像推荐使用Red Hat官方提供的RHEL9.2版本。在安装类型选择时:
- 新手建议选"带GUI的服务器"(GNOME桌面环境)
- 生产环境通常选择"最小安装"后再按需添加软件包
1.2 系统初始化配置要点
首次启动安装程序后,需要特别注意以下配置项:
- 时区设置:选择Asia/Shanghai并取消UTC时间同步
- 软件选择:基础环境建议勾选"开发工具"和"系统管理工具"
- 磁盘分区:建议手动分区方案:
- /boot:1GB(标准分区)
- swap:内存的1.5倍(不超过16GB)
- /:剩余所有空间(LVM逻辑卷)
- 根密码:设置足够复杂的密码(建议16位以上混合字符)
安装完成后,建议立即执行:
bash复制dnf update -y
systemctl enable --now firewalld
2. SSH远程连接实战技巧
2.1 基础连接方法验证
完成系统安装后,首先需要确认网络连通性。在虚拟机内执行:
bash复制ip a
记录显示的IP地址(通常是192.168.x.x)。从宿主机尝试ping测试:
bash复制ping 192.168.202.168
常见问题:如果无法ping通,检查VMware虚拟网络编辑器中的NAT设置
2.2 SSH连接进阶配置
默认情况下RHEL9已安装openssh-server,但需要调整配置提升安全性:
bash复制vim /etc/ssh/sshd_config
建议修改以下参数:
code复制Port 2222 # 修改默认端口
PermitRootLogin no # 禁止root直接登录
PasswordAuthentication no # 强制密钥认证
配置完成后重启服务:
bash复制systemctl restart sshd
3. Linux文件管理核心命令精讲
3.1 目录操作黄金法则
在/opt下创建临时目录的标准做法:
bash复制mkdir -p /opt/tmp && chmod 1777 /opt/tmp
这里使用-p参数确保父目录存在,chmod 1777设置粘滞位(防止用户误删他人文件)
创建测试文件的三种专业方式对比:
- 快速创建空文件:
bash复制touch /opt/tmp/a.txt
- 带内容创建:
bash复制echo "test content" > /opt/tmp/a.txt
- 交互式创建:
bash复制cat > /opt/tmp/a.txt <<EOF
> 多行内容
> 可以这样输入
> EOF
3.2 文件操作生产环境实践
复制系统文件时的权限保持技巧:
bash复制cp -a /boot/grub2/grub.cfg /opt/tmp/
-a参数等同于-dR --preserve=all,保留所有属性和链接
查找并删除特定内容的专业方法:
bash复制grep -n '#' /opt/tmp/grub.cfg # 先确认要删除的行
sed -i '/#/d' /opt/tmp/grub.cfg # 实际删除操作
比手动dd删除更高效安全,特别适合批量处理
4. VIM编辑器高效使用指南
4.1 基础操作强化训练
创建文件并插入日期的正确姿势:
bash复制vim /tmp/newfile
进入插入模式后,输入日期最快的方法是:
code复制:r!date
这会将系统当前日期时间插入光标位置
4.2 高级功能实战应用
合并文件内容的专业方法:
- 在vim命令模式下:
code复制:r /boot/grub2/grub.cfg
- 或者使用外部命令:
code复制:0r!cat /boot/grub2/grub.cfg
显示行号的持久化配置(修改vimrc):
bash复制echo "set number" >> ~/.vimrc
4.3 VIM生产环境技巧
- 批量替换:
code复制:%s/old/new/g
- 多窗口编辑:
code复制:sp 水平分割
:vsp 垂直分割
- 代码折叠:
code复制set foldmethod=indent
5. 运维必备问题排查手册
5.1 网络连接故障排查
当SSH连接失败时,按此流程检查:
- 检查服务状态:
bash复制systemctl status sshd
- 检查防火墙规则:
bash复制firewall-cmd --list-all
- 检查端口监听:
bash复制ss -tulnp | grep ssh
5.2 文件权限问题处理
遇到Permission denied时的解决步骤:
- 查看当前权限:
bash复制ls -l /path/to/file
- 检查SELinux状态:
bash复制getenforce
- 临时解决方案:
bash复制chmod 755 /path/to/directory
- 永久解决方案:
bash复制semanage fcontext -a -t httpd_sys_content_t "/path/to/directory(/.*)?"
restorecon -Rv /path/to/directory
6. 生产环境优化建议
- 定期清理/tmp目录:
bash复制find /tmp -type f -atime +7 -delete
- 日志轮转配置示例(/etc/logrotate.d/custom):
code复制/var/log/custom.log {
daily
rotate 30
compress
missingok
notifempty
}
- 系统性能监控:
bash复制yum install sysstat -y
sar -u 1 3 # CPU使用率
sar -r 1 3 # 内存使用