USBメモリでミニPCにUbuntuをインストールする(Rufus)
はじめに
今回はUSBメモリでミニPCにUbuntuをインストールしてみました。
身近にUSBでWindowsとUbuntuを切り替えている方がいたので、できることは知っていました。ただ、私自身PCの内部の設定には詳しくないので結構苦戦しました。BIOSやネットワークドライバなどなど...
以前購入した、データが全消去されてもいいミニPCで気軽に試してみました。
▼ミニPCはこちらで紹介しているものです。
▼表示価格からクーポンでさらに値引きされていました。もはやRaspberry Pi 5と同じくらいの値段ですが、こちらはSSDが搭載されています。
▼USBで書き込むので、もちろんUSBが必要です。

▼以前の記事はこちら
Rufusで起動可能なドライブを作成する
Ubuntuをインストールするにあたって、起動可能なUSBドライブを作成できるRufusというソフトウェアを見つけたので試してみました。
▼Rufusのページはこちら。
▼こちらで紹介されていました。
https://jp.minitool.com/partition-disk/windows-11-and-linux-dual-boot.html
rufus-4.5.exeをダウンロードして起動しました。
▼画面はこんな感じ。

ブートの種類の欄にある、選択を選ぶとファイルを選択する画面になります。このときisoイメージファイルを選択できます。
▼まずはUbuntu Server 18.04のisoファイルをダウンロードしてみました。
https://releases.ubuntu.com/bionic
ダウンロードしたisoファイルを選択後、スタートを選択しました。
▼追加のファイルが必要なようだったので、ダウンロードしました。

▼USBにすでに入っていたデータは消去されますので、ご注意ください。

▼インストールが完了しました。

USBを挿して起動してみる
元々ミニPCに入っていたのはWindows 11だったので、設定でPCの起動をカスタマイズしました。
▼システム→回復のところにあります。

再起動後、オプションを選択する画面が起動します。
▼先程作成したUSBを挿した状態で、デバイスの使用を選択します。

▼USBデバイスを選択し、再起動しました。

▼ちなみにUSBを挿していない状態だと、デバイスの使用という選択肢はありませんでした。

起動すると、Ubuntu Serverの設定画面が起動しました。
▼まずは言語選択の画面が表示されました。

▼ストレージの選択画面が表示されました。

Use an entire diskを選択すると、Storage configurationが表示されます。ここで、これからインストールするUbuntuに割り当てるストレージのサイズを設定することができます。
割り当て方を間違えると、すでにインストールされているものが消去されるのでご注意ください。私の場合どういったものなのか分かっていなくて、何回かやり直しているうちにWindows環境は消去されました...
▼USED DEVICESのDEVICEを選択すると、容量を変更できます。

▼何回かやり直していたときの画像ですが、64GBにしてみました。ubuntu-vgのうち、ubuntu-lvのためのSizeを確保するようです。

▼設定終了後、ちゃんと64GBで割り当てられていました。

▼この過程でデータが消去されると、元に戻せないのでご注意ください。

▼その後、ユーザー名とパスワードの設定画面が表示されました。

▼OpenSSH serverは特に設定していません。

▼インストールが完了し、再起動しました。

▼ログインもできて、インストールが完了しました。

▼Ubuntu 18.04がインストールされています。

後述していますが、この後Wi-Fiが繋がらなくて何回かインストールした後、Ubuntu 20.04のDesktopをインストールしています。
▼Ubuntu Serverの起動後にネットワークの接続完了待ちで遅いことがあったのですが、対処方法があるようです。
https://qiita.com/NoIshii/items/fcc860394ace35f434d4
BIOSを起動してBootオプションを変更する
Windowsでは回復オプションで起動をカスタマイズできましたが、Ubuntuはもちろん設定が異なります。
起動オプションを変更するにあたって、BIOSを起動しました。
▼こちらのページで起動直後にDeleteかF2かESCを押すように書かれていました。私の場合AMI BIOSで、ESCを押すとBIOSの画面になりました。
https://www2.mouse-jp.co.jp/ssl/user_support2/sc_faq_documents.asp?FaqID=28865
▼BootのBoot Option #1をUSB Deviceに変更して再起動すると、再度Ubuntuのセットアップを開始することができました。

