web-dev-qa-db-ja.com

SSDからRaspberry Pi 4でUbuntu 20.04を起動する

初めての投稿。私は仲間の初心者です。 RPI4をusb 3.0 ssdドライブから起動し、rpi4がsdカードを読み取り続けないようにしました。私は次の投稿への回答の1つで指示に従いました:

SB SSDからRaspberry Pi 4でUbuntu Server 19.10を起動できますか?

答えは、SDカードとSSDの両方をubuntuイメージでイメージ化することでした。私はそれをし、私は起動することができました。コマンドラインで確認しました:

ubuntu @ ubuntu:〜$ findmnt -n -o SOURCE /

結果は、私のdev/sda1がソースであることを示していました。

再起動して再度確認しましたが、今回はSDカードのドライブパスが表示されました。直前に、初めて起動したときのようにパスワードの変更を求められたので、混乱しました。

だから私は再起動を繰り返し、再起動するたびに、どこから起動するかを切り替えます(または「findmnt -n -o SOURCE /」を使用した結果)。興味深いメモ:パスワード変更要求はもうありません。 sshへのIPアドレスも、ルーターのネットワーク内の同じ2つのアドレス間で交互に変わりました。 Sudo apt-getと他のすべてのコマンドは動作するようです。

常にSSDから起動させるにはどうすればよいですか?これが、RPI財団がファームウェアがそれをサポートしていないと主張する理由ですか?私はどこかで、rpi4のファームウェアが外部ドライブからの起動をサポートしていないことを読みましたが、この方法は、少なくとも起動場所を変更している間は機能するようです。

Raspbianにこだわるのではなく、RPIでUbuntuを使用するべきだったのかどうかはわかりませんが、私の問題の解決策を大いに感謝します。

その他の問題に関する資料も歓迎します。私はRaspberry Pi、Linuxの世界、コンピュータプログラミングなどにまったく慣れていません。私のコンピュータの知識の範囲は限られており、ゲーマーのMS DOS時代から2014年に最初のコンピュータを構築するまでの流れに沿っています。

3
ilikaborat

RPiでファイル/boot/firmware/cmdline.txtを見ると、20.04ではルートファイルシステムが次のように定義されていることがわかります。

root=LABEL=writable rootfstype=ext4

これは、ルートファイルシステムが「書き込み可能」という名前のパーティションラベルによって識別されることを意味します。

次のコマンドを実行すると、

lsblk -o +LABEL

おそらく、sda(USB SSD)とmmcblk0(SDカード)の2つのディスクブロックデバイスが表示されます。また、各デバイスには2つのパーティションがあり、1つには「書き込み可能」というラベルが付いており、もう1つには「システムブート」というラベルが付いています。したがって、「書き込み可能」という名前の2つのパーティションがあります。

その場合は、SDカードのラベルを変更して、ブートローダーが起動に必要な「書き込み可能な」ルートファイルシステムを判別できるようにする必要があります(つまり、USB SSDを使用します)。

問題のパーティションは/ dev/mmcblk0p2(SDカードの2番目のパーティション)だと思います。次のようにラベルを変更できます。

Sudo e2label /dev/mmcblk0p2 NEWNAME

次に、上記の「lsblk」コマンドを再実行して、変更が行われたことを確認します。次に、RPiを数回再起動し、ルートパーティション(/)が常にsdaブロックデバイスにマウントされていることを確認します(ここでもlsblkコマンドを使用します)。

2
ububob