Raspberry Piは、放送ラジオとして使用するメディアセンターを運営するのと同じくらい多様なプロジェクトが可能な、優れた用途の広いキットです。しかし、それには明らかな欠陥が1つあります。それは、USBから起動できないことです。
さて、今まではそうです。
Raspberry Pi 3を使用している場合は、microSDからの起動をやめ、代わりにUSBデバイスからコンピューターを起動できるようになりました。これは、フラッシュスティック、USBアダプター付きのSSD、またはフルサイズのUSBハードディスクドライブである可能性があります。これは重要な開発なので、USBから起動するようにRaspberry Pi3をセットアップする方法を見てみましょう。
はじめに:Raspbianをインストールして新しいファイルを追加する
このプロジェクトはRaspbianの新しいコピーから始めるのが最善なので、ダウンロードしてください。 最新バージョン (私たちは使用しています ラズビアンジェシー ) と 通常の方法でインストールします 。これが完了したらすぐに、カードをPCから安全に取り外し、電源がオフになっているRaspberry Piに挿入して、起動します。 SSH経由のリモート接続 それがロードされるとすぐに。
サインインして(デフォルトのクレデンシャルを変更していない限り)、次のコマンドを実行します。これにより、デフォルトが置き換えられます
start.elf
と
bootcode.bin
新たにダウンロードされた代替ファイルを含むファイル:
sudo apt-get update
sudo BRANCH=next rpi-update
このアップデートでは、2つのファイルが
/boot
ディレクトリ。ダウンロードしたファイルを使用して、次の手順でUSBブートモードを有効にします。
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
このコマンドは、
program_usb_boot_mode=1
最後までの指示
config.txt
ファイル。
これが完了したら、Piを再起動する必要があります。
次のステップは、OTP(ワンタイムプログラマブルメモリ)が変更されたことを確認することです。これを確認してください:
vcgencmd otp_dump | grep 17:
結果が住所を表す場合
0x3020000a
(そのような
17:3020000a
)それなら、これまでのところすべてが順調です。この段階で、削除したい場合は
program_usb_boot_mode=1
からの行
config.txt
これは編集することで簡単に行えます
config.txt
ナノで:
sudo nano /boot/config.txt
対応する行を削除またはコメントアウトします(前に#を付けます)。
USBブートデバイスを準備する
次に、フォーマットされた(またはすぐに削除できる)USBスティックをRaspberry Pi 3のスペアポートに接続します。これを挿入したら、OSのコピーに進みます。
USBスティックを識別することから始めます。
lsblk
指図。
この例では、SDカードは
mmcblk0
USBスティックが
sda
(フォーマットされたパーティションは
sda1
)。他のUSBストレージデバイスが接続されている場合、USBスティックはsdb、sdcなどです。USBスティックの名前を設定したら、ディスクをアンマウントし、分割ツールを使用して100 MBパーティション(FAT32)とLinuxパーティションを作成します。
sudo umount /dev/sda
sudo parted /dev/sda
(分割された)プロンプトで、次のように入力します。
mktable msdos
それ以外の場合はディスクが使用されていることが通知される場合があります。もしそうなら、選択します 無視 、次に、ディスク上のデータが破棄されることを指示する警告に注意してください。前に説明したように、これは削除またはフォーマットできるディスクである必要があるため、これに同意します。
ここで問題が発生した場合は、デスクトップに切り替える必要がある場合があります(手動で、 またはVNC経由 )ウィンドウコマンドラインでmktable msdosコマンドを入力する前に、ディスクがマウント解除されていることを確認します。
次の部分を分けて続行します。
mkpart primary fat32 0% 100M
mkpart primary ext4 100M 100%
print
これにより、ディスクと新しいパーティションに関する情報が出力されます。ブートファイルシステムとルートファイルシステムを作成する前に、Ctrl + Cでpartedを終了します。
sudo mkfs.vfat -n BOOT -F 32 /dev/sda1
sudo mkfs.ext4 /dev/sda2
次に、現在のRaspbian OSをUSBデバイスにコピーする前に、ターゲットファイルシステムをマウントする必要があります。
sudo mkdir /mnt/target
sudo mount /dev/sda2 /mnt/target/
sudo mkdir /mnt/target/boot
sudo mount /dev/sda1 /mnt/target/boot/
sudo apt-get update; sudo apt-get install rsync
sudo rsync -ax --progress / /boot /mnt/target
最後の1つは、すべてをコピーする最後のコマンドであるため、完了するまでに時間がかかります。コーヒーを作る時が来ました!
次に、SSHホストキーを更新して、再起動が差し迫った後も再構成されたRaspberryPiとの接続を維持する必要があります。
cd /mnt/target
sudo mount --bind /dev dev
sudo mount --bind /sys sys
sudo mount --bind /proc proc
sudo chroot /mnt/target
rm /etc/ssh/ssh_host*
dpkg-reconfigure openssh-server
exit
sudo umount dev
sudo umount sys
sudo umount proc
sudo chroot(上記の5番目のコマンド)の後、rootに切り替えているため、ユーザーは次のように変更されることに注意してください。 pi @ raspberrypi に root @ raspberrypi 8行目で出口に入るまで。
USBからの再起動の準備をしてください!
Raspberry PiをUSBから起動する準備が整う前に、さらにいくつか整理する必要があります。編集する必要があります
cmdline.txt
再びコマンドラインから:
sudo sed -i 's,root=/dev/mmcblk0p2,root=/dev/sda2,' /mnt/target/boot/cmdline.txt
同様に、fstabに次の変更を加える必要があります。
sudo sed -i 's,/dev/mmcblk0p,/dev/sda,' /mnt/target/etc/fstab
これで、Piをシャットダウンする前にファイルシステムをアンマウントする準備が整いました。
cd ~
sudo umount /mnt/target/boot
sudo umount /mnt/target
sudo poweroff
これは新しいものを使用することに注意してください
poweroff
の代替としてのコマンド
shutdown
。
Piがシャットダウンしたら、SDカードを取り外す前に電源を切断してください。次に、電源を再接続します。これで、RaspberryPiがUSBデバイスから起動するはずです。そして、あなたのPiの詳細については、チェックアウトしてください Raspberry Pi3でWi-FiとBluetoothを設定する方法 。
iPhone用の最高の無料写真編集アプリ
準備ができて Raspberry Pi4を試してみてください ?その機能と仕様を確認してください。
共有 共有 つぶやき Eメール コマンドプロンプトを使用してWindowsPCをクリーンアップする方法Windows PCのストレージ容量が不足している場合は、これらの高速コマンドプロンプトユーティリティを使用してジャンクを一掃します。
次を読む 関連トピック- DIY
- USB
- ラズベリーパイ
セキュリティ、Linux、DIY、プログラミング、技術の説明を担当する副編集長であり、デスクトップとソフトウェアのサポートに豊富な経験を持つ本当に便利なポッドキャストプロデューサーです。 Linux Formatマガジンの寄稿者であるクリスチャンは、ラズベリーパイのいじくり回し、レゴ愛好家、レトロゲームファンです。
クリスチャンコーリーのその他の作品ニュースレターを購読する
ニュースレターに参加して、技術的なヒント、レビュー、無料の電子書籍、限定セールを入手してください。
購読するにはここをクリックしてください