UbuntuのGrubブートローダのクイックリカバリ

GRUB Legacyとして知られています。 たとえば、GRUB Legacyを復元する必要がある場合は、 ubuntuのバージョン   9.10よりも古い場合、あなたは読む必要があります。

これらは実際にはGRUBという名前の1つのアプリケーションの2つのバージョンですが、共通点はなく、完全に異なるプログラムです。

起動可能なハードドライブには、いわゆるマスターブートレコード (英語マスターブートレコード、MBR)BIOSはコンピュータの起動時にアクセスします。 この領域では、システムローダーはすでにハードディスクパーティションに保存されているメインファイルに関する情報も書き込む必要があります。

Microsoftからシステムをインストールまたは復元するたびに、Linuxローダーが交換され、再インストールする必要があります。

LiveCD / USBによる復旧

最初の方法

  ターミナル

Sudo fdisk -l

表から、Linuxは(私たちの場合)パーティション/ dev / sda1上にあることがわかります

次のコマンドで、このパーティションを/ mntに接続します。

Sudoマウント/ dev / sda1 / mnt

次に、MBRにGRUBを書き込むには、次のコマンドを入力します。

Sudo grub-install --root-directory = / mnt / dev / sda

ディスクのMBRだけを復元する必要がある場合(Windowsを再インストールした後など)は、これで十分です。

grubメニューを更新する必要がある場合(Windowsのインストール後など)は、次の操作を行う必要があります。

Sudo update-grub --output = / mnt / boot / grub / grub.cfg

修復は終わった!

chrootを使って復旧する

LiveCD / USBからシステムを起動し、端末を開きます。 これを行うには、Alt + F2キーを押して次のコマンドを入力します。

Sudo fdisk -l

次の表が画面に表示されます。

   / dev / sda1 29 8369 66999082+ 83 Linux / dev / sda2 * 8370 13995 45190845 7 HPFS / NTFS / dev / sda3 13996 14593 4803435 5拡張

ここであなたのLinuxパーティション(ここではsda1)と他のいくつかの重要なディレクトリをマウントする必要があります:

mount / dev / sda1 / mnt sudo mount --bind / dev / mnt / dev sudo mount --bind / proc / mnt / proc sudo mount --bind / sys / mnt / sys

/ bootパーティションと/ varパーティションが別々の場合は、/ mnt / bootと/ mnt / varにマウントする必要があります

今度は環境chrootに行きます:

Sudo chroot / mnt

次のコマンドを使用してGRUBをインストールする必要があります。

Grub-install / dev / sda

エラーメッセージが表示された場合は、次のコマンドを使用します。grub-install --recheck / dev / sda

場合によっては、このオプションが役立ちます:

Grub-install --recheck --no-floppy / dev / sda

すべてがうまくいけば、chrootコマンドを終了します:

これで、パーティションをアンマウントする必要があります:

Sudo umount / mnt / dev sudo umount / mnt / proc sudo umount / mnt / sys sudo umount / mnt

/ bootパーティションをマウントしている場合は、次のコマンドを使用します。

Sudo umount / mnt / boot

次に、コマンドを入力してコンピュータを再起動します。

Sudoの再起動

必要に応じて、次のコマンドを使用してローダーメニューを更新できます。

Sudo update-grub

レスキューモードでの復旧

不在時 ブートディスクそのコンソールからGrubを復元することができます。 リストアは次のとおりです。まず、すべてのモジュールをロードして、Grubのすべての機能を使用できるようにしてから、目的のパーティションから起動する必要があります。 ご存じのように、Grubは2つの部分で構成されています。 最初の部分はディスクのMBRに書き込まれます。 これには基本的な機能が含まれています。つまり、レスキューモードのコンソールがあります。 最初に、/ boot / grubディレクトリにある粗い部分の2番目の部分を判別し、見つからないモジュールをロードする必要があります。 そして、必要なパーティションから開始するコマンドを与えることができます。 レスキューモードで使用できるコマンドは4つだけです。

Lsはアンinsmodを設定しました

まず、次のコマンドを入力します。

それに応じて、たとえば、次のように出力されます。

   (hd0、msdos1)(hd0、msdos1)(hd0、msdos1)(hd1、msdos2)

