Bagaimana cara saya memperbarui perangkat lunak dan firmware?

91

Saya mengerti bahwa perangkat lunak pada Raspberry Pi dibagi menjadi tiga bagian: firmware GPU sumber tertutup, kernel Linux ARM yang ditambal dan perangkat lunak ruang pengguna.

Apakah firmware GPU ada pada chip atau kartu SD? Apakah ada cara mudah untuk memperbarui semuanya (firmware, kernel, modul)?

Alex L
sumber

Jawaban:

93

Apa firmware dan kernel GPU?

Kernel bertanggung jawab untuk mengelola sumber daya Raspberry Pi dan berjalan pada central processing unit (CPU). Ini memungkinkan tugas dijalankan pada CPU. Firmware GPU, di sisi lain, mengelola unit pemrosesan grafis (GPU). Dua unit terpisah berada pada chip yang sama dan berbagi memori, yang dipisahkan pada saat booting sesuai dengan start.elffile kode keras . Untuk menggunakan Raspberry Pi, kedua set file harus berada di lokasi yang benar pada kartu SD.

Anda dapat membeli kartu SD yang dimuat sebelumnya dari mitra ritel Foundation.

Sebagai alternatif, Foundation secara teratur merilis gambar kartu SD baru di http://www.raspberrypi.org/downloads . Anda harus menggunakan Unix ddatau Windows ' Win32DiskImageruntuk memuat ini pada kartu SD yang ada.

Anda tidak dapat mengkompilasi citra firmware GPU Anda sendiri, karena ini adalah sumber tertutup, jadi kami mengandalkan Foundation dan Broadcom untuk memasok ini. Di sisi lain, Anda dapat mengkompilasi citra kernel Anda sendiri dari sumber. Kompilasi silang adalah subjek pertanyaan lain, seperti Bagaimana cara mengkompilasi silang kernel pada host Ubuntu?

Memperbarui firmware GPU - Debian / Raspbian

Anda dapat memperbarui firmware menggunakan rpi-updateHexxeh. Di Raspbian , Anda dapat menginstalnya dengan menjalankan

sudo apt-get install rpi-update

Untuk memperbarui perangkat lunak, jalankan

sudo rpi-update

Memperbarui perangkat lunak userspace dan kernel - Debian / Raspbian

Perangkat lunak userspace harus dipertahankan. Cukup mudah; lari saja

sudo apt-get upgrade

Jika ada kesalahan, Anda dapat mencoba memperbarui database terlebih dahulu dengan menjalankan

sudo apt-get update

Jika Anda tidak memahami kesalahan, mungkin yang terbaik Anda tanyakan di sini atau coba googling.

Memperbarui perangkat lunak - Arch Linux

Perangkat lunak harus dipelihara. Keuntungan dari Arch Linux daripada Debian di sini adalah Arch Linux mengelola firmware Raspberry Pi dalam sistem manajemen paket. Untuk memperbarui, jalankan saja

sudo pacman -Syu

Jika ada kesalahan dan Anda tidak memahaminya, mungkin sebaiknya Anda bertanya di sini atau mencoba googling.

Referensi

  1. rpi-perbarui Repositori
Alex Chamberlain
sumber
Seorang pengguna juga telah membuat alat yang disebut rpi-updater yang akan memperbarui firmware, kernel dan modul
Alex L
1
Bukankah Raspbian datang dengan alat pembaruan rpi?
Jivings
Juga, apakah Anda pernah mencari tahu mengapa debian tidak dapat mengelola firmware menggunakan apt?
Jivings
@Jivings Laziness?
Alex Chamberlain
1
Agak kuno, tetapi pada saat ini, Raspbian dilengkapi dengan alat pembaruan-rpi yang diinstal, dan itu dalam repositori standar raspberry pi apt. Anda dapat melakukan sudo apt-get install rpi-updateinstalasi sederhana alih-alih sekarang.
Caleb1994
20

Lihatlah RPi-Updater Hexxeh. Ini khusus dibuat untuk meningkatkan firmware dan kernel.

https://github.com/Hexxeh/rpi-update

Jika Anda menjalankan Arch Linux maka pembaruan akan menjadi bagian dari rutin Anda pacman -Syuseperti yang ada di repositori RPi resmi.

Jivings
sumber
Berhati-hatilah saat menggunakan rpi-update (ini untuk kernel yang berdarah) - Pembaruan raspbian juga akan meningkatkan kernel: raspberrypi.stackexchange.com/questions/4355/…
Pierz
11

Untuk memperbarui sistem anda dengan versi terbaru dari perangkat lunak userland Anda perlu menjalankan pembaruan sebelum para Upgrade - update sebenarnya mendownload daftar paket baru sehingga upgrade yang bisa mendapatkan mereka dan menginstal mereka (seperti yang dijelaskan dalam Debian dokumentasi Linux ):

sudo apt-get update
sudo apt-get upgrade

Selanjutnya Anda mungkin perlu menjalankan dist-upgrade untuk melakukan peningkatan yang lebih besar:

sudo apt-get dist-upgrade

Pembaruan otomatis

Jika Anda ingin mengotomatiskan prosedur ini, hal itu dapat dilakukan dengan mengkonfigurasi opsi periodik apt . Raspberry Pi dilengkapi dengan apt yang terinstal (menyediakan perintah apt-get, dll.), Dan sebagai bagian dari paket itu skrip otomatis diinstal (di /etc/cron.daily/apt) untuk melakukan pembaruan otomatis setiap hari (menggunakan daemon cron). Ini dapat dikontrol dengan membuat (sebagai root) file /etc/apt/apt.conf.d/10 periodic dengan memasukkan hal berikut ke dalamnya:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";

Konfigurasi ini hanya akan menjalankan pembaruan setiap hari untuk Anda sehingga ketika Anda menjalankan sudo apt-get upgradeAnda akan menginstal paket terbaru (tanpa harus terlebih dahulu menjalankan pembaruan apt-get).

Pembaruan otomatis

Untuk mengonfigurasi apt untuk secara otomatis meningkatkan paket juga - pertama Anda harus menginstal paket baru untuk membuat pemutakhiran yang tidak dijaga berfungsi:

sudo apt-get install unattended-upgrades

Kemudian Anda mengubah opsi berikut ke "1" di /etc/apt/apt.conf.d/10 periodic untuk mengaktifkan pemutakhiran otomatis:

APT::Periodic::Unattended-Upgrade "1";

Untuk lebih jelasnya lihat komentar di dalam file /etc/cron.daily/apt dan kemudian masukkan opsi yang relevan ke file /etc/apt/apt.apt.conf.d/10 periodic.

Pierz
sumber
Ini adalah jawaban yang benar untuk memperbarui RPI di awal 2017, pembaruan-rpi tidak diperlukan lagi
Alec Istomin
adalah nama file yang bukan '02 periodic' (di /etc/apt/apt.conf.d) - setidaknya itulah yang dikatakan file 'apt' di cron.daily - "# Buat /etc/apt/apt.apt.conf.d / File periodik 02 untuk mengatur preferensi Anda. "
matthiku
File-file diberi nomor dalam urutan prioritas sehingga mungkin 02 pada sistem Anda (dan / atau sistem yang lebih baru).
Pierz