外付けHDDからUbuntuを実行する場合、ブートローダーはどこにインストールする必要がありますか?


9

私はWindows 10を実行しているラップトップを持っており、Ubuntuを外付けHDDにインストールしたいのですが、必要なときはいつでもプラグインして外付けドライブから起動できます。

私はチュートリアル、実際には2つに従いましたが、どちらもブートローダーを外付けHDDにインストールする必要があると述べています。その結果、外付けHDDが接続されている場合にのみWindowsにアクセスできました。ラップトップに接続されていない場合は、ラップトップが起動せず、黒い画面に白い線が表示されます。マスターブートレコードを修正した後、Windowsにアクセスできました。

もう一度やり直したいのですが、内蔵ドライブにブートローダーをインストールすると、どういうわけかWindowsパーティションが削除されたり、起動に問題が発生したりする可能性があります。

だから私は何をすべきですか?


回答:


10

まず、それはだCRITICAL、あなたのブートモードを理解していること。最近のコンピューターは、次の2つの方法のいずれかで起動できます。

  • BIOS-これは、2011年より前に導入されたほとんどのコンピューターで使用されていた古いブート方法です。最近のコンピューターは、互換性サポートモジュール(CSM)と呼ばれる機能、つまり「レガシーモードブートサポート」または同様の用語。したがって、このメソッドは、BIOS、CSM、またはレガシーの3つの名前で参照できます。マスターブートレコード(MBR)やその他のさまざまな場所にスプラッティングされた16ビットブートローダーコードが含まれます。これは洗練されていませんが成熟したブート方法であり、ブートモードについて明示的に言及していないほとんどのサイトはBIOSモードブートについて説明しています。ただし、コンピュータにWindows 8以降が搭載されている場合はこの方法で起動しない可能性があります。
  • EFI / UEFI -これは2011年半ば以降に導入、ほとんどのコンピュータ用のネイティブブートモードであり、それは完全に別のあなたがする必要がありますので、BIOSモードの起動から無視明示的にBIOSモードの起動、あるいはその何のためだと述べていること何かアドバイスをブートモードについては触れていません(古いか、違いを知らない人が書いた可能性があるため)。1つの例外:紛らわしいことに、多くの人々、さらにはコンピュータメーカーも、EFIを「BIOS」と呼んでいます。この方法は、大きな混乱を引き起こします。

Windows 10について言及しているので、コンピューターがEFIベースでEFIモードで起動している可能性があります。その前提の下で進めます。これが正しくない場合は、この回答の残りを無視してください。

内部ディスクをEFIモードで起動するために、OSは通常、ブートローダーをディスク上のEFIシステムパーティション(ESP)上のファイルとして保存します。このファイル名は正当なものであれば何でもかまいませんが、Ubuntuの場合はEFI/ubuntu/shimx64.efi有効になり、起動されEFI/ubuntu/grubx64.efiます。OSインストーラーは、ブートローダーの名前をEFIの組み込みブートマネージャーに登録し、その名前をNVRAMに保存します。EFIが正しく機能する場合(すべての機能が機能するわけではありません)、これにより、ブートプロセスが機能します。

このプロセスの問題は、リムーバブルディスクに適用される場合、3つあります。

  • UbuntuインストーラーはGRUBを「the」ESPにインストールしますが、複数のESPが使用できる場合があります(ほとんどの場合、ハードディスクに1つ、USBドライブに1つ)。GRUBのインストール場所の制御は注意が必要です。これは、GRUBのインストール場所に関する明確なタイトルが付いたオプションを使用して行われるわけではありません。代わりに、使用するESPを「EFIブートパーティション」または「EFIシステムパーティション」(Ubuntuのバージョンによって異なります)としてマークすることにより、「Something Else」インストールオプションからのみ(AFAIK)実行できます。
  • USBドライブのESPにGRUBをインストールした場合、USBドライブを取り外すと、EFIは無効な登録済みのブートローダーエントリがあることに気づき、そのエントリを削除します。多くのEFIがこれを実行します。つまり、GRUBを外部ディスクにインストールしてから取り外した場合、ディスクを再び差し込んでも、そのディスクからブートする機能が失われます。
  • UbuntuがGRUBを構成する方法では、ESB /boot/grubにはない可能性が高いUbuntu ディレクトリにある構成ファイルに依存します。したがって、Ubuntuが内部ディスクのESPにGRUBをインストールする場合、最初の問題は回避されますが、USBドライブが切断された状態で起動すると、GRUBが起動し、その構成ファイルを見つけることができないため、別の問題が発生します。その結果、grub>ほとんどのユーザーを迷わせるプロンプトが表示されます。