Grubは、ディスクパーティション上のファイルシステムを誤って判断することがあります。 この場合、それらをmsdosとして定義します。 我々は、どのディスクを見ているのかを推測する必要があります。 この場合、2つのディスクが見えます。 インデックス0のディスクには3つのパーティションが含まれ、インデックス1のディスクには2つのセクションが含まれます。 ディスクの構造を知ることで、適切なディスクを簡単に判別できます。

Grubはセクションの順序を逆順にします。 そして、最初のパーティションか3番目のパーティション(hd0、msdos3)が何を意味するのかは不明です。 ここでは、構文(hd0,1)を使用して抜け出すことができます。 Grubでは、ディスクカウントは0から始まり、パーティションカウントは1から始まることに注意してください。Linuxが最初のパーティションの最初のディスク、つまり(hd0,1)にインストールされているとします。 我々はコマンドを与える:

接頭辞を設定する=(hd0,1)/ boot / grub set root =(hd0,1)

これらのコマンドでは、さらなるコマンドにディスク(hd0,1)を使用するように指定します。 その後、このセクションに本当に必要なものがあるかどうかを確認する必要があります。 我々はコマンドを与える:

Ls / boot / grub

答えがこのディレクトリ内のすべてのファイルのリストである場合、ディスクとパーティションは正しく選択されます。 私たちはモジュールを読み込みます:

Insmod ext2 insmodノーマルノーマル

ext3およびext4ファイルシステムの最初のコマンドを書き込む正確性をチェックする

OSがbtrfsでフォーマットされたパーティションにある場合は、次のコマンドを実行します。set prefix =(hd0,1)/ @ / boot / grub set root =(hd0,1)

我々はモジュールをロードする:

Insmod btrfs insmod normal

gRUBを実行する:

その後、Grubは全機能モードに移行します。 ロード可能なすべてのオペレーティングシステムが自動的に検索され、そのGrubメニューが表示されます。

さらにリカバリは、必要なLinuxをロードし、ルートからコマンドを実行するまで減らされます。

Grub-install / dev / sdX

ここで、sdXは、Grubをインストールするディスクです。

ブートローダはカーネルの初期化とLinuxオペレーティングシステムの起動に使用されます。 これは、BIOSハードウェアチェックが完了した後に実行され、ハードウェアの準備を行い、必要なカーネルパラメータを設定し、 オペレーティングシステム。 ブートローダの主なタスクは、起動するオペレーティングシステムの選択肢をユーザに与えることです。

以前は、Linuxをロードするために使用されたいくつかのブートローダーがありました。それはisolinux、lilo、grubです。 しかし、GRUBまたはそのフルネームGRand Unified Bootloaderが最もよく使用されています。 この記事では、端末を通してGrubブートローダをインストールする方法について説明します。 また、手動でUEFIを使用してコンピュータにGRUBをインストールする方法についても説明します。

理論のビット

私が言ったように、ブートローダーの主な仕事は、ダウンロードする前にオペレーティングシステムを選択する機会を提供することです。 Windowsではローダーが使用されていないとは思わないでください.Grubの仕組みと同様に、ローダーも存在し、動作します。

ローダーは、さまざまなディスクパーティションテーブルにインストールできます。 現在では、GPTとMBRが最も使用されています。 Grubブートローダーのインストールは、その特性上、これらのテーブルごとに若干異なります。 違いの詳細は、別の記事に記載されています。 すぐに私はGPTがより新しく機能的なパーティションテーブルであると言っていますが、MBRはすでに古くなっていますが、まだまだ使用されています。

MBRオプションでは、ディスク上のMBR領域にGrubが書き込まれます。 MBRセクタのサイズは最初の512バイトを占め、ブートローダをそこにインストールするのに十分です。

GPTは 十分な機会。 まず、GPTでの互換性のために、MBRセクタがエミュレートされており、そこにGRUBをインストールできますが、このオプションは非常に信頼性が低く推奨されません。 次に、ディスクパーティションにGrubをインストールすることができます。 1 MBのディスクにパーティションを作成し、以前にMBRに書き込まれたものを書き留めるだけで、ブートローダのインストールがより信頼性が高く、障害から保護されます。

