¿Cómo actualizo el software y el firmware?

91

Entiendo que el software en Raspberry Pi se divide en tres secciones: el firmware de GPU de código cerrado, el kernel ARM Linux parcheado y el software de espacio de usuario.

¿Está el firmware de la GPU en el chip o la tarjeta SD? ¿Hay una manera fácil de actualizar todo (firmware, kernel, módulos)?

Alex L
fuente

Respuestas:

93

¿Cuál es el firmware y el núcleo de la GPU?

El kernel es responsable de administrar los recursos de Raspberry Pi y se ejecuta en la unidad central de procesamiento (CPU). Permite que las tareas se ejecuten en la CPU. El firmware de la GPU, por otro lado, administra la unidad de procesamiento gráfico (GPU). Las dos unidades separadas están en el mismo chip y comparten memoria, que se segrega en el momento del arranque según los start.elfarchivos codificados . Para usar la Raspberry Pi, ambos conjuntos de archivos deben estar en las ubicaciones correctas de la tarjeta SD.

Puede comprar tarjetas SD precargadas de los socios minoristas de la Fundación.

Alternativamente, la Fundación publica regularmente nuevas imágenes de tarjetas SD en http://www.raspberrypi.org/downloads . Debe usar Unix ddo Windows ' Win32DiskImagerpara cargar esto en una tarjeta SD existente.

No es posible compilar su propia imagen de firmware de GPU, ya que es de código cerrado, por lo que confiamos en la Fundación y Broadcom para suministrar esto. Por otro lado, puede compilar su propia imagen del núcleo desde la fuente. La compilación cruzada es el tema de otras preguntas, como ¿Cómo compilo el núcleo en un host Ubuntu?

Actualización del firmware de la GPU - Debian / Raspbian

Puede actualizar el firmware con rpi-updateHexxeh. En Raspbian , puede instalarlo ejecutando

sudo apt-get install rpi-update

Para actualizar el software, ejecute

sudo rpi-update

Actualización de espacio de usuario y software de kernel - Debian / Raspbian

El software del espacio de usuario debe mantenerse. Es bastante fácil; solo corre

sudo apt-get upgrade

Si hay algún error, puede intentar actualizar la base de datos primero ejecutando

sudo apt-get update

Si no comprende un error, probablemente sea mejor que pregunte aquí o intente buscar en Google.

Actualización de software - Arch Linux

El software debe mantenerse. La ventaja de Arch Linux sobre Debian aquí es que Arch Linux gestiona el firmware de la Raspberry Pi dentro del sistema de gestión de paquetes. Para actualizar, solo ejecuta

sudo pacman -Syu

Si hay algún error y no lo comprende, probablemente sea mejor que pregunte aquí o intente buscar en Google.

Referencias

  1. Repositorio rpi-update
Alex Chamberlain
fuente
Un usuario también ha creado una herramienta llamada rpi-Updater que actualizará el firmware, el kernel y los módulos
Alex L
1
¿Raspbian no viene con la herramienta de actualización rpi?
Jivings
Además, ¿alguna vez descubriste por qué Debian no puede administrar el firmware usando apt?
Jivings
@Jivings Pereza?
Alex Chamberlain
1
Algo antiguo, pero en este punto, Raspbian viene con la herramienta de actualización rpi instalada, y está en los repositorios de raspberry pi apt predeterminados. Puede hacer una instalación simple en sudo apt-get install rpi-updatelugar de la manual ahora.
Caleb1994
20

Echa un vistazo a RPi-Updater de Hexxeh. Está específicamente diseñado para actualizar el firmware y el kernel.

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

Si está ejecutando Arch Linux, las actualizaciones serán parte de su pacman -Syurutina, tal como existen en los repositorios oficiales de RPi.

Jivings
fuente
Tenga cuidado al usar rpi-update (es para núcleos de última generación): las actualizaciones de Raspbian también actualizarán el núcleo: raspberrypi.stackexchange.com/questions/4355/…
Pierz el
11

Para actualizar su sistema a las últimas versiones del software userland, debe ejecutar la actualización antes de la actualización : la actualización en realidad descarga los nuevos listados de paquetes para que la actualización pueda obtenerlos e instalarlos (como se explica en la documentación de Debian Linux ):

sudo apt-get update
sudo apt-get upgrade

Además, es posible que deba ejecutar una actualización dist para realizar actualizaciones más grandes:

sudo apt-get dist-upgrade

Actualizaciones automáticas

Si desea automatizar estos procedimientos, puede hacerlo configurando las opciones periódicas de apt . El Raspberry Pi viene con apt instalado (proporciona los comandos apt-get, etc.), y como parte de ese paquete se instala un script automatizado (en /etc/cron.daily/apt) para realizar actualizaciones automáticas a diario. (usando el demonio cron). Estos pueden controlarse creando (como root) un archivo /etc/apt/apt.conf.d/10periodic poniendo lo siguiente en él:

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

Esta configuración solo ejecutará la actualización todos los días, por lo que cuando ejecute sudo apt-get upgradeinstalará los paquetes más recientes (sin tener que ejecutar primero apt-get update).

Actualizaciones automáticas

Para configurar apt para actualizar automáticamente los paquetes también, primero deberá instalar un nuevo paquete para que funcionen las actualizaciones desatendidas:

sudo apt-get install unattended-upgrades

Luego cambia la siguiente opción a "1" en /etc/apt/apt.conf.d/10periodic para habilitar las actualizaciones automáticas:

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

Para obtener más detalles, consulte los comentarios dentro del archivo /etc/cron.daily/apt y luego coloque las opciones relevantes en el archivo /etc/apt/apt.conf.d/10periodic.

Pierz
fuente
Esta es la respuesta correcta para actualizar RPI a principios de 2017, ya no se necesita la actualización rpi
Alec Istomin
es el nombre del archivo no '02periodic' (en /etc/apt/apt.conf.d) - al menos eso es lo que dice el archivo 'apt' en cron.daily - "# Crear /etc/apt/apt.conf.d / 02 archivo periódico para establecer su preferencia ".
matthiku
Los archivos están numerados en orden de precedencia, por lo que puede ser 02 en su sistema (y / o sistemas más nuevos).
Pierz