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 でスケッチされたチャートを視覚化する方法

推薦する

建国記念日が近づいています。JS を使用して、建国記念日風のアバターを生成する小さなツールを実装します。実装プロセスの詳細な説明

目次1. ページレイアウト2. 画像のアップロードと表示3. キャンバスを初期化する4. テンプレー...

Hadoop 2.Xの新機能、ごみ箱機能の説明

ごみ箱機能をオンにすると、削除されたファイルの元のデータをタイムアウトなしで復元できるため、誤って削...

Ubuntu 18.04 に MySQL をインストールする (グラフィカル チュートリアル)

ヒント: 以下の操作はすべて root 権限で実行されます。 # MySQL がインストールされてい...

ファイルが存在するかどうかを判断する JavaScript サンプルコード

1. ビジネスシナリオ最近はファイルのアップロードやダウンロードに関する開発をしています。ダウンロー...

Vue はユーザーのログイン状態を維持します (さまざまなトークン保存方法)

目次クッキーの設定方法クッキーのデメリット: LocalStorage と SessionStora...

Linux ディレクトリ切り替え実装コード例

ファイルの切り替えは Linux でよく行われる操作です。Linux を初めて学ぶときに最初に触れる...

jQueryは記事の折りたたみと展開の機能を実装します

この記事の例では、記事の折りたたみと展開の機能を実現するためのjQueryの具体的なコードを参考まで...

海外の無料写真素材サイトベスト9

良い画像素材のウェブサイトを見つけるのは難しいです。特に無料です。良い写真には非常に目を引く視覚効果...

Vue3 での Teleport の使用に関する詳細な説明

目次テレポートの目的テレポートの仕組みこの記事では、以下の内容を取り上げます。テレポートの目的テレポ...

Docker で既存のイメージに基づいて新しいイメージを構築する方法

既存のイメージから新しいイメージを構築することは、Dockerfile ドキュメントを通じて行われま...

CSS における px、em、rem、pt の特徴、違い、変換について詳しく説明します。

コンセプト紹介: 1. px (ピクセル):仮想的な長さの単位で、コンピュータ システムのデジタル画...

MySQL の完全バックアップとクイックリカバリ方法

過去 15 日間のデータをバックアップするシンプルな MySQL 完全バックアップ スクリプト。バッ...

MySQLデータベースの管理者パスワードを忘れた場合の解決策

1. コマンド mysqld --skip-grant-tables を入力します (前提条件: m...

XMLとCSSスタイルの組み合わせ

学生.xml <?xml バージョン="1.0" エンコーディング=&qu...