报错代码
rpmdb BDB0113 Thread/process
解决方法
步骤一:删除 YUM 的软件数据库
# rm -rf /var/lib/rpm/_db*
步骤二:重建 YUM 的软件数据库
# rpm --rebuilddb
步骤三:清除 YUM 缓存
# yum clean all
步骤四:显示 YUM 是否恢复正常
# yum repolist
rpmdb BDB0113 Thread/process
# rm -rf /var/lib/rpm/_db*
# rpm --rebuilddb
# yum clean all
# yum repolist
1) 从 CentOS8&RHEL8 开始默认使用 dnf 管理软件和补丁安装
2) dnf 也是 yum v4
3) dnf 的命令参数和 yum 一样
4) dnf 软件源的配置方法和 yum 一样
1) BaseOS 系统和基础的软件包
2) AppStream 其余所有官方的软件包
# rm /etc/yum.repos.d/*.repo
# vim /etc/yum.repos.d/CentOS-AppStream.repo
创建以下内容:
[AppStream]
name=CentOS-$releasever - AppStream
baseurl=http://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# vim /etc/yum.repos.d/CentOS-Base.repo
创建以下内容:
[BaseOS]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# vim /etc/yum.repos.d/CentOS-Epel.repo
创建以下内容:
[epel]
name=CentOS-$releasever - Epel
baseurl=http://mirrors.aliyun.com/epel/8/Everything/$basearch
enabled=1
gpgcheck=0
# vim /etc/yum.repos.d/CentOS-Media.repo
创建以下内容:
[c8-media-BaseOS]
name=CentOS-BaseOS-$releasever - Media
baseurl=file:///media/CentOS/BaseOS/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
[c8-media-AppStream]
name=CentOS-AppStream-$releasever - Media
baseurl=file:///media/CentOS/AppStream/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
# dnf clean all
# dnf repolist
# yum -x httpd* updaten
(补充:这里以更新除了名字以 httpd 开头外的所有软件包为例)
(注意:这种方法只在本次输入时有效)
或者:
# yum --exclude=kernel* update
(补充:这里以更新除了名字以 kernel 开头外的所有软件包为例)
(注意:这种方法只在本次输入时有效)
# vim /etc/yum.conf
添加以下内容:
......
exlude=mysql* kernel*
(补充:多个不需要升级的软件可以用空格隔开)
(注意:这里修改的配置文件可能是 /etc/yum.conf 也可能是 /etc/yum/yum.conf)
# yum update
# yum install yum-versionlock
# yum versionlock httpd*
(补充:这里以锁定名字以 httpd 开头的所有软件包为例)
# yum update
# yum versionlock list
# yum versionlock delete httpd*
(补充:这里以解除锁定名字以 httpd 开头的所有软件包为例)
# yum versionlock clear
服务器系统要配置好可用的软件源
# cat /proc/version
# uname -a
# lsb_release -a
(
补充:
1) 如果系统没有 lsb_release 命令则可以单独安装一个
2) CentOS & RHEL 安装 lsb_release 命令的方法:
# yum -y install redhat-lsb-core
3) openSUSE & SUSE 安装 lsb_release 命令的方法:
# zypper -n in lsb-release
)
# cat /etc/*release*
# cat /etc/issue
# mkdir /etc/yum.repos.d/repobackup
# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobackup/
# rm -rf /etc/yum.repos.d/*.repo
# yum-config-manager --add-repo http://example.com/
(补充:这里的 http://example.com/ 指的是官方提供的公共 yum 库链接)
(注意:添加了这个源之后确保对应的 /etc/yum.repos.d/ 配置文件中的 enable=0)
# vim /etc/yum.repos.d/local.repo
创建以下内容:
[local]
name=local
baseurl=file:///temp
enabled=1
gpgcheck=0
(补充:这里以软件仓库在 /temp 为例)
# yum clean all
# yum repolist