UEFIは、ブートローダーのインストール方法がまったく異なります。 ここではどこに書き留める必要はありません。ブートローダは、EFIパーティションに配置された通常のEFIアプリケーションであり、他のアプリケーションと共に既にそこで動作しています。

Grubをインストールするには、すべての場合にgrub-installコマンドが使用されます。 その構文とパラメータを簡単に見てみましょう。 構文:

$ grub-installオプションドライブ

ここには多くのパラメータがありますが、必要なのはわずかです:

  • 圧縮   - ブートローダファイルを圧縮する。
  • -Install-modules = modules   - これらのモジュールのみをインストールします。
  • - モジュール   - これらのモジュールをMBRに書き込みます。
  • -Boot-directory   - Grubファイル用に別のディレクトリを使用する。
  • -Bootloader-id   - EFIメニューのブートローダー名。
  • -Core-compress   - MBRにロードされたイメージを圧縮する。
  •   -Efi-directory   - EFIシステムパーティションを使用します。
  • 〜フォース   - エラーにもかかわらずインストールします。
  • - 再チェック   - 既存のデバイスマップを削除し、エラーが発生した場合に役立ちます。
  • - リムーバブル   - フラッシュドライブにGRUBをインストールする(EFIのみ)。

基礎は解体された。 ここでインストールを進めてみましょう。 次に、すべてのアクションは、ブートローダーをインストールするシステムまたはこのシステムのchroot環境から実行されると仮定します。

BIOS MBRにGrubブートローダをインストールする

最も簡単で使い慣れたものから始めましょう。 Grubブートローダをインストールする方法は、コマンドがどこでもほとんど同じであるため、どのディストリビューションにも適しています。 追加のパッケージをインストールしたり、パーティションを作成する必要はありません。 ハードディスクにGrubをインストールするには、次のコマンドを実行します。

sudo grub-install / dev / sda

sudo grub2-install / dev / sda

異なる分布のGrubユーティリティには、デュースが含まれている場合もあれば、含まれていない場合もあります。 ここで/ dev / sdaはあなたのハードドライブです。 次に、インストールされたオペレーティングシステムを自動的に決定する設定ファイルを生成します。

sudo grub-mkconfig -o /boot/grub/grub.cfg

完了しました。 デュースについては、同じことがここで行われます。 GrubをMBRのフラッシュドライブにインストールする場合は、USBフラッシュドライブをマウントして次のコマンドを実行するだけで問題はありません。

sudo grub-install --root-directory = / mnt / USB / / dev / sdb

ここで/ mnt / USBはあなたのフラッシュドライブがマップされたフォルダで、/ seb / sdbはフラッシュドライブです。 ここには1つの問題があり、設定ファイルは手動で行う必要があります。

BIOS用GPTへのGrubブートローダのインストール

まず、前の方法で説明したように、何も変更せずにGrubをインストールすることはできません。 しかし、それはMBRとの互換性領域にインストールされ、これは信頼できません。 したがって、以下で説明するようにgrubを別のセクションにインストールすることをお勧めします。

GUIにインストールする場合やgpartedを使用する場合は、任意のディストリビューションのインストーラで必要なパーティションを作成できます。 我々は1メガバイトのパーティションが必要 ファイルシステム   grub_biosというラベルが付けられています。



完了しました。 GUIにアクセスできない場合は、端末からそのようなパーティションを作成することができます。 fdiskユーティリティはgptをサポートしていないので、gfdiskを使用します。 まず、ユーティリティを実行します。

sudo gdisk / dev / sda


新しいパーティションを作成するには、nを押してパーティション番号を選択します。


私たちは最初のセクターに同意し、最初のフリーセクターが使用されます:


パーティションの最終セクタを選択します。 デフォルトでは、最大値が使用されます。 1MBのパーティションが必要です。 GPTの1セクタのサイズは512バイトですので、2048セクタのサイズパーティションが必要です。 したがって、最後のセクターは何かで24000になります。


HEXコード - これは、このセクションをGrubで使用する必要があることをシステムに伝えるコードです。インストールする必要があります ef02:


完了したら、wキーを押して変更をディスクに書き込みます。


