Ubuntu日本語フォーラム
ログインしていません。
Windows 11とデュアルブートしたいのですが、USBからUbuntuをインストールする際に
内蔵のSSDを認識せず、インストールができない状態となっております。
以下、インストールの環境、および対応してみた内容になります。
◆環境
・G-Tune P6
・NVMe SSD(M.2PCle Gen4x4)
◆行った操作
・rufusを使ってUbuntu 20.04.1のLiveUSBを作成
・Windows11にて、Windows11と同じCドライブ上に512GBの未割当領域を作成
※C以外のドライブはない
・UEFIメニューにてSecure BootをDisableに変更
・UEFIメニューにて起動の優先順の1番目をUSBに変更
・再起動し、表示される起動メニューにて"Ubuntu"を選択
・その後、Ubuntuとして起動はできるものの、インストーラーを進めて
"インストールの種類"先を選ぶ画面にて
"+","-","変更"ボタンを押下するとエラーが発生してしまう。
またドライブを変更しようとしても
/dev/sda1(USB)以外のドライブが見つからない。
・Gpartedや、"sudo fdisk -l"コマンドを実行しても
/dev/sda1以外のドライブが見つからないため、
そもそも内部SSDを認識していないことが原因だと判断。
◆その他
過去の投稿等を参考に以下の対応をしてみましたが、どれでも内部SSDを認識することはありませんでした。
・Ubuntuを起動する際に、以下の内容を"quiet splash "の後に記述
①pci=nomsi ⇒変化なし
②nomodeset ⇒変化なし
③acpi=off ⇒そもそも起動しなくなる
④nodmraid ⇒変化なし
⑤nvme_load=YES ⇒変化なし
※それぞれ単独で確認。組み合わせ(①と②の両方等)は未対応
何か手順が間違っているのか、コマンドが間違っているのか、
そもそもこの環境だとインストールができないのか...。コメントいただけますと幸いです。
オフライン
Ubuntu 20.04.1 を使う特別な理由がなければ
Ubuntu22.04.4 を試してみては?
オフライン
ご回答ありがとうございます。
22.04.3LTSでも上手くいかなかったのでバージョンの問題ではないと思い込んでいましたが、
22.04.4で試したところ先へ進むことができました!
ただ、内容は変わりますがその後もトラブルが発生したため再度質問をさせてください。
手順に従いインストールを進め、その後「インストールを完了するには再起動を...」みたいな
表示が出たため、それに従い再起動を行ったところ、次に立ち上がる際にはWindowsが表示されてしまいました。
(再起動するための終了時に、画面指示に従ってUSBは抜いています)
Bootの優先順位によるものかと思いUEFIでBootのメニューを開いたところ、そもそも
選択肢に"Ubuntu"が表示されませんでした。
インストールが全くできていなかったのかと思い、Windows11にて"ディスクの管理"を確認すると
確保していた512GBの"未割当領域"は、"正常(プライマリ パーテーション)"という表記に
変わっておりました。(ただ空き容量が100%(512GB)になっているので、本当に正常なのかは怪しいですが...)
この場合、インストールは失敗したと判断して
Windowsにて512GB部分のボリュームを削除⇒再度Ubuntuのインストールを試す、という対応で
問題はないでしょうか?
オフライン
再度、USBからUbuntuを立ち上げて、ライブモードから、ディスクを確認してみてください。
所定のディレクトリ構成、ファイルなどが確認できれば、ブートローダーの問題だと思います。
インストールPCが、MS-Win11、1つのストレージに同居で
トラブれば、重大事態を引き起こす可能性がありますので、
ご自分でネット検索等をして、調べてください。
Ubuntuの用途によっては、MS-Windows上にLinuxをインストールできる、
WSL という方法もありますよ
オフライン
Ubuntuの用途によっては、MS-Windows上にLinuxをインストールできる、
WSL という方法もありますよ
今回は最終的な目的のために、デュアルブートをしたいと考えております。
我儘で申し訳ないですが、そちらの選択肢は取らないという前提で進めさせていただきます。
USBからUbuntuを起動し、Gpartedでディスクを確認したところ、以下2つのパーティションに
"!"マークがついている状態となっていました。
/dev/nvme0n1p1:EFI system partition:fat32:systems:260MIB
Unable to read the contents of this file system!
Because of this some operations may be unavailable.
The cause might be a missing software package.
The following list of software packages is required for fat32 file
system support: dosfstools, mtools.
/dev/nvme0n1p2:Microsoft Reserved Partition:unknown:(空欄):16MIB
unable to detect file system! Passible reasons are :
-The file systems is damaged
-The file systems is unknown to Gparted
-There is no file systems available(unformatted)
-The device entry /dev/nvme0n1p2 is missing
また、再度Windowsとして起動し、ディスクの管理を見ると、
EFIシステムパーティションは「正常(EFIシステムパーティション)」として問題なく認識しており、
もう片方(nvme0n1p2)はそもそも表示されていませんでした。
Ubuntuをインストールしたつもりの512GBのパーティション(/dev/nvme0n1p5)については、
警告は出ておりませんが、Name、Labelが空欄となっておりました。
FileSystemsはext4で、12.4GiBが使用済みとなっております。
EFI System Partitionが警告を出していることについて、
Ubuntuのインストール時にインターネットに接続せず、「必要なものをインストールする」みたいなものに
チェックを入れなかったのが原因なのではないかと思いますが、
「USBからUbuntuを起動し、SSDに(多分)インストールしてあるUbuntuに対して
必要なパッケージをインストールする」ということは可能でしょうか?
オフライン
あれから色々と試してみました。
・Ubuntuの削除
⇒特に問題なく成功。Windows11が通常通りに起動し、また
Windows11の"ディスクの管理"で確認してみても「未割当」に戻っていました。
行った内容は、
・パーティションの削除
・diskpartコマンドにてEFIパーティションをマウント⇒ubuntuフォルダの削除
になります。
・今までと同じ方法でUbuntuの再インストール
⇒何も結果は変わらず。いかにも成功という感じでUbuntuインストーラが終了し、
再起動するとWindowsになってしまっている。
UEFIのBootにUbuntuが登場しないところも変化なし。
・Ubuntuインストール後、USB起動の状態のまま
"BootRepair"のインストール・実行
⇒正常に完了したものの、やはり再起動時に
Ubuntuが選択肢として表示されない
GRUBの設定は初期状態のまま(menu、timeout=10)にも関わらず
Windowsの優先順位を下げてもUSBが刺さってない場合は一切GRUBメニューが表示されません。
・EFIの中にubuntuフォルダが存在している
⇒Ubuntuのインストール自体はできている?
・USB起動の場合はGRUBメニューが表示される
⇒GRUBが完全に壊れている訳ではない?
上記2点から、「GRUBが何故かSSD内のUbuntuだけ認識していない」という
ことなのではないかと思っておりますが、この後どういう対策をすれば良いのかが
思い浮かびません。
どなたかコメントをいただけますと幸いです。
オフライン
・USB起動の場合はGRUBメニューが表示される
ひょっとして、ブートローダをUSBにインストールしてません?
Ubuntuの場合、USBからインストールすると、nvme よりも /dev/sdX と認識される USBメモリが優先され
Ubuntuのインストール先ディスクを指定するあたりで、ここを変更しないとこうなるかも?
オフライン
最終的な目的とは何ですか?
Boot Repairで起動できなかったときは、
情報収集したBootInfoファイルを
インターネットの他の人も見ることができる場所に掲示して、
詳しい人に見てもらってください。
Ubuntu Boot Repair その2 - パーティションやOSの情報をBootInfoサマリに出力する・BootInfoサマリをUbuntu pastebinにアップロードする - kledgeb
https://kledgeb.blogspot.om/2013/11/ubuntu-boot-repair-2.html
Super Grub2 Disk による起動も試してみてください。
Super Grub2 Disk
https://www.supergrubdisk.org/super-grub2-disk/
オフライン
返答遅くなり申し訳ございません。
ひょっとして、ブートローダをUSBにインストールしてません?
対応として、こちらのサイト様と全く同じようなパーティションの作成をしております。
(nvmeOn1p1~nvmeOn1p3までもサイズが多少違う以外は全く同じ表示のため
環境はほぼ同じだと考えております)
Windows11 / Ubuntu22.04 デュアルブートと環境構築メモ
UbuntuをnvmeOn1p5に、Boot LoaderをnvmeOn1にインストールしているため、
USBにインストールしているということはないと思います...。
ただ、この手順通りにやってもUEFIのBootメニューにUbuntuは現れませんでした。
(今まで報告させていただいたのと全く同じ状態のままです)
最終的な目的とは何ですか?
最終的な目的は「Windows11とUbuntuのデュアルブート」です。
USBにインストールする、WSLを使用する、では達成できない目的があるため
頑なで申し訳ないですがこの目的を変更することは難しいです。
Super Grub2 Disk による起動も試してみてください。
こちらは恐らく私の知識不足で申し訳ないですが、
UbuntuのBootableUSBを作成したのと同じ要領でSuper Grub2 diskのUSBを作ったところ、
起動しようとするとgrub rescueが表示されてしまう状態になってしまい
確認ができていないです。
(USBを外して起動すると正しくWindowsが立ち上がるので、何故かUSBの作成が正しくできていない...?)
Boot Repairで起動できなかったときは、
情報収集したBootInfoファイルを
インターネットの他の人も見ることができる場所に掲示して、
詳しい人に見てもらってください。
ありがとうございます。こんな方法もあるのですね...!
こちらは対応で来次第、こちらにURLを貼るように対応させていただきます。
オフライン
BootInfoサマリのアップロードありがとうございます。
拝見しました。
Ubuntuシステムファイル、GRUBブートローダのSSDへの書き込みは完了しているが、
ブートエントリのEFI変数をPC本体のNVRAMへ書き込みに失敗しているようです。
grub-install: warning: EFI variables cannot be set on this system.
grub-install: warning: You will have to complete the GRUB setup manually.
EFI variables are not supported on this system.
Warning: NVram is locked (Ubuntu not found in efibootmgr).
Locked-NVram detected. Please do not forget to make your UEFI firmware boot on the Ubuntu 22.04.4 LTS entry (nvme0n1p1/efi/ubuntu/grubx64.efi file) !
何が障害になっているかはわかりませんが、ひとつの可能性として
RufusでつくったUSBメモリがGPTではなくMBR-msdos形式であることが気になっています。
このUSBメモリで「Ubuntuを試す」に入って「端末」で
efibootmgrコマンドが使えるか確認してみてください。
もう1個USBメモリが用意できるなら、balenaEtcher を使って
Ubuntu ISOイメージからUSBメモリに書き込んで作成し、
それを起動したときはefibootmgrが使えるか比較してみてください。
balenaEtcher - Flash OS images to SD cards & USB drives
https://etcher.balena.io/
オフライン
RufusでつくったUSBメモリがGPTではなくMBR-msdos形式であることが気になっています。
このUSBメモリで「Ubuntuを試す」に入って「端末」で
efibootmgrコマンドが使えるか確認してみてください。
行ってみたところ、正常に実行できてしまいました...。
ubuntu@ubuntu:~$ efibootmgr
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0000,0001,0002,0003
Boot0000* Windows Boot Manager
Boot0001*ubuntu
Boot0002*UEFI: PXE IPv4 Realtek PCIe GBE Family Controller
Boot0003*UEFI: PXE IPv6 Realtek PCIe GBE Family Controller
Boot0004*UEFI: ELECOM MF-XWU3 1100, Partition 1
それでもUEFIメニューにはいない状態のままです。
もう1個USBメモリが用意できるなら、balenaEtcher を使って
Ubuntu ISOイメージからUSBメモリに書き込んで作成し、
それを起動したときはefibootmgrが使えるか比較してみてください
こちらについてですが、何故かbalenaEtcherを使ってUSBにイメージを書き込もうとすると
USB自体が破損してしまうようになっていたので、別の
「UNetbootin」を使用して試してみました(USBメモリは前回と同じものです)。
そちらも結果は変わらなかったのですが、恐らくboot-repair上の記述では
msdosからgptに変わったのでは?と思います。
BootInfo
ただ、こちらの場合でもEFI変数がセットできなかった、という警告は出たままとなっています。
この警告に絞って解決方法がないか探しておりますが、あまり同じような状況の方が見つからず
まだ解決方法がわかっていない状態となります。
オフライン
私なりに調べて、ターミナルから以下のコマンドを実行してみました。
sudo mount /dev/nvme0n1p5 /mnt
sudo mount /dev/nvme0n1p1 /mnt/boot/efi
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
grub-install /dev/nvme0n1
(もしくはgrub-install --target=x86_64-efi /dev/nvme0n1 )
※nvme0n1p5がUbuntuをインストールしたパーティション、
nvme0n1p1がEFIパーティションになります
ただ、これらを実行しても以前レポートを上げさせていただいたのと同じで
以下の警告と、それでもインストールが完了したというメッセージが表示されてしまいます。
grub-install: warning: EFI variables cannot be set on this system.
grub-install: warning: You will have to complete the GRUB setup manually.
Installation finished. No error reported.
"complete the GRUB setup manually"の方法がわかれば...と思うのですが、調べても
上記の方法ばかり見つかり、他の方法がわかっておりません。
どなたか助けていただけると幸いです。
オフライン
#12 tktk による投稿:
こちらについてですが、何故かbalenaEtcherを使ってUSBにイメージを書き込もうとすると
USB自体が破損してしまうようになっていたので、
どのようなエラーになったでしょうか?
もしかして、Windowsで
「ドライブ○: を使うにはフォーマットする必要があります。
フォーマットしますか」
になりましたか?
#12 tktk による投稿:
efibootmgrコマンドが使えるか確認してみてください。
行ってみたところ、正常に実行できてしまいました...。
これは読み出ししただけです。書き込みもできなければ正常とは言えません。
#13 tktk による投稿:
私なりに調べて、ターミナルから以下のコマンドを実行してみました
この作業はUbuntuインストーラが行っていることと本質的に同じで、
EFI変数に書き込めない障害を取り除かない限り同じように失敗するでしょう。
SSDに入っているUbuntuを動かすには
・EFI変数に書き込み可能にする。
または
・ブートエントリに登録なしのまま別ルートから起動する。
をめざします。
↓のQ&Aを参考にして rEFInd入りのUSBメモリを作成して、
USBブートからの、本体SSDのUbuntu起動を試してみてください。
USBメモリ起動で、Win10/Linux選択| OKWAVE
https://sp.okwave.jp/qa/q9686540.html
オフライン
ブート モードが Legacy (BIOS) ブートになっていると EFI変数に書き込みできないという情報を何処かで見た記憶があります。
Legacy+UEFI ブートでもブート メディア次第で Legacy ブートになるので、念のために間違いなく UEFI ブートすることを確認してみては?
オフライン
漸く起動できました!!
efibootmgrについてまともに調べずに実行していましたが、
efibootmgrで次回起動するブートエントリを指定したらubuntuが起動できました。
efibootmgrを使ってブート順番を変える対応も行ったところ、
UEFIのBootメニューにもubuntuの選択肢が表示されるようになり、無事ubuntuが起動できるようになりました。
皆さんの助力のお陰で無事解決いたしました。大変ありがとうございます...!!
オフライン