これらの問題には、次のようないくつかの解決策があります。

  • 外部ディスク上の代替ファイル名へのGRUBの手動インストール-OSインストーラーは、代替ファイル名のを使用して起動しますEFI/BOOT/bootx64.efi。(GRUBを起動する)Shimをこのファイル名にコピーEFI/ubuntuする場合(EFI/BOOTESPにをコピーしてshimx64.efiからbootx64.efiEFI/BOOT)、Ubuntuインストーラーと同じように、ファームウェアはUSBベースのGRUBを起動できます。これは私が識別した両方の問題を回避できますが、コンピューターの組み込みのブートマネージャーを使用して、ブートするOSを選択する必要があります。この組み込みのブートマネージャーは、使用できないものから許容できるものまでさまざまなので、これは許容できるソリューションである場合とそうでない場合があります。また、Ubuntuをインストールした後、デフォルトで内部ディスクのESPまたは外部ディスクのESPからGRUBが起動しないように、ブート順序を微調整する必要がある場合もあります。
  • /boot内部ディスクにパーティションを置く -GRUBを内部ディスクにインストールする場合、内部ディスクに/bootパーティションを置くこともできます。これにより、GRUBはすべてのブートで正常に機能します。ただし、USBディスクが取り外されていても、Ubuntuオプションは常に表示されます。特にUbuntuがデフォルトの場合、これは望ましくない場合があります。また、このソリューションは、外付けUSBドライブが、それを準備したコンピューターでのみ起動可能になることを意味します。そのディスクを他のコンピューターで使用できるようにする場合は、この解決策を回避する必要があります。
  • よりスマートなブートマネージャーを使用する -ブートマネージャーは、ブートするOSの選択肢を提供しますが、ブートローダーはカーネルをメモリにロードします。GRUBは両方のジョブを実行し、EFIの組み込みブートマネージャーは最初のジョブのみを実行します。他にも利用可能なブートマネージャーがあり、そのうちのいくつかは、私が特定した問題を回避するのに役立ちます。私自身のrEFIndは、たとえば、内部ディスクのESPにインストールされ、デフォルトのブートプログラムを作成した場合、GRUBまたはLinuxカーネルが存在する場合、つまりUSBドライブが接続されている場合にのみ、Ubuntuオプションを検出して表示しますでdefault_selectionオプションを設定するrefind.conf適切に、rEFIndを構成して、Ubuntu USBドライブが接続されている場合はUbuntuを自動的に起動し、Ubuntu USBドライブが接続されていない場合はWindowsを直接起動することができます。この質問に対する私の回答は、 PCではなくMac。

運が良ければ、これらのアプローチの1つで問題なく稼働できます。


0
  1. Ubuntu Live USB / CDを起動
  2. 外付けHDDを接続します
  3. Ubuntuを外付けHDDにインストールします(高度な設定なので、ブートローダーをインストールする場所を設定できます)
  4. 外付けHDDから起動するようにBIOSを構成する

これはBIOSベースのソリューションであり、ほとんどのEFIベースのコンピューターでは正しく機能しません。
ロッドスミス

0

UEFI / BIOSが起動に使用するドライブにブートローダーをインストールする必要があります。あなたのBIOSの設定、あなたができるようなものを押して、通常のアクセスにこのドライブを変更することができF10F12またはDel直後に、コンピュータが起動します。したがって、最初のステップとして、内部ドライブではなく外部ドライブから起動するようにマシンを設定してみることができます。ブートローダーが外部ドライブに適切にインストールされている場合、これは動作するはずです。

通常の日常の使用では、便宜上、常に同じドライブから起動する必要があるので、内蔵ドライブにブートローダーをインストールする必要があります。ただし、これを行う前に、バックアップを作成する必要があります。できれば、作業中の内部ドライブの完全なディスクイメージを作成してください。UbuntuをWindowsと共にインストールした後に問題が発生した場合は、Boot-Repairツールが役立つことがあります。


内蔵HDDの前にUSBから起動するように起動順序を変更しました。ですから、Ubuntuを外付けHDDにインストールし、ブートローダーを外付けHDDにインストールすると、USBスティックから起動したいのではないでしょうか。
キャプテン

申し訳ありませんが、あなたが何を求めているのか正確にはわかりません。1)外付けドライブにブートローダーをインストールし、2)USBドライブを取り外し、3)外付けドライブから起動するようにBIOSを設定してから、外付けドライブでUbuntuを起動します。
Ben

@capitan Wright。私が言ったように、これはうまくいくでしょう。
Izzno 2016年

0

外部デバイスにブートローダーをインストールします!この方法では、Windowsインストールが破損したり、ブートローダーが削除されたりする可能性はありません。これは、BIOSを起動するように設定する簡単なタスクです。

USB-Key
USB-Disk
HDD
etc 
etc

注意:セキュアブートを無効にしてください(そのオプションが見つかった場合)。

これにより、何らかの理由で外部デバイスを取り外しても、コンピュータに問題が発生することはありません。

そして、あなたがプロプライエタリなドライバーから離れていれば、このシステムを他のコンピューターで実行することができます...

(ところで、eSATAより遅いので、このタイプのインストールを永続的に使用することはお勧めしません)


Ubuntuはセキュアブートをサポートしています。非互換性が時々ありますが、それらはまれであるため、その設定を変更する必要はありません。EFIの下では、ブート順序の設定は通常、説明するよりもはるかに複雑です。これは良い点と悪い点の両方であり、より多くのオプションとよりきめ細かな制御を提供します。しかし、それは学ぶべきことは他にもあることを意味し、BIOSの世界で学んだ簡単な解決策は機能しないでしょう。
ロッドスミス

ubuntuがウィンドウとして「ポーズ」できることを知りませんでした。私が今まで見たすべてのセキュアブートBIOSオプションが、ブート順序を永続的に変更するすべての機能やOSを無効にすることを明確に述べているためです。
Izzno 2016年

UbuntuはWindowsのように「ポーズ」しません。セキュアブートでは、ファームウェアに登録されている公開キーを持つ秘密キーでEFIプログラムに署名する必要があります。マイクロソフトは、CanonicalのShimバイナリを含むサードパーティのキーに署名し、Microsoftのキーを含むコンピューターで実行できるようにします。起動順序の変更を妨げるセキュアブートの実装について聞いたことがありませんが、ベンダーがその制限を追加することを選択している可能性があります。このトピックの詳細については、セキュアブートに関する私のページを参照してください
ロッドスミス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.