您好,登錄后才能下訂單哦!
如何為 Linux 服務器安裝 GRUB
當您無法通過 遷云工具 遷移內核版本較低,自帶系統引導程序 GRand Unified Bootloader(GRUB)版本為 1.99 以下的 Linux 服務器,例如,CentOS 5 和 Debian 7。而且日志文件提示 Do Grub Failed 時,可能是因為沒有安裝 1.99 以上版本的系統引導程序 GRUB。
本文主要介紹如何為您的源服務器安裝系統引導程序 GRUB 1.99 版本。安裝 GRUB 1.99 及以上版本如 1.99 和 2.02 的過程一致,主要差異在于安裝過程中下載的GRUB版本源碼包不同,您可訪問 https://alpha.gnu.org/gnu/grub/ 獲取新版本的下載地址。
安裝 GRUB 1.99 版本
登錄源服務器。
運行以下命令查看原 grub、grub-install 以及 grub-mkconfig 的路徑:
which grub which grub-install which grub-mkconfig
使用 mv 命令為舊版本 grub、grub-install 以及 grub-mkconfig 改名以備份文件。您可以在使用遷云工具遷移服務器后,恢復原名以使用原配置。
mv /sbin/grub /sbin/grub-old mv /sbin/grub-install /sbin/grub-install-old mv /sbin/grub-mkconfig /sbin/grub-mkconfig-old
運行 yum install -y bison gcc make 安裝 GRUB 依賴的 bison、gcc 以及 make 工具。
運行以下命令安裝 flex。
test -d /root/tools || mkdir -p /root/tools cd /root/tools wget https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz tar xzf flex-2.6.4.tar.gz cd flex-2.6.4 mkdir -p build cd build ../configure make && make install ln -s /usr/local/bin/flex /usr/bin/flex
運行以下命令安裝 GRUB 1.99 依賴。
test -d /root/tools || mkdir -p /root/tools cd /root/tools wget https://alpha.gnu.org/gnu/grub/grub-1.99~rc1.tar.gz tar xzf grub-1.99~rc1.tar.gz cd grub-1.99~rc1 mkdir -p build cd build ../configure sed -i -e "s/-Werror//" ./grub-core/Makefile make && make install ln -s /usr/local/sbin/grub-install /sbin/grub-install ln -s /usr/local/sbin/grub-mkconfig /sbin/grub-mkconfig
說明:若編譯過程中出現了 -Werror 報錯,您可以定位到編譯對象的編譯文件 makefile 中,去掉 -Werror 選項重新編譯。
運行 grub-install --version 檢查 GRUB 版本是否更新為 1.99。
下一步
成功更新系統引導程序 GRUB 1.99 版本后,您可以使用 遷云工具 遷移服務器至阿里云。
(可選)遷云成功后,運行以下命令恢復使用舊版本 GRUB:
rm /sbin/grub-install rm /sbin/grub-mkconfig rm /boot/grub/grub.cfg mv /sbin/grub-old /sbin/grub mv /sbin/grub-install-old /sbin/grub-install
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。