sudo grub-install / dev / sda3

grub設定ファイルを作成する方法は変わりません。

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

今、grub efiをインストールするのが最も難しいです。

GRUB UEFI GPTのインストール

インストールGRUB UEFIはGPTのインストールと多少似ていますが、今回はブートローダー用ではなく、EFIパーティション用に別のパーティションも作成します。 すでにWindowsがインストールされている場合は、既に存在している可能性があります。 このセクションは通常100 MBを要し、fat32ファイルシステムとESPフラグを持っています。 これは次のようになります。


そのようなパーティションがない場合は、gpartedで作成することができます。 これを行うには、次のパラメータを持つパーティションを作成します。


100メガバイトのサイズ、パーティションの名前 ESP、ファイルシステム fat32。 次に、変更を適用し、セクションのフラグを設定します ESP:


あなたがGDiskで行うことができるのと同じことですが、今度はHEXコードセクションをインストールする必要があります ef00。 パーティションが作成されたら、それをファイルシステムに接続します。

sudo mkdir / boot / efi
  $ sudo mount / dev / sda2 / boot / efi

sudo apt install grub-efi efibootmgr

grub-install / dev / sda

MBRにGrub efiをインストールすると、まったく同じように見えますが、いくつかの制限があります。 ESPパーティションは、ディスクの先頭にのみ作成する必要があります。 EFIモードでは、USBフラッシュドライブにGRUBをインストールすることもできます。これはあまり難しくありません。 これを行うには、次のコマンドを使用します。

grub-install --boot-directory = / mnt / sdb2 / boot --efi-directory = / mnt / sdb1 --target = x86_64-efi --removable

オプションを考えてみましょう: -Boot-directory   - フラッシュドライブ上のブートローダファイルを含むフォルダを指定します。 -Efi-directory   - efiパーティションがマウントされているフォルダ、 ターゲット   - ターゲットシステムのアーキテクチャ - リムーバブル   これはリムーバブルメディアにインストールされていると言います。 UEFIのすべてで。 リブートしてEFIメニューのGrubに関連付けられた項目を選択すると、おなじみのgrubメニューにアクセスでき、目的のオプションを選択することができます。

結論

これでGrubをインストールしても問題は発生しません。 MBRにGrub2をインストールする方法だけでなく、EFIにもインストール方法を分析しました。 さらに、ここですべての情報を使用してGrubを復元することができます。 回復中に何が起きているのかをよく理解するでしょう。 設定と手動作成 設定ファイル   次の記事のいずれかを検討します。

私は昨日Windows 7 Professinalをインストールしました。もちろん、 windowsローダー   Linuxブートローダ。

ここでは、LinuxブートローダGrub2を再構築する方法について説明します。これは、ノートパソコンの電源を入れたときに起動するシステムを選択できるようにするために使用しました。

初心者は、UbuntuのライブSVが必要です。 Linux Mint)、これには手の込んだユーティリティが含まれています chroot.

私はLive CDからロードされ、私は端末を起動します。

私はハードディスクに私のパーティションテーブルを表示するコマンドを入力します:
  sudo fdisk -l
  これは、どのディスクがLinuxにインストールされているかを覚えておくことです。

Mintがインストールされたパーティションをマウントする:
  sudo mount / dev / sda6 / mnt

注意:sd a   - システム内のディスク、sda 6   - このディスク上のパーティション。 もちろん、他のものについては、別個の/ブートパーティションを含めて、異なっていてもかまいません。


  ディスクのマウント:
  sudo mount --bind / dev / / mnt / dev
  proc:
  sudo mount --bind / proc / / mnt / proc

私はrootとしてマウントされたシステムに入ります:
  sudo chroot / mnt

今私はルートパーティションが/ mnt(chrootのおかげで)のシステム上のrootユーザーです。

grub2のリセット:
  grub-install / dev / sda
  (物理ディスク上)

これで、exitコマンドでchrootを終了し、以前にインストールしたものをすべてアンマウントできます。
  sudo umount / mnt / dev
  sudo umount / mnt / proc
  sudo umount / mnt

再起動することができます。

