web-dev-qa-db-ja.com

Debian LinuxでEFIからレガシーブートに切り替えることはできますか?

私のマザーボードはAMD Phenomプロセッサのために死んだので、ebayの安い交換品を注文しました。動作しますが、古いです。

ハードドライブ(/ etc/fstabに/ boot/efiパーティションが表示されています)を新しいマザーボードに接続しましたが、BIOSにブートが表示されませんでした。古いハードドライブ(/ etc/fstabに/ boot/efiパーティションが表示されていない)をマザーボードに接続しましたが、BIOSはそのブートを認識しました。

BIOSにはUEFIのオプションはありません。これは、ブートメニューに2.2 Tb Infinityと呼ばれるMSIボードで、UEFI(Googleによると)のようなものですが、そうではありません。

古いハードドライブからGRUBを更新し、EFIブートを見つけたので、両方のハードドライブを起動できるようになりました(どのように動作するかわからない)。しかし、それはフランケンシュタインシステムであり、古いハードドライブは障害の兆候を示しています。

EFIブートをレガシーブートに切り替える方法はありますか?ブートするために別のディスクを経由する必要はありませんか?すべてのデータを保存して再インストールできますが、システムの多くの構成が失われたり、やり直したりしたくありません。

問題について誤って説明してしまった場合は、お詫び申し上げます。私は初心者ではありませんが、プログラマーでもありません。いくつかのものは私にとってブラックボックスです。よろしくお願いします。

4
Bob Barber

これは、暗号化なしのインストール用です。 chrootする方法を知っている必要があります!ほとんどはrootとして、またはSudoを使用して実行する必要があります。

  1. 同じArch(32ビットまたは64ビット)のLive-Linuxをダウンロードします。
  2. Debianのインストール。古いハードドライブを使用してから起動することもできます

    あなたがそれのための追跡またはアダプタを持っているならば、それと一緒のUSB。アーチも同じです。
    同じパッケージをインストールする必要があるため、後でDebianでchrootする必要があります。

  3. _/boot/efi_で_/etc/fstab_のエントリをコメントアウトします。

  4. このefiパーティションを一時的にマウントし、コンテンツを/ boot /フォルダーから/ -Partitonの/ bootフォルダーにcpします。

  5. 次に、特別なパーティションを作成する必要があります。すべてのパーティションをアンマウント

    あなたのdebian-harddrive。最も簡単な方法はgpartedを開始します。/boot/efiパーティションを検索して消去し、新しいパーティションを作成します(最小サイズ4MB)

    • マウントポイント:なし
    • タイプ:ファイルシステムなし
    • フラグ:bios_grub

Rawデバイスとして使用されます。 より良い英語と詳細情報

  1. _parted -l_でgpartedを終了した後の制御新しいパーティションの出力が同じであること

_Number Start End Size File system Name Flags
4 17.4kB 1049kB 1031kB BIOS boot partition bios_grub
_

Nrのほかに。とサイズ。名前とフラグは重要です。

  1. 次に、debianでchrootする必要があります。 chrootでもインターネットへのアクセスが必要です。

  2. apt update && apt-get install --reinstall linux-image-$(uname -r) linux-headers-$(uname -r)これはセキュリティのためです。

  3. _apt install grub-pc_これにより、ほとんどのgrub-efiパッケージが削除されます。

  4. _grub-install /dev/sdx_ xは、debian-harddriveのプレースホルダーです。問題が発生した場合は、_dpkg-reconfigure grub-pc_を使用してgrub-pcから構成を繰り返すことができます。

  5. _fdisk -l 2>/dev/null | egrep "Disk /|/dev/" | sed "s#^/dev/#Part /dev/#" | awk '{print $2}' | sed 's/://' | xargs -n1 -IX Sudo sh -c "hexdump -v -s 0x80 -n 2 -e '2/1 \"%x\" \"\\n\"' X | xargs -n1 -IY sh -c \"case \"Y\" in '48b4') echo X: GRUB 2 v1.96 ;; 'aa75' | '5272') echo X: GRUB Legacy ;; '7c3c') echo X: GRUB 2 v1.97 oder v1.98 ;; '020') echo X: GRUB 2 v1.99 ;; *) echo X: Kein GRUB Y ;; esac\""_で確認Grubはdebian-hard-driveのMBRにあります。

  6. _grub-mkconfig_および_update-grub_

  7. 最後のチェックで、blkidの出力と/ etc/fstabのエントリを比較します

エラーはありませんか?次に、debianを起動します。

B.t.w.フランケンシュタインシステムとは

1つのcmdを忘れた。 _update-initramfs -u -k all_

1
user192526