Come posso aggiornare software e firmware?


91

Comprendo che il software su Raspberry Pi è diviso in tre sezioni: il firmware GPU a sorgente chiuso, il kernel ARM Linux con patch e il software dello spazio utente.

Il firmware della GPU è sul chip o sulla scheda SD? Esiste un modo semplice per aggiornare tutto (firmware, kernel, moduli)?

Risposte:


93

Che cos'è il firmware e il kernel della GPU?

Il kernel è responsabile della gestione delle risorse di Raspberry Pi e viene eseguito sull'unità di elaborazione centrale (CPU). Consente l'esecuzione di attività sulla CPU. Il firmware GPU, d'altra parte, gestisce l' unità di elaborazione grafica (GPU). Le due unità separate si trovano sullo stesso chip e condividono la memoria, che è separata al momento dell'avvio in base a start.elffile hardcoded . Per utilizzare Raspberry Pi, entrambi i set di file devono trovarsi nelle posizioni corrette sulla scheda SD.

È possibile acquistare schede SD precaricate dai rivenditori al dettaglio della Fondazione.

In alternativa, la Fondazione rilascia regolarmente nuove immagini di schede SD su http://www.raspberrypi.org/downloads . È necessario utilizzare Unix ddo Windows ' Win32DiskImagerper caricare questo su una scheda SD esistente.

Non è possibile compilare la propria immagine del firmware GPU, poiché è di tipo chiuso, quindi ci affidiamo a Foundation e Broadcom per fornirlo. D'altra parte, è possibile compilare la propria immagine del kernel dal sorgente. La compilazione incrociata è oggetto di altre domande, come Come compilare il kernel su un host Ubuntu?

Aggiornamento del firmware della GPU - Debian / Raspbian

È possibile aggiornare il firmware tramite rpi-updateHexxeh. Su Raspbian , è possibile installarlo eseguendo

sudo apt-get install rpi-update

Per aggiornare il software, eseguire

sudo rpi-update

Aggiornamento dello spazio utente e del software del kernel - Debian / Raspbian

Il software userspace deve essere mantenuto. È abbastanza facile; corri

sudo apt-get upgrade

In caso di errori, è possibile provare prima ad aggiornare il database eseguendo

sudo apt-get update

Se non capisci un errore, probabilmente è meglio chiedere qui o provare a cercare su Google.

Aggiornamento software - Arch Linux

Il software deve essere mantenuto. Il vantaggio di Arch Linux su Debian è che Arch Linux gestisce il firmware di Raspberry Pi all'interno del sistema di gestione dei pacchetti. Per aggiornare, basta eseguire

sudo pacman -Syu

Se ci sono errori e non lo capisci, probabilmente è meglio chiedere qui o provare a cercare su Google.

Riferimenti

  1. Repository rpi-update

Un utente ha anche creato uno strumento chiamato rpi-updater che aggiornerà il firmware, il kernel e i moduli
Alex L

1
Raspbian non viene fornito con lo strumento rpi-update?
Jivings

Inoltre, hai mai scoperto perché Debian non è in grado di gestire il firmware usando apt?
Jivings

@Jivings Laziness?
Alex Chamberlain,

1
Un po 'vecchio, ma a questo punto, Raspbian viene fornito con lo strumento rpi-update installato ed è nei repository predefiniti di raspberry pi apt. sudo apt-get install rpi-updateOra puoi fare una semplice installazione manuale.
Caleb1994,

20

Dai un'occhiata al programma di aggiornamento RPi di Hexxeh. È appositamente progettato per l'aggiornamento del firmware e del kernel.

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

Se stai eseguendo Arch Linux, gli aggiornamenti faranno parte del tuo normale pacman -Syucome esistono nei repository RPi ufficiali.


Fai attenzione quando usi rpi-update (è per i kernel bleeding edge) - Gli aggiornamenti di Raspbian aggiorneranno anche il kernel: raspberrypi.stackexchange.com/questions/4355/…
Pierz

11

Per aggiornare il sistema per le versioni più recenti del software userland è necessario eseguire l' aggiornamento prima che l' aggiornamento - l'aggiornamento in realtà scarica le nuove inserzioni pacchetto in modo che l'aggiornamento possa andare a prendere loro e installare (come spiegato in Debian documentazione di Linux ):

sudo apt-get update
sudo apt-get upgrade

Inoltre, potrebbe essere necessario eseguire un dist-upgrade per eseguire aggiornamenti più grandi:

sudo apt-get dist-upgrade

Aggiornamenti automatici

Se vuoi automatizzare queste procedure, puoi farlo configurando le opzioni periodiche di apt . Raspberry Pi viene fornito con apt installato (fornisce i comandi apt-get, ecc.) E come parte di quel pacchetto viene installato uno script automatico (in /etc/cron.daily/apt) per eseguire aggiornamenti automatici su base giornaliera (usando il demone cron). Questi possono essere controllati creando (come root) un file /etc/apt/apt.conf.d/10periodic inserendo quanto segue:

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

Questa configurazione eseguirà l'aggiornamento ogni giorno per te, quindi quando eseguirai sudo apt-get upgradeinstallerai gli ultimi pacchetti (senza dover prima eseguire apt-get update).

Aggiornamenti automatici

Per configurare apt anche per l' aggiornamento automatico dei pacchetti - in primo luogo è necessario installare un nuovo pacchetto per far funzionare gli aggiornamenti automatici:

sudo apt-get install unattended-upgrades

Quindi si modifica la seguente opzione su "1" in /etc/apt/apt.conf.d/10periodic per abilitare gli aggiornamenti automatici:

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

Per maggiori dettagli vedere i commenti all'interno del file /etc/cron.daily/apt e quindi inserire le opzioni pertinenti nel file /etc/apt/apt.conf.d/10periodic.


Questa è la risposta corretta per aggiornare RPI all'inizio del 2017, rpi-update non è più necessario
Alec Istomin

è il nome file non '02periodic' (in /etc/apt/apt.conf.d) - almeno questo è ciò che dice il file 'apt' in cron.daily - "# Create /etc/apt/apt.conf.d / 02periodic file per impostare le tue preferenze. "
Matthiku,

I file sono numerati in ordine di precedenza, quindi potrebbero essere 02 sul tuo sistema (e / o sistemi più recenti).
Pierz,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.