ネットワークインターフェースが認識されない問題への対処
Wi-Fiに接続したくて調べていたのですが、接続するためのコマンドが実行できない状態でした。
▼NetworkManager.service not foundと表示されています。

ネットワークに接続するためのパッケージをインストールしようにも、ネットワークに繋がっていないのでできるはずも無い状態でした。有線で接続するか、USBで挿して使えるWi-Fi無線LANを使うという選択肢もありそうですが、手元に接続できるものが無かったので使っていません。
▼Jetson Nanoを使ったときは、NICモジュールが無かったのでこちらを使ったことがあります。
Ubuntu ServerではなくUbuntu Desktopでの設定方法もあったので、改めてUbuntu 18.04のデスクトップイメージをインストールしてみました。
しかし、Wi-Fiの設定画面ではNo Wi-Fi Adapter Foundと表示されていました。
▼機内モードは有効になっていません。

▼Bluetoothは繋がっていました。

▼もし同じような問題に遭遇されていたら、こちらのページも参考になるかもしれません。
https://qiita.com/11kenterada/items/f88eb509b3cf8656bb03
調べてもユーザーによって利用している環境がバラバラということもあり、情報が錯綜していました。そこで、Chat GPTに解決策を聞いてみました。
▼Wi-Fiアダプタを確認するコマンドが提示されたので、実行してみました。

▼先程のコマンドだと解決せず、再度コマンドが提示されたので、実行してみました。

lspci -nnk | grep -A3 -i networkを実行すると、Network controllerにRealtekのRTL8821CEが使われていることが分かりました。
▼RTL8821CE用のドライバがデフォルトでインストールされていない可能性があるようです。

ドライバをダウンロードしようにもWi-Fiに繋がっていないので、他のUbuntuのバージョンだとデフォルトでダウンロードされているのか聞いてみました。
▼どうやらUbuntu 20.04以降ではデフォルトでインストールされているようです。

結局、こちらのページからUbuntu Desktop 20.04のisoファイルダウンロードして起動可能なUSBドライブを作成し、インストールしました。
▼ダウンロードページはこちら
https://releases.ubuntu.com/focal
▼すると、インストール時にWi-Fiを設定できました!

▼これまでインストールしていたUbuntu 18.04の環境は不要だったので、全部消去しました。

▼DesktopではSomething elseを選択した場合、割り当てを変更できるようです。

▼無事Wi-Fiを利用できるUbuntu Desktopの環境を構築できました。

日本語入力への対応について
コマンドを入力するときに、「:」が「'」になっていることがありました。これは日本語用のキーボードで設定されていないためです。
設定すれば解決するのですが、Ubuntu ServerとDesktopで設定方法が異なるようでした。
Ubuntu Serverの場合
▼こちらで紹介されていたコマンドで変更できました。
https://qiita.com/Toshiaki0315/items/08dfaf70ec11b23fe05b
sudo dpkg-reconfigure keyboard-configuration
Generic 105-key (Intl) PC→Japanese→Japanese→The default for the keyboard layout→No compose keyと選択しました。
▼画面はこんな感じ





選択後、再起動すると変更が反映されていました。
Ubuntu Desktopの場合
SettingsのRegion &Languageで設定できました。
▼Input SourcesにJapaneseを追加すると、右上のenをjaに切り替えることができました。

最後に
初めて起動可能なUSBドライブを作成したり、BIOSで設定を行いました。普段使っているPCで間違えてWindowsを消去してしまうと大問題なのですが、ミニPCなので何回もやり直しながら試すことができました。
Wi-Fiに接続できない原因が、Ubuntuのバージョンによってドライバがインストールされていないという調べてもたどり着けないものだったのですが、Chat GPTのおかげで解決しました。今回のように使用しているデバイスごと、OSのバージョンごとに異なるようなことは、自分で調べるよりもChat GPTに聞いた方が早そうですね。
無事Ubuntu環境をインストールできたので、ソフトウェアの検証やROSの利用などで使おうと思っています。