例えば、ミントがロードされた後、ローディング中にシステムの選択をせずに、私のところで。
  したがって、端末にgrub2メニューを更新する別のコマンドを与える必要があります:
  sudo update-grub

その後、ラップトップの電源を入れると、ダウンロード用のシステム選択ウィンドウが表示されます。

それはすべて必要に応じて機能しましたが、調整ファイルGrub2を編集することは可能です(管理者のkonennoの権限を使用して)。

これは/ etc / default /
  そして彼は私の次の顔をしています:

GRUB_DEFAULT = 0
  #GRUB_HIDDEN_TIMEOUT = 0
  #GRUB_HIDDEN_TIMEOUT_QUIET = true
  GRUB_TIMEOUT = " - 1"
  GRUB_DISTRIBUTOR = `lsb_release -i -s 2\u003e / dev / null || Debian`をエコーする
  GRUB_CMDLINE_LINUX_DEFAULT = "スプラッシュ"
  GRUB_CMDLINE_LINUX = ""
  #GRUB_BADRAM = "0x01234567,0xfefefefe、0x89abcdef、0xefefef"
  #GRUB_TERMINAL = console
  #GRUB_GFXMODE = 640x480
  #GRUB_DISABLE_LINUX_UUID = true
  GRUB_DISABLE_RECOVERY = "true"

次の点を考慮してください。
  GRUB_DEFAULT - デフォルトのダウンロード可能なメニュー項目Grub2を扱います。
  その可能なパラメータは次のとおりです。

  • = 0 - デフォルトでロードされる項目を選択します(設定ファイル/boot/grub/grub.cfgの順序に従って)。 ポイントの番号付けは「0」で始まります。 grub.cfgでは、メニュー項目はmenuentryで始まります。
  • = saved - 前回ダウンロードしたアイテムを選択します。
  • = "Linux Mint 14 MATE 32ビット、3.5.0-17-ジェネリック(/ dev / sda6)" - メニュー項目の正確な名前を使用できます(grub.cfgからすべての文字を取ります)

GRUB_TIMEOUT - デフォルトのメニュー項目を自動的にロードする時間を秒単位で表示します。

そのパラメータは、必要な秒数(たとえば「10」)まで「-1」(ロードするメニュー項目が選択されるまでメニューが表示されることを意味します)

GRUB_HIDDEN_TIMEOUT - ユーザーがEscapeを押してブートメニューにアクセスできるように、grub2をロードする時間の遅延を秒単位で指定します。 このオプションは、Ubuntuだけがコンピュータにインストールされていて、メモリテストを実行して別のカーネルでブートする必要がある場合に使用されます。

GRUB_HIDDEN_TIMEOUT_QUIET - 一時停止中にタイマーを表示する役割を担います。 値が "true"の場合、タイマーは表示されず、 "false"が表示されます。

GRUB_DISTRIBUTOR = `lsb_release -i -s 2\u003e / dev / null || echo Debian ` - ディストリビューションの名前を担当し、メニューに表示されます。Grub2

GRUB_CMDLINE_LINUX_DEFAULT - 起動時にLinuxカーネルが実行されるパラメータを指定します。

デフォルト値は "quiet splash"で、テキスト情報を表示せずにシステムが起動したときにグラフィックスクリーンセーバーが表示されます。 ブートプロセスに関するテキスト情報を表示するには、「静かなスプラッシュ」を削除します。 スプラッシュ画面と短いテキスト伴奏を表示するには、「スプラッシュ」オプションを使用します。

