A.15 软件包管理器
A.15.1 dnf
- 清理升级后的 CentOS 8 系统内核
查找系统安装的内核
rpm -qa | sort | grep kernel
kernel-4.18.0-147.8.1.el8_1.x86_64
kernel-4.18.0-193.6.3.el8_2.x86_64
kernel-core-4.18.0-147.8.1.el8_1.x86_64
kernel-core-4.18.0-193.6.3.el8_2.x86_64
kernel-headers-4.18.0-193.6.3.el8_2.x86_64
kernel-modules-4.18.0-147.8.1.el8_1.x86_64
kernel-modules-4.18.0-193.6.3.el8_2.x86_64
kernel-tools-4.18.0-193.6.3.el8_2.x86_64
kernel-tools-libs-4.18.0-193.6.3.el8_2.x86_64
仅保留一个版本的内核,其它旧的内核都删除掉
sudo dnf remove $(dnf repoquery --installonly --latest-limit=-1 -q)
模块依赖问题
问题 1: conflicting requests
- nothing provides module(perl:5.26) needed by module perl-DBD-MySQL:4.046:8010020191114030811:073fa5fe-0.x86_64
问题 2: conflicting requests
- nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020191113222731:16b3ab4d-0.x86_64
问题 3: conflicting requests
- nothing provides module(perl:5.26) needed by module perl-YAML:1.24:8010020191114031501:a5949e2e-0.x86_64
依赖关系解决。
=======================================================================================================================
软件包 架构 版本 仓库 大小
=======================================================================================================================
移除:
kernel x86_64 4.18.0-147.8.1.el8_1 @BaseOS 0
kernel-core x86_64 4.18.0-147.8.1.el8_1 @BaseOS 58 M
kernel-modules x86_64 4.18.0-147.8.1.el8_1 @BaseOS 20 M
事务概要
=======================================================================================================================
移除 3 软件包
将会释放空间:78 M
确定吗?[y/N]: y
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
准备中 : 1/1
删除 : kernel-4.18.0-147.8.1.el8_1.x86_64 1/3
运行脚本: kernel-4.18.0-147.8.1.el8_1.x86_64 1/3
删除 : kernel-modules-4.18.0-147.8.1.el8_1.x86_64 2/3
运行脚本: kernel-modules-4.18.0-147.8.1.el8_1.x86_64 2/3
运行脚本: kernel-core-4.18.0-147.8.1.el8_1.x86_64 3/3
删除 : kernel-core-4.18.0-147.8.1.el8_1.x86_64 3/3
运行脚本: kernel-core-4.18.0-147.8.1.el8_1.x86_64 3/3
验证 : kernel-4.18.0-147.8.1.el8_1.x86_64 1/3
验证 : kernel-core-4.18.0-147.8.1.el8_1.x86_64 2/3
验证 : kernel-modules-4.18.0-147.8.1.el8_1.x86_64 3/3
已移除:
kernel-4.18.0-147.8.1.el8_1.x86_64 kernel-core-4.18.0-147.8.1.el8_1.x86_64
kernel-modules-4.18.0-147.8.1.el8_1.x86_64
完毕!
解决上述模块依赖问题的办法 是重置三个 Perl 模块
sudo dnf module reset perl-DBD-MySQL perl-YAML perl-DBI
依赖关系解决。
=======================================================================================================================
软件包 架构 版本 仓库 大小
=======================================================================================================================
重置模块:
perl-DBD-MySQL
perl-DBI
perl-YAML
事务概要
=======================================================================================================================
确定吗?[y/N]: y
完毕!
A.15.2 apt
添加或删除 PPA (Personal Package Archive),比如在 Ubuntu 20.04 及之前的版本上安装新版 Inkscape
sudo add-apt-repository ppa:inkscape.dev/stable
sudo add-apt-repository --remove ppa:inkscape.dev/stable
sudo apt-get install build-essential # 修复依赖问题
sudo apt update # 更新资源列表
sudo apt-get upgrade # 更新软件包
sudo apt-get autoclean # 删除已卸的软件的备份
sudo apt-get clean # 删除已装或已卸的软件的备份
sudo apt-get autoremove --purge * # 推荐卸载软件的方式
apt-get list --upgradable # 列出可升级的包
找到并删除旧的内核
dpkg --list | grep linux-image
sudo apt-get purge linux-image-3.19.0-{18,20,21,25}
sudo update-grub2
# 搜索
apt-cache search octave | grep octave
# 查询
apt show octave
# 安装
sudo apt install octave
sudo apt-get install lsb-core
lsb_release -a
adduser cloud2016 # 添加用户
passwd cloud2016 # 用户密码设为 cloud
whereis sudoers # 查找文件位置
chmod -v u+w /etc/sudoers # 给文件 sudoers 添加写权限
vim /etc/sudoers # 添加 cloud2016 管理员权限
chmod -v u-w /etc/sudoers # 收回权限
安装确认 openssh-server 服务
sudo apt install openssh-server
sudo /etc/init.d/ssh start
ps -aux | grep ssh