วิธีสร้าง Raspberry Pi 3 Boot จาก USB

วิธีสร้าง Raspberry Pi 3 Boot จาก USB

Raspberry Pi เป็นชุดอุปกรณ์อเนกประสงค์ที่ยอดเยี่ยม มีความสามารถในการทำโครงการที่หลากหลาย เช่น เรียกใช้ศูนย์สื่อเพื่อใช้เป็นวิทยุกระจายเสียง แต่มีข้อบกพร่องหนึ่งประการ: ไม่สามารถบูตจาก USB ได้





จนถึงตอนนี้นั่นคือ





หากคุณกำลังใช้ Raspberry Pi 3 คุณสามารถยกเลิกการบูตจาก microSD และบูตคอมพิวเตอร์จากอุปกรณ์ USB แทนได้ นี่อาจเป็นแฟลชสติ๊ก, SSD ที่มีอะแดปเตอร์ USB หรือแม้แต่ฮาร์ดดิสก์ไดรฟ์ USB ขนาดเต็ม นี่เป็นการพัฒนาที่สำคัญ ดังนั้น มาดูวิธีตั้งค่า Raspberry Pi 3 ให้บู๊ตจาก USB กันดีกว่า





เริ่มต้น: ติดตั้ง Raspbian และเพิ่มไฟล์ใหม่

เป็นการดีที่สุดที่จะเริ่มต้นโครงการนี้ด้วยสำเนาใหม่ของ Raspbian ดังนั้นให้ดาวน์โหลด รุ่นล่าสุด (เราใช้ Raspbian Jessie ) และ ติดตั้งตามปกติ . ทันทีที่ดำเนินการเสร็จ ให้นำการ์ดออกจากพีซีอย่างปลอดภัย ใส่ลงใน Raspberry Pi ที่ปิดเครื่องแล้วเปิดเครื่อง การเชื่อมต่อระยะไกลผ่าน SSH ทันทีที่โหลดขึ้น

ลงชื่อเข้าใช้ (เว้นแต่คุณจะเปลี่ยนข้อมูลประจำตัวเริ่มต้นของคุณ ) จากนั้นเรียกใช้คำสั่งต่อไปนี้ ซึ่งจะแทนที่ค่าเริ่มต้น



start.elf

และ

bootcode.bin

ไฟล์ที่มีทางเลือกอื่นที่ดาวน์โหลดใหม่:





sudo apt-get update
sudo BRANCH=next rpi-update

การอัปเดตนี้นำส่งสองไฟล์ไปยัง

/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 ก่อนสร้างระบบไฟล์สำหรับบูตและระบบไฟล์รูท:

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

อันสุดท้ายคือคำสั่งสุดท้ายที่คัดลอกทุกอย่างทับ และจะใช้เวลาสักครู่จึงจะเสร็จสมบูรณ์ ได้เวลาชงกาแฟแล้ว!

ถัดไป คุณต้องรีเฟรชคีย์โฮสต์ SSH เพื่อรักษาการเชื่อมต่อกับ Raspberry Pi ที่กำหนดค่าใหม่หลังจากการรีบูตที่ใกล้เข้ามา:

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 (คำสั่งที่ห้าด้านบน) คุณจะเปลี่ยนเป็น 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

โปรดทราบว่าสิ่งนี้ใช้ new

poweroff

คำสั่งแทน

shutdown

.

เมื่อ Pi ปิดเครื่องแล้ว ให้ถอดสายไฟออกก่อนถอดการ์ด SD ถัดไป เชื่อมต่อแหล่งจ่ายไฟใหม่ - ตอนนี้ Raspberry Pi ของคุณควรบูตจากอุปกรณ์ USB แล้ว! และสำหรับความช่วยเหลือเพิ่มเติมเกี่ยวกับ Pi ของคุณ โปรดดูที่ วิธีตั้งค่า Wi-Fi และ Bluetooth บน Raspberry Pi 3 .

วิธีลบผู้ใช้บน ps4

พร้อมที่จะ ลอง Raspberry Pi 4 ดูสิ ? ตรวจสอบคุณสมบัติและข้อมูลจำเพาะ

แบ่งปัน แบ่งปัน ทวีต อีเมล วิธีทำความสะอาดพีซี Windows ของคุณโดยใช้พรอมต์คำสั่ง

หากพีซี Windows ของคุณมีพื้นที่เก็บข้อมูลเหลือน้อย ให้ล้างขยะโดยใช้ยูทิลิตี้ Command Prompt ที่รวดเร็วเหล่านี้

อ่านต่อไป
หัวข้อที่เกี่ยวข้อง
  • DIY
  • ยูเอสบี
  • ราสเบอร์รี่ปี่
เกี่ยวกับผู้เขียน Christian Cawley(ตีพิมพ์บทความ 1510)

รองบรรณาธิการด้านความปลอดภัย, Linux, DIY, การเขียนโปรแกรม และผู้ผลิตพอดคาสต์ที่มีประโยชน์มาก โดยมีประสบการณ์อย่างกว้างขวางในการสนับสนุนเดสก์ท็อปและซอฟต์แวร์ Christian เป็นผู้สนับสนุนนิตยสาร Linux Format เป็นนักประดิษฐ์ Raspberry Pi คนรักเลโก้และแฟนเกมย้อนยุค

เพิ่มเติมจาก Christian Cawley

สมัครรับจดหมายข่าวของเรา

เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!

คลิกที่นี่เพื่อสมัครสมาชิก
หมวดหมู่ Diy