Linux初学者在CentOS 7虚拟机中rpm、yum、dnf的操作练习

Linux初学者在CentOS 7虚拟机中rpm/yum/dnf的操作练习

本篇文章为个人练习用,仅供参考

学习部分:Linux应用程序的安装与管理

环境准备

  1. 创建CentOS 7虚拟机(最小化安装)
  2. 获取CentOS ISO镜像(用于本地仓库)
  3. 以root用户登录或使用sudo权限

第一阶段:基础操作练习

1. RPM包管理实战
复制代码
# 挂载CentOS ISO镜像
mount -t iso9660 /dev/cdrom /mnt  # 或指定ISO路径

# 浏览ISO中的RPM包
ls /mnt/Packages | grep zip       # 查找zip相关包

# 安装zip工具
rpm -ivh /mnt/Packages/zip-3.0-*.el7.x86_64.rpm

# 验证安装
rpm -q zip                              # 查询是否安装
which zip                               # 查看执行路径

# 查看包信息
rpm -qi zip                             # 详细信息
rpm -ql zip                             # 查看安装的文件

# 卸载软件包
rpm -e zip
rpm -q zip                              # 验证已卸载
2. YUM基础操作
复制代码
# 配置本地YUM仓库
cd /etc/yum.repos.d/
vim server.repo

[local]
name=Local CentOS Repository
baseurl=file:///mnt/
enabled=1
gpgcheck=0


# 清理缓存
yum clean all

# 安装HTTP服务器
yum install -y httpd

# 查看安装的包
yum list installed | grep httpd

# 卸载软件包
yum remove -y httpd

第二阶段:进阶技巧练习

1. 解决依赖问题
复制代码
# 尝试安装有依赖的软件
yum install -y postgresql-server

# 查看解决的依赖
yum deplist postgresql-server

# 手动下载依赖包练习
yumdownloader postgresql-libs           # 需先安装yum-utils
rpm -ivh postgresql-libs-*.rpm --test   # 测试安装
2. 软件组管理
复制代码
# 查看可用软件组
yum group list

# 安装开发工具组
yum groupinstall -y "Development Tools"

# 移除软件组
yum groupremove -y "Development Tools"

第三阶段:DNF体验(需手动安装)

复制代码
# 在阿里云Centos镜像网站复制下载Centos7
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

# 安装DNF
yum install -y dnf

# DNF基础操作(与YUM相似)
dnf install -y nano
dnf info nano
dnf history                              # 更详细的历史记录
dnf remove -y nano

# 比较YUM和DNF速度
time yum install -y tree
time dnf install -y tree

第四阶段:综合项目

搭建LAMP环境
复制代码
# 1. 安装Apache
yum install -y httpd
systemctl start httpd

# 2. 安装MariaDB
yum install -y mariadb-server
systemctl start mariadb
mysql_secure_installation                # 安全初始化

# 3. 安装PHP
yum install -y php php-mysql

# 4. 测试安装
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
curl http://localhost/info.php           # 应显示PHP信息

故障排除练习

复制代码
# 1. 模拟依赖问题
rpm -e zlib --nodeps                    # 危险操作!仅用于练习
yum install httpd                       # 将报错

# 2. 修复依赖
yum install -y zlib                     # 重新安装依赖

# 3. 仓库故障模拟
mv /etc/yum.repos.d/local.repo /tmp      # 移走仓库文件
yum update                              # 观察错误信息
mv /tmp/local.repo /etc/yum.repos.d/    # 恢复仓库

学习建议

  1. 每日练习:

    复制代码
    # 每日任务:安装/卸载一个随机软件
    random_pkg=$(yum list available | shuf -n 1 | awk '{print $1}')
    yum install -y $random_pkg
    yum remove -y $random_pkg
  2. 日志分析:

    bash

    复制代码
    tail -f /var/log/yum.log              # 实时查看操作记录
  3. 安全练习:

    复制代码
    # 启用GPG检查
    sed -i 's/gpgcheck=0/gpgcheck=1/' /etc/yum.repos.d/local.repo
    yum clean all
    yum update                           # 观察错误

虚拟机快照策略

  1. 初始状态:纯净的CentOS 7最小化安装
  2. 练习前快照:每次练习前创建快照
  3. 故障恢复:当系统损坏时回滚快照

提示 :使用yum history undo <ID>可撤销操作,比虚拟机快照更快恢复

相关推荐
分布式存储与RustFS13 分钟前
给 RustFS 桶加一层内存缓存:用 Alluxio 让热数据少跑一遍网络
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
Oiiouui39 分钟前
linux服务器部署Logto后端与对应前端的实现
linux·服务器·前端·后端
ITKEY_1 小时前
用 Emacs Dired 实现 em:退出文件管理器后,让终端自动切换目录
linux·服务器·emacs
wt95271 小时前
VMware 虚拟机磁盘扩容实战文档(Ubuntu 22.04 + LVM)
linux·后端
就像楞次定律1 小时前
【Linux 学习记之二】C++ 构建体系与底层链接机制的深度透视(2)
linux·后端
Decay__2 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
无足鸟ICT2 小时前
【RHCA+】slabtop命令(查看slab缓存)
linux
且从容.2 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
青梅味猪大肠3 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
迪康coolmu3 小时前
企业U盘管控落地实战:基于迪康端点安全一体化管理系统的移动存储安全实践
运维·人工智能·经验分享·笔记·安全·电脑