Ubuntuで永続ストレージのライブUSBを作成し、数日間使用しましたが、完全に機能しました。
今、私は私のPC上の友人のためにUbuntuで別のそのようなライブUSBを作成し、彼が彼のPCで同じことを行えるようにしました。
彼のUSBは正常に動作しますが、PCの元のUSBから起動できなくなりました。友達のUSBからしか起動できません。 USBから起動すると、grubでエラーが発生します:エラー:「cd0」からセクター0x0の読み取りに失敗しました。
いつでも別のPCから使用できますが、自分のPCで作業する必要があります。助言がありますか?
Grubが以前のubuntuブートローダー構成を新しいもので上書きしたようです。 USBで動作していた以前のものを復元するにはどうすればよいですか?
友達のUbuntuライブUSBを使用してUbuntuライブUSBにchrootし、update-grub
を実行してそのGRUBブートローダーを修復します。
- 他の動作中のUbuntuライブUSBから起動します。
- メインパーティションのパーティション番号を決定します。 GParted(デフォルトではライブセッションにすでにインストールされているはずです)がここで役に立ちます。この回答では
/dev/sda2
であると想定しますが、オリジナルのUbuntuライブUSBに正しいパーティション番号を使用していることを確認してください!パーティションをマウントします。
Sudo mount /dev/sda2 /mnt # Replace sda2 with your partition number
他の必要なものをバインドマウントします。
for i in /sys /proc /run /dev; do Sudo mount --bind "$i" "/mnt$i"; done
UbuntuがEFIモードでインストールされている場合( 不明な場合はこの回答を参照 )、GPartedを使用してEFIパーティションを見つけます。ラベルは
EFI
になります。このパーティションをマウントし、sdXY
をシステムの実際のパーティション番号に置き換えます。Sudo mount /dev/sdXY /mnt/boot/efi
chroot
をUbuntuインストールに追加します:Sudo chroot /mnt
この時点で、ライブセッションではなくインストールが行われ、rootとして実行されています。 grubを更新します:
update-grub
エラーが発生した場合、または手順7に進んでも問題が解決しない場合は、手順8に進みます(それ以外の場合はオプションです)。
状況によっては、grubを再インストールする必要がある場合があります。
grub-install /dev/sda update-grub # In order to find and add windows to grub menu.
すべてがエラーなしで機能した場合は、すべて設定されています。
exit Sudo reboot