GRUB_TERMINAL = console - コンソールモードを有効にします(デフォルトでは、行はコメントアウトされています - 最初は#、グラフィカルモードを含みます)。 パフォーマンスを向上させるために行のコメントを外すことは理にかなっています。

GRUB_GFXMODE = 640x480 - メニューの解像度を設定する

GRUB_DISABLE_LINUX_RECOVERY = true - メニューに表示されないようにする 回復モードこの行を追加するか(行方不明の場合)、コメントを外します。

ファイルを編集した後 グルブ設定sudo update-grubコマンドで/boot/grub/grub.cfgを更新する必要があります

ブートメニューgrub2の壁紙をカスタマイズしたり、/etc/grub.d/05_debian_themeファイルで指定されているメニュー項目の色を変更することもできます。 しかし、私はすべてそれが私に合っているので、それを設定していない。

ソース:

http://forum.ubuntu.ru/index.php?topic=74165.0

http://startubuntu.ru/?p=95

http://ubuntologia.ru/grub2-recovery

http://ubuntologia.ru/grub2-settings-file

GRUBのリカバリは、多くの人が直面しなければならないかなり一般的な操作です。 ローダーが破損したり、 windowsをインストールする   第二のシステムとして。 Ubuntu、Mint、DebianなどのLinuxのビルドには関係ありません。端末を通してGRUBを復元したり、特殊なユーティリティを使ってGRUBを復元することができます。

ターミナル経由で復元

WindowsはLinuxに対応していないため、Ubuntu、Mint 17、または他のLinuxビルドの後にMicrosoftからシステムをインストールする場合は、ダウンローダがクラッシュするように準備してください。 このような状況で迷子にならないように、指示を印刷してコンピュータの近くに保管してください。

ブートローダを上書きした後、コンピュータを再起動し、 "sudo reboot"コマンドを使用する必要があります。 再起動後、オペレーティングシステムの選択ウィンドウが表示されます。 GRUBが新しいものをインストールした結果として上書きされた場合 windowsのバージョン、システム選択ウィンドウは引き続き表示されます 古いバージョンブートレコードを更新する必要があります。 これを行うには、Ubuntuを起動し、ターミナルで "sudo update-grub"コマンドを実行します。

リカバリユーティリティの使用

端末での作業が複雑に見える場合は、特殊なブート修復ユーティリティを使用してリカバリプロセスを自動化できます。

USBフラッシュドライブまたはドライブからLinuxビルドを実行します。 ターミナルを開き、3つのコマンドを順番に実行します。

  • sudo add-apt-repository ppa:yannubuntu / boot-repairです。
  • sudo apt-get updateを実行します。
  • sudo apt-get boot-repairをインストールします。

インストールされたプログラムの名前は "Restore bootloader"です。 ユーティリティを実行し(コンソールで "boot-repair"を実行)、動作モードを選択します。 初心者の方には、 "推奨される回復方法"が適しています。 このモードを開始すると、GRUBは自動的に復元されます。

GRUBを復元するための不器用な方法 - Linuxの再インストール - があります。 多くの新規参入者は、この急進的な方法を使用します。端末に接続しないでください。 ただし、再インストールするとユーザーファイルが削除されるため、バニカルローダーの破損により使用すると贅沢すぎます。

事実、 linuxシステム   市場のわずかなシェアを占めており、その様々な議会は、公式の無償で、かなり安定した仕事と、かなりの柔軟性の設定で人気を集めています。 はい、WindowsやMac OSと同じように動作しないものもあります。そのほとんどは動作します ソフトウェア   主にこれらの2つの製品用に作成されます。 しかし、これはすべてを止めるわけではありません。

Linux OSが動作するためには、クラッシュが発生した場合にGrubブートローダを復元する必要があります。

ほぼすべてのLinuxビルドは障害なく動作しますが、ブートローダーのエラーが発生することがあり、オペレーティングシステムを起動できなくなることがあります。 この理由は何ですか? LinuxでGrubブートローダを復元するには? どのような働き方が存在しますか? 今日の記事では、このことについて少し話しています。

Linuxをインストールした後 ハードドライブ   すべてのファイルが別々のフォルダにコピーされます。 いくつかのディレクトリには、安全に削除できる通常のソフトウェアのファイルがあります。 他のものでは、ファイルが記録され、オペレーティングシステムが動作しなくなると、ファイルが記録されます。 これには、Linuxカーネル、グラフィカルシェル、およびGrubブートローダが含まれます。 後者であり、インストールされているオペレーティングシステムを実行するために使用されます。 これはどうやって起こるのですか?


特別なブートパーティションでは、システムはマスターブートレコードを作成します。 英語の略語はMBRのように見え、Master Boot Recordの略です。 スタートアップ時 コンピュータBIOS このレコードを参照してから、Grubが動作に入り、すべてが整ったらLinuxが起動します。 ローダが破損していると、起動時にエラーが発生し、システムが起動しません。

何が起こるのか? 大部分のケースは、 linuxインストール   最初のシステムとして、Windowsを追加インストールします。 マイクロソフトは伝統的にLinuxを好まないので、WindowsインストーラはGrub Linuxを削除します。 Linux自体が間違ってインストールされたり、別のディストリビューションに移行したり、ディスクが再マップされたりすると、同じ問題が発生する可能性があります。

考慮すべき最も重要なことは、システム全体の再インストールについてすぐに考える必要がないということです。 Grubを復元するだけで十分です。すべてが以前と同じように動作します。 最も多くの人に配慮しましょう 効果的な方法経験の浅いユーザーにもアクセスできます。

起動可能なメディアからの端末経由

これを行うにはあなたが必要です ブートフラッシュドライブ   記録されたディスク linuxディストリビューション。 理想的には、ハードディスクにインストールされているシステムに似ているはずです。 しかし、配布が最も重要なポイントでない場合、ビット深度はどの場合でも一致しなければなりません。 それ以外の場合は、さらに大きな結果が発生します。その結果、すべてを再インストールする必要があります。

  1. USBフラッシュドライブまたはドライブをコンピュータのスロットに挿入し、起動することを優先します。 必要な設定は、Boot Device PriorityセクションまたはFirst Boot Deviceにあります。 BIOSを起動するには、起動時にキーボード上の希望するボタンまたはその組み合わせを押します。 最も一般的なオプションはF2、Del、Shift + F2、F10です。 BIOSを扱わないために、F11またはF12を押してリストからメディアを選択するだけです。
  2. 次に、システムがインストールされているハードドライブの部分と、ブートローダとして指定されている部分を調べる必要があります。 これを行うには、ターミナルを起動する必要があります(アナログ コマンドライン Windowsの場合)、またはCtrl + Alt + TまたはAlt + F2を押して、アプリケーションメニュー内で検索することができます。 開いたウィンドウで、sudo fdisk -lコマンドを入力する必要があります。 直ちに、ユーティリティはディスクのすべてのパーティションをスキャンし、それぞれのディスクに関する情報を表示します。 コンピュータにインストールされている他のオペレーティングシステムに関する情報も表示されます。 パーティションの名前、場所、サイズ、ファイルシステムのタイプを調べることができます。 Ubuntuをインストールするときに手動でマークアップを行った場合、どのパーティションが起動可能で、どのパーティションがルートパーティションであるかを簡単に理解できます。 自動マークアップの場合は、Linuxの名前に従ってください。 あなたのシステムの根源になるのは彼です。 セクションの名前は、通常、頭字語sdcまたはsdaとシリアル番号の数字で構成されます。
  3. 次に、ルートファイルシステムを/ mntフォルダーにマウントする必要があります。 これで、sudo mount / dev / sda1 / mntコマンドを使うことができます。ここでsdaの代わりにあなたのパーティションの名前を登録する必要があります。


この段階から、GrubをLinuxで2つの方法で復元できます。

方法1

  1. boot loaderコマンドを入力します。sudo Grub-install -root-directory = / mnt / dev / sda。
  2. sudo rebootコマンドを使用してコンピュータを再起動します。 その結果、OS選択メニューが表示されます。
  3. このメニューに古い情報が表示された場合は、MBRブートレコードを更新します。 これを行うには、Linuxを通常モードで起動し、端末を開き、sudo update-Grubコマンドを使用します。 これでうまくいかない場合は、sudo update-Grub -output = / mnt / boot / Grub / Grub.cfgを適用し、前の手順を繰り返します。
  4. コンピュータを再起動します。

方法2。

  1. ファイルシステムのルートを/ mntパーティションにマウントした後は、ブートファイルとカーネルとのやりとりの他のコンポーネントとともにフォルダを追加マウントする必要があります。 これを1つずつ実行するには、次のコマンドを実行します。

sudo mount / dev / sdc2 / mnt / boot

sudo mount -bind / dev / mnt / dev

sudo mount -bind / sys / mnt / sys

sudo mount -bind / proc / mnt / proc

  1. 次に、chrootシェルを実行する必要があります。 これを行うには、chroot / mnt / bin / bashを端末に追加します。 最初のパラメータはルートディレクトリに注目し、2番目のパラメータはユーザーのコマンドを変換する特別なシェルに注目します。
  2. 次に、Ubuntuに入るためのコマンドを適用し、サービスとグラフィカルインタフェースを除いてほとんどすべてのアプリケーションを使用する必要があります。

ソース/ etc / profile。

  1. これで、Grubの復元を直接開始できます。 これを行うには、いくつかのコマンドを使用します。
    • ハードドライブにブートローダを再インストールするには:sudo Grub2-install / dev / sdc(最後のパラメータはパーティションの名前です)。
    • 新しい設定ファイルを作成するには:sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg。
    • ブートメニューを更新するには:sudo Grub-update。
  2. この手順を完了するには、exitコマンドでシェルのchrootを終了し、ファイルシステムの以前にマウントされたパーティションもアンマウントします。

sudo umount / mnt / dev

sudo umount / mnt / proc

sudo umount / mnt / sys

sudo umount / mnt

sudo umount / mnt / boot

  1. 再起動して再起動してください。

ブートローダユーティリティを使用して

前の方法は大丈夫かもしれないので、 ubuntuの機能、それは完全に動作することができ、フラッシュドライブから起動されます。 このために、特別なユーティリティブート修復を適用します。 どうすればいいですか?

  1. USBフラッシュドライブからUbuntuを実行し、インターネットに接続していることを確認してください。
  2. ターミナルを見つけ、次のコマンドのいずれかを実行します。

sudo add-apt-repository ppa:yannubuntu / boot-repair

sudo apt-get update

sudo apt-get boot-repairをインストールします。

  1. アプリケーションメニューで、 "Restore bootloader"を探し、ユーティリティを有効にします。
  2. [推奨される復旧方法]ボタンをクリックし、手順が完了するまで待ちます。
  3. ほとんどの場合、これらのアクションはGrub Linuxブートローダの通常の操作には十分です。


ファイルシステムへの部分的なアクセス権を持つコマンドラインから

Grubローダーが損傷してシステム全体が起動できないことがあります。 たとえば、ブートパーティションは元のままですが、ユーティリティ自体にはアクセスできません。 この場合、コマンドシェルのようなプログラムシェルが開き、次のメッセージが表示されます。編集編集のような最小限のBASHがサポートされています。 ここでは、このコマンドラインを使ってUbuntuをロードしようとすることができます。

あなたは絶対に確信しており、どのハードドライブがシステムとコアであるかを知っていることが期待されます。 使用できるコマンドは4つだけです。順番に適用する必要があります。

  1. システムがディスクとパーティションをスキャンするには、lsコマンドを使用します。 答えとして、あなたはリストを受け取るでしょう ハードディスク   (たとえば、hd1、hd2)、およびそれらのファイルシステムのタイプ(たとえば、msdos1、msdos2)を指定します。 たとえば、ブートパーティションが/ dev / sda1にあるとします。
  2. 次に、作業するセクションを選択する必要があります。 私たちの場合、コマンドは次のように書かれます:set root =(hd1,1)。
  3. 通常のGrubシェルをロードします:insmod ext2、insmod normal、normal。
  4. Linuxカーネルを起動します:linux / boot / vmlinuz。
  5. システムを起動します:boot。
  6. Ubuntuを正常に実行した後、端末を開き、次のコマンドを使用してブートローダの回復手順を完了します。

sudo Grub2-install / dev / sda

sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg。

  1. 通常の作業を再起動して楽しんでください。


結論

一見すると、UbuntuでGrubブートローダを再構築することは非常に複雑なもののように思えるかもしれません。 linuxユーザー   同様の問題が発生した場合、オペレーティングシステムの再インストールがすぐに始まります。通常の指示では、すべてが非常に簡単に、また問題なく実行されます。 重要な情報を失うことを避けることができたことを願っています。 ブックマークにページを保存し、この情報をあなたの友人や知人と共有します。 コメントであなたの質問を残しなさい。

テーマを継続する:
Android

スマートフォンのどのモデルが最も人気があり、高品質なのかを言うのは難しいです。 誰かがAndroidオペレーティングシステム上で動作する携帯電話を使用するのが好きです...