CentOS系統升級是一個復雜的過程,涉及到多個步驟和注意事項。以下是一個詳細的CentOS系統升級指南,以CentOS 7為例,涵蓋了從準備到升級的全過程。
cat /etc/redhat-release 查看當前系統版本。/etc/yum.repos.d/upgrade.repo 文件,確保使用最新的CentOS版本倉庫。preupgrade-assistant-contents 和 redhat-upgrade-tool,這些工具在升級過程中起到關鍵作用。preupgrade-assistant -s 等工具檢查系統兼容性和潛在問題。導入ELRepo倉庫:
yum -y update
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
安裝新內核:
sudo yum --enablerepo=elrepo-kernel install kernel-ml
或sudo yum --enablerepo=elrepo-kernel install kernel-lt
根據需要選擇適當的內核版本,kernel-ml 代表Mainline Kernel,是最新的穩定版本,kernel-lt 代表長期支持(LTS)版本。更新GRUB引導器:
sudo awk -F\' '$1=="menuentry "{printi++" : "$2}' /etc/grub2.cfg
grub2-set-default 'CentOS Linux (最新版本) 7 (Core)'
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
重啟服務器:
reboot
驗證是否升級成功:
uname -r
安裝編譯環境:
yum groupinstall "Development Tools" -y && \
yum install -y \
openssl-devel \
rpm-build \
redhat-rpm-config \
asciidoc \
hmaccalc \
perl-ExtUtils-Embed \
pesign \
xmlto \
audit-libs-devel \
binutils-devel \
elfutils-devel \
elfutils-libelf-devel \
ncurses-devel \
newt-devel \
numactl-devel \
pciutils-devel \
python-devel \
zlib-devel \
rpm-build
下載內核源代碼并解壓:
wget https://mirrors.tuna.tsinghua.edu.cn/kernel/v6.x/linux-6.9.4.tar.gz
tar -xzf linux-6.9.4.tar.gz
cd linux-6.9.4
配置內核:
.config:cp /boot/config-3.10.0-957.el7.x86_64 .config
make oldconfig
make menuconfig
編譯安裝內核:
make -j12
安裝內核:
make modules_install
make install
設置以后默認從新的內核啟動:
grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
重啟服務器:
reboot
檢查內核版本:
uname -r
刪除多余內核:
rpm -qa | grep kernel
yum remove <舊內核版本>
通過以上步驟,您可以成功地將CentOS系統升級到最新版本。請注意,內核升級屬于高危操作,務必在了解操作風險的前提下進行,并在生產環境之外進行測試。