web-dev-qa-db-ja.com

複数のデバイスで動作する外部ハードドライブ上のポータブルubuntu

これは、1TB USB外付けハードドライブのubuntu 16.04内から作成しています。このラップトップでは正常に動作しますが、他のコンピューターのUEFIブートメニューから起動しようとすると、ドライブは外付けHDDとして表示されますが、選択するとLinuxが起動せず、Windows OSに戻りますコンピューター。 USBブートを有効にし、セキュアブートを無効にして、それが問題であるかどうかを確認しましたが、正しくありませんでした。

興味深い点:USBを接続せずに(Linuxを実行する)ラップトップを起動し、最後にLinuxを実行した後でも、初期のgrubメニューが表示されます。外付けドライブに別のコンピューターで動作する適切なブート/ grub情報がない可能性がありますか?たぶん、その情報は私のラップトップにここにしか保存されていませんか?

外付けドライブは次のように分割されます。

  • すべてのLinuxファイル用のext4システム(フラグなし)
  • linux-swapファイルシステム(フラグなし、使用法0を表示)
  • 他のファイル、Windowsファイルなどに使用するntfsファイルシステム.

私がやりたいのは、外付けHDDを任意のコンピューターに接続してLinuxディストリビューションを実行できるようにすることです。誰かが私のディストリビューションをポータブルにするのを手伝ってくれますか?

2
Tim

修復を試みる前に、常に情報をバックアップしてください。

あなたの仮定は正しいです。 Ubuntuをインストールすると、内蔵HDDのEFIパーティションにgrubがインストールされました。外付けドライブを起動可能にするには、grubがインストールされたEFIシステムパーティションが必要です。通常、このパーティションはドライブの最初のパーティションです。ただし、ルートパーティションを移動すると、ブートエラーが発生する可能性があります。

再インストールが実行可能なオプションである場合

外付けハードドライブを再パーティションします。 Linuxパーティションを削除し、FAT32でフォーマットされ、ESP(Efiシステムパーティション)としてフラグが設定された500MBパーティションを作成します。 Ext4でフォーマットされたLinuxパーティションの残りのスペースを使用します。結果は次のようになります。

  • EFIパーティション500MBでフォーマットされたFAT32およびフラグ付きESP
  • LinuxパーティションでフォーマットされたExt4フラグなし
  • スワップパーティションフォーマットスワップフラグなし
  • NTFSパーティション

次に、Ubuntuを再インストールします。手動パーティション設定オプションを使用して、事前作成されたパーティションを選択します。内蔵ドライブのEFIパーティションが「使用しない」に設定されていることを確認してください。

外部ドライブを起動するには、デフォルトのメディアパスを使用する必要があります。 LiveCDを起動し、EFIパーティションを外部にマウントします(これを行うには、ESPフラグを一時的に削除する必要がある場合があります)。 EFI/ubuntu/shimx64.efiEFI/bootにコピーし、名前をbootx64.efiに変更します。 EFIパーティションをアンマウントし、削除する必要がある場合はESPフラグを設定します。

現在のインストールを修復しようとしました

LiveCDから起動し、gpartedを使用してLinuxパーティションを500MB縮小します。空き領域を持つ新しいパーティションを作成し、FAT32をフォーマットし、ESPフラグを立てます。新しいパーティションのUUIDを記録します。

Linuxパーティションをマウントします。 etc/fstabを編集します。次のような行を探します。

# /boot/efi was on /dev/sda1 during installation
UUID=BB1E-83B5  /boot/efi       vfat    umask=0077      0       0

UUIDを新しいEFIパーティションのUUIDに置き換えます。

次に、両方のドライブのEFIパーティションをマウントします(ESPフラグを一時的に削除する必要がある場合があります)。 /efi/ubuntu/shimx64.efiを内部ドライブから外部の/efi/boot/にコピーし、名前をbootx64.efiに変更します。注:外部ドライブにフォルダーを作成する必要があります。

いずれかの修理後

最後に、内部ドライブのEFIパーティションをマウントします。フォルダー/EFI/ubuntuを削除します。再起動し、起動中に適切なファンクションキーを押してシステム設定を開きます。 USB HDDが内部ドライブの前になるように起動順序を変更します。

外部が接続されている場合はlinuxを起動し、外部が接続されていない場合はWindowsを起動する必要があります。

3
ravery