การพัฒนายังคงดำเนินต่อไปที่ https://github.com/raspberrypi/rpi-update สคริปต์ rpi-update จะสลับเป็น repo ใหม่โดยอัตโนมัติ
เครื่องมือในการรับเฟิร์มแวร์และเคอร์เนลใหม่ล่าสุดสำหรับ Raspberry Pi ของคุณ
สิ่งนี้มีไว้สำหรับใช้กับ Raspberry Pi OS เท่านั้น หากคุณใช้การกระจายแบบอื่น ให้ตรวจสอบกับผู้ดูแลว่าการใช้ rpi-update นั้นปลอดภัยหรือไม่
หากการแจกจ่ายส่งเคอร์เนลแบบกำหนดเอง (เช่น BerryBoot) ก็แทบจะไม่ปลอดภัยอย่างแน่นอน ความแตกต่างในการใช้งานไดเร็กทอรี /boot และ /opt/vc อาจทำให้ไม่ปลอดภัย
แม้แต่บน Raspberry Pi OS คุณควรใช้สิ่งนี้ด้วยเหตุผลที่ดีเท่านั้น
สิ่งนี้จะทำให้คุณได้รับเคอร์เนล/เฟิร์มแวร์ใหม่ล่าสุด มีความเป็นไปได้ที่จะถดถอยอยู่เสมอ
การแก้ไขข้อบกพร่องและการปรับปรุงต่างๆ จะเข้าสู่ Raspberry Pi OS รุ่นใหม่ในที่สุด และสามารถรับได้เมื่อถือว่าได้รับการทดสอบที่ดีเพียงพอ
เหตุผลที่ดีในการใช้สิ่งนี้คือหากคุณต้องการความช่วยเหลือในการทดสอบ และยินดีที่จะเสี่ยงต่อการเสียหายและส่งรายงานข้อผิดพลาด ยินดีต้อนรับผู้ทดสอบเหล่านี้
นอกจากนี้ หากคุณกำลังทุกข์ทรมานจากจุดบกพร่องในเฟิร์มแวร์ปัจจุบัน (อาจเป็นหนึ่งในผู้รายงานจุดบกพร่องบน GitHub หรือฟอรัม) และมีการส่งการแก้ไขเพื่อทำการทดสอบ การใช้ rpi-update เป็นวิธีที่ถูกต้องในการแก้ไขจนกว่า มันเข้าสู่อิมเมจ Raspberry Pi OS ใหม่และ apt-get
แนะนำให้สำรองข้อมูลก่อนอัปเดตเสมอ
หากต้องการติดตั้งเครื่องมือ ให้รันคำสั่งต่อไปนี้:
sudo apt-get install rpi-update
หากต้องการติดตั้งเครื่องมือ ให้รันคำสั่งต่อไปนี้:
sudo curl -L --output /usr/bin/rpi-update https://raw.githubusercontent.com/Hexxeh/rpi-update/master/rpi-update && sudo chmod +x /usr/bin/rpi-update
จากนั้น หากต้องการอัพเดตเฟิร์มแวร์ของคุณ เพียงรันคำสั่งต่อไปนี้:
sudo rpi-update
หลังจากอัปเดตเฟิร์มแวร์เรียบร้อยแล้ว คุณจะต้องรีบูตเพื่อโหลดเฟิร์มแวร์ใหม่
หากคุณต้องการตั้งค่าการแยกหน่วยความจำ GPU/ARM อื่น ให้กำหนด gpu_mem
ใน /boot/config.txt
หากต้องการอัพเกรด/ดาวน์เกรดเป็นเฟิร์มแวร์รุ่นเฉพาะ ให้ระบุแฮช Git (จาก https://github.com/Hexxeh/rpi-firmware repository) ดังนี้:
sudo rpi-update fab7796df0cf29f9563b507a59ce5b17d93e0390
มีตัวเลือกมากมายสำหรับผู้เชี่ยวชาญที่คุณอาจต้องการใช้ สิ่งเหล่านี้คือตัวแปรสภาพแวดล้อมทั้งหมดที่คุณต้องตั้งค่าหากคุณต้องการใช้
UPDATE_SELF
ตามค่าเริ่มต้น rpi-update
จะพยายามอัปเดตตัวเองทุกครั้งที่เรียกใช้ คุณสามารถปิดการใช้งานพฤติกรรมนี้ได้โดย:
sudo UPDATE_SELF=0 rpi-update
SKIP_KERNEL
sudo SKIP_KERNEL=1 rpi-update
จะอัปเดตทุกอย่าง ยกเว้น ไฟล์ kernel.img
และโมดูลเคอร์เนล ใช้ด้วยความระมัดระวัง การอัพเดตเฟิร์มแวร์บางอย่างอาจขึ้นอยู่กับการอัพเดตเคอร์เนล
SKIP_BACKUP
sudo SKIP_BACKUP=1 rpi-update
หลีกเลี่ยงการสำรองข้อมูลของ /boot และ /lib/modules เมื่อรันครั้งแรก
SKIP_REPODELETE
sudo SKIP_REPODELETE=1 rpi-update
ตามค่าเริ่มต้น ไฟล์ที่ดาวน์โหลด (/root/.rpi-firmware) จะถูกลบเมื่อสิ้นสุดการอัปเดต ใช้ตัวเลือกนี้เพื่อเก็บไฟล์
SKIP_VCLIBS
sudo SKIP_VCLIBS=1 rpi-update
จะอัปเดตทุกอย่าง ยกเว้น ไลบรารี VideoCore ใช้ตัวเลือกนี้เพื่อเก็บไลบรารี VideoCore ที่มีอยู่ หากคุณไม่ต้องการให้เขียนทับเวอร์ชันในเครื่องของคุณ
ROOT_PATH
และ BOOT_PATH
sudo ROOT_PATH=/media/root BOOT_PATH=/media/boot rpi-update
ช่วยให้คุณดำเนินการอัปเดตแบบ "ออฟไลน์" เช่น อัปเดตเฟิร์มแวร์บนการ์ด SD ที่คุณไม่ได้บู๊ตมาในปัจจุบัน มีประโยชน์สำหรับการติดตั้งเฟิร์มแวร์/เคอร์เนลลงในอิมเมจที่กำหนดเองที่ไม่ใช่ RPI ระวัง คุณต้องระบุทั้งสองตัวเลือกหรือไม่ก็ได้ การระบุเพียงรายการเดียวจะไม่ทำงาน
FW_SUBDIR
sudo FW_SUBDIR=safe rpi-update
อนุญาตให้ติดตั้งเฟิร์มแวร์ลงในไดเร็กทอรีย่อยของ /boot คุณลักษณะนี้มีวัตถุประสงค์เพื่อรองรับการตั้งค่า os_prefix
ที่สามารถใช้ใน config.txt
ตามค่าเริ่มต้น FW_SUBDIR จะเริ่มต้นเป็นค่า os_prefix
ที่มีผลเมื่ออุปกรณ์ถูกบูท เพื่อที่จะเขียนทับเฟิร์มแวร์ที่ "กำลังทำงาน" หากต้องการติดตั้งอย่างชัดเจนโดยไม่มีไดเร็กทอรีย่อย (เพื่อติดตั้งลงใน /boot) ให้ใช้ FW_SUBDIR=/
BRANCH
ตามค่าเริ่มต้น โคลนไฟล์เฟิร์มแวร์จากสาขาหลัก มิฉะนั้นจะใช้ไฟล์จากสาขาที่ระบุ เช่น:
sudo BRANCH=next rpi-update
จะใช้สาขา 'ถัดไป'
PRUNE_MODULES
ช่วยให้คุณสามารถลบไดเร็กทอรีโมดูลที่ไม่ได้ใช้เมื่อทำการอัพเดต ตั้งค่าให้เท่ากับค่าที่ไม่ใช่ศูนย์และจะลบโมดูลทั้งหมดยกเว้นที่ติดตั้งล่าสุด:
sudo PRUNE_MODULES=1 rpi-update
จะลบไฟล์โมดูลที่ติดตั้งไว้ก่อนหน้านี้ ใช้ตัวเลือกนี้เพื่อเพิ่มพื้นที่ว่างในดิสก์ที่ใช้โดยการอัพเดตโมดูลรุ่นเก่า
JUST_CHECK
หากต้องการรับรายการคอมมิตที่มีอยู่ใน rpi-update นับตั้งแต่คุณอัปเดตครั้งล่าสุด ให้รัน:
sudo JUST_CHECK=1 rpi-update
นี่จะไม่อัปเดตเฟิร์มแวร์ของคุณ
GITHUB_API_TOKEN
ตามค่าเริ่มต้น rpi-update
จะไม่ใช้โทเค็น GitHub API แบบกำหนดเอง หากคุณประสบปัญหาการจำกัดอัตรา คุณสามารถจัดหาโทเค็น API บนบรรทัดคำสั่งได้:
sudo GITHUB_API_TOKEN=<your API token> rpi-update
RPI_REBOOT
หากต้องการรีบูตหลังจากอัปเดตสำเร็จแล้ว ให้รัน:
sudo RPI_REBOOT=1 rpi-update
คุณสามารถใช้มันเพื่อทำการอัปเดตอัตโนมัติ
มีปัญหาที่เป็นไปได้สองประการที่เกี่ยวข้องกับใบรับรอง SSL ที่อาจทำให้เครื่องมือนี้ไม่ทำงาน
เวลาอาจตั้งค่าไม่ถูกต้องบน Raspberry Pi ซึ่งคุณสามารถแก้ไขได้โดยการตั้งเวลาโดยใช้ NTP
sudo apt-get install ntpdate
sudo ntpdate -u ntp.ubuntu.com
ปัญหาอื่นๆ ที่เป็นไปได้คือคุณอาจไม่ได้ติดตั้งแพ็คเกจ ca-certificates
ไว้ ดังนั้นใบรับรอง SSL ของ GitHub จึงไม่น่าเชื่อถือ หากคุณใช้ Debian คุณสามารถแก้ไขได้โดยพิมพ์:
sudo apt-get install ca-certificates
Pi-hole และ DNS ที่คล้ายกันอาจทำให้เครื่องมือนี้ไม่ทำงาน ตรวจสอบให้แน่ใจว่าโดเมน github.com ไม่ได้ถูกบล็อก (เช่น codeload.github.com)