LinuxサーバーにGRUBをインストールする手順

LinuxサーバーにGRUBをインストールする手順

Linux サーバーに GRUB をインストールする方法

クラウド移行ツールを使用して、CentOS 5 や Debian 7 など、カーネル バージョンが低く、組み込みシステム ブート ローダー GRand Unified Bootloader (GRUB) バージョンが 1.99 未満の Linux サーバーを移行することはできません。また、ログ ファイルに「Do Grub Failed」というメッセージが表示される場合は、システム ブート プログラム GRUB バージョン 1.99 以上がインストールされていないことが原因である可能性があります。

この記事では主に、ソース サーバーにシステム ブート プログラム 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 のパスを表示するには、次のコマンドを実行します。

どのグラブ
どのgrub-install
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 をインストールするには、次のコマンドを実行します。

テスト -d /root/tools || mkdir -p /root/tools
cd /root/tools
https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz をダウンロードしてください
tar xzf flex-2.6.4.tar.gz
フレックス-2.6.4
mkdir -p ビルド
CDビルド
../設定
作成 && インストール
ln -s /usr/local/bin/flex /usr/bin/flex

GRUB 1.99 の依存関係をインストールするには、次のコマンドを実行します。

テスト -d /root/tools || mkdir -p /root/tools
cd /root/tools
https://alpha.gnu.org/gnu/grub/grub-1.99~rc1.tar.gz をダウンロードしてください
tar xzf grub-1.99~rc1.tar.gz
grub-1.99~rc1 をインストールします
mkdir -p ビルド
CDビルド
../設定
sed -i -e "s/-Werror//" ./grub-core/Makefile
作成 && インストール
ln -s /usr/local/sbin/grub-install /sbin/grub-install
コマンドラインからgrub-mkconfigを実行します。

注: コンパイル中に -Werror エラーが発生した場合は、コンパイル オブジェクトのコンパイル ファイル makefile を見つけて、-Werror オプションを削除し、再コンパイルすることができます。

grub-install --version を実行して、GRUB バージョンが 1.99 に更新されているかどうかを確認します。

次のステップ

システムブートプログラム GRUB 1.99 を正常に更新したら、クラウド移行ツールを使用してサーバーを Alibaba Cloud に移行できます。

(オプション) 移行が成功したら、次のコマンドを実行して 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

以下もご興味があるかもしれません:
  • Linux で Sudo を使用して権限を委譲する
  • Linux の検索ツールの代替となるフレンドリーなツール
  • Linux で Xfce デスクトップ環境を使用すべき 8 つの理由
  • 歴史的な Linux 画像処理および修復ソリューション
  • Linux で pip 操作中にタイムアウトが発生する問題を解決する方法
  • オーディオマニアにアピールするオーディオビジュアルLinuxディストリビューション
  • Linux の便利な Bash エイリアス 10 個
  • iptables および firewalld ツールを使用して Linux ファイアウォール接続ルールを管理する
  • Linux システムのスワップ領域の紹介
  • Linux システム ディスクのフォーマットとスワップ パーティションの手動追加
  • Linux で top コマンドを使用する際のヒント
  • Linux デスクトップ用の 4 つのスキャン ツール

<<:  MySQL でのインデックスの追加と削除に関連する操作

>>:  RoughViz を使用して Vue.js でスケッチされたチャートを視覚化する方法

推薦する

Vueはパーセンテージバー効果を実現します

この記事では、パーセンテージバーを実現するためのVueの具体的なコードを参考までに共有します。具体的...

MySQL 5.7.11 zip インストールと設定方法のグラフィックチュートリアル

1. MySQL 5.7.11 zipインストールパッケージをダウンロードするこのマシンはwin7 ...

Vueユーザーが長時間操作せずにログインページからログアウトするように実装する2つの方法

目次問題の説明フロントエンド制御(方法1)アイデアコードバックエンド制御(方法2)アイデアコード要約...

CentOS 6.9 で glibc ダイナミック ライブラリをアップグレードする詳細なプロセス

glibc は、gnu によってリリースされた libc ライブラリ、つまり c ランタイム ライブ...

CSS3 rgb と rgba (透明色) の使い方の詳しい説明

誰もが色にとても敏感だと思います。私たちの目が見るところにはどこにでも色があります。では、CSS で...

Mysqlトランザクション操作の失敗を解決する方法

Mysqlトランザクション操作の失敗を解決する方法トランザクションの原子性: トランザクションは、デ...

HTMLでのフォーム送信の実装

フォーム送信コード1. ソースコード分析 <!DOCTYPE html> <htm...

MySQLの左結合を内部結合に素早く変換するプロセス

日々の最適化プロセス中に、奇妙なことに気付きました。同じ SQL にまったく異なる 2 つの実行プラ...

js配列のfind、some、filter、reduceの違いの詳細な説明

Array の filter、find、some、reduce メソッドの違いを区別し、使用シナリオ...

JavaScript でカルーセル効果を実装する

この記事では、カルーセルの効果を実現するためのJavaScriptの具体的なコードを参考までに共有し...

JavaScript 遅延読み込みの詳細な説明

目次遅延読み込みCSS スタイル: HTML部分:スクリプト部分:要約する遅延読み込み名前の通り、私...

vscode を使用したリモート Linux 開発の実装

過去に別れを告げるvscode にリモート SSH が導入される前は、Linux サーバー開発者の多...

ボタンの権限判定を実装するためのVueカスタムv-has命令

アプリケーションシナリオバックグラウンド管理システムを例にとると、各ユーザーには異なるボタン権限があ...

emとは?emとpxの紹介と変換方法

それは何ですか? em はフォントの高さを指し、どのブラウザでもデフォルトのフォントの高さは 16 ...