Code source wiki de Noyau et dépôt Raspberry Pi
Masquer les derniers auteurs
| author | version | line-number | content |
|---|---|---|---|
![]() |
1.1 | 1 | Le Raspberry Pi tourne sous Debian 13, avec le noyau, le firmware et les outils matériels de Raspberry Pi. Ces derniers viennent du dépôt Raspberry Pi, limité par une règle de priorité : tout le reste vient de Debian. |
| 2 | |||
| 3 | |=Élément|=Valeur (sept. 2026) | ||
| 4 | |Modèle|Raspberry Pi 4 Model B | ||
| 5 | |Système|Debian 13 (trixie), issu d'une mise à niveau de Raspberry Pi OS 12 | ||
| 6 | |Noyau|6.18.50+rpt-rpi-v8 (##linux-image-rpi-v8##) | ||
| 7 | |Firmware|##raspi-firmware## 1.20260907 | ||
| 8 | |Chargeur de démarrage (EEPROM)|17 mai 2026 | ||
| 9 | |||
| 10 | == Historique == | ||
| 11 | |||
| 12 | Lors du passage de Raspberry Pi OS 12 à Debian 13, le dépôt Raspberry Pi avait été retiré. Le noyau (6.6.47), le firmware et le chargeur de démarrage n'étaient plus mis à jour. Dépôt rétabli en septembre 2026. | ||
| 13 | |||
| 14 | == Clé du dépôt == | ||
| 15 | |||
| 16 | Depuis le 1er février 2026, apt refuse les signatures SHA1 : l'ancien trousseau (2021) ne permet plus d'utiliser le dépôt. Le paquet récent se télécharge directement : | ||
| 17 | |||
| 18 | {{code language="bash"}} | ||
| 19 | curl -fsSL https://archive.raspberrypi.com/debian/pool/main/r/raspberrypi-archive-keyring/ | grep -o 'raspberrypi-archive-keyring_[^"<]*\.deb' | sort -u | ||
| 20 | cd /tmp | ||
| 21 | curl -fsSLO https://archive.raspberrypi.com/debian/pool/main/r/raspberrypi-archive-keyring/raspberrypi-archive-keyring_2025.1+rpt1_all.deb | ||
| 22 | dpkg-deb -c raspberrypi-archive-keyring_2025.1+rpt1_all.deb | ||
| 23 | sudo dpkg -i raspberrypi-archive-keyring_2025.1+rpt1_all.deb | ||
| 24 | {{/code}} | ||
| 25 | |||
| 26 | Trousseau installé : ##/usr/share/keyrings/raspberrypi-archive-keyring.pgp## (le paquet dépose aussi une copie dans ##/etc/apt/trusted.gpg.d/##). | ||
| 27 | |||
| 28 | == Dépôt et priorités == | ||
| 29 | |||
| 30 | ##/etc/apt/sources.list.d/raspi.sources## : | ||
| 31 | |||
| 32 | {{code}} | ||
| 33 | Types: deb | ||
| 34 | URIs: https://archive.raspberrypi.com/debian/ | ||
| 35 | Suites: trixie | ||
| 36 | Components: main | ||
| 37 | Signed-By: /usr/share/keyrings/raspberrypi-archive-keyring.pgp | ||
| 38 | {{/code}} | ||
| 39 | |||
| 40 | ##/etc/apt/preferences.d/raspi## : | ||
| 41 | |||
| 42 | {{code}} | ||
| 43 | Package: * | ||
| 44 | Pin: origin archive.raspberrypi.com | ||
| 45 | Pin-Priority: 100 | ||
| 46 | |||
| 47 | Package: linux-image-rpi-v8 linux-image-*-rpi-v8 raspi-firmware raspberrypi-archive-keyring rpi-eeprom raspi-utils* | ||
| 48 | Pin: origin archive.raspberrypi.com | ||
| 49 | Pin-Priority: 500 | ||
| 50 | {{/code}} | ||
| 51 | |||
| 52 | |=Priorité|=Effet | ||
| 53 | |100|Paquet du dépôt Raspberry Pi installé seulement si Debian ne le fournit pas, ou s'il est déjà installé depuis ce dépôt | ||
| 54 | |500|Noyau, firmware, trousseau et outils matériels : priorité égale à Debian | ||
| 55 | |||
| 56 | Les fichiers doivent être lisibles par tous (##chmod 644##) : un ##umask## restrictif de root les crée lisibles par root seul, et ##apt policy## sans ##sudo## ne les voit plus. | ||
| 57 | |||
| 58 | Un paquet déjà installé depuis ce dépôt est mis à jour même à la priorité 100. Pour en figer un temporairement : | ||
| 59 | |||
| 60 | {{code}} | ||
| 61 | Package: <PAQUET> | ||
| 62 | Pin: origin archive.raspberrypi.com | ||
| 63 | Pin-Priority: 50 | ||
| 64 | {{/code}} | ||
| 65 | |||
| 66 | == Paquets Raspberry Pi installés == | ||
| 67 | |||
| 68 | |=Paquet|=Rôle | ||
| 69 | |##linux-image-rpi-v8##|Méta-paquet du noyau | ||
| 70 | |##raspi-firmware##|Firmware ; recopie le noyau et l'initramfs dans ##/boot/firmware## à chaque installation | ||
| 71 | |##rpi-eeprom##|Mise à jour du chargeur de démarrage | ||
| 72 | |##raspi-utils##|Outils matériels (##vcgencmd##, ##pinctrl##, ##dtoverlay##…) | ||
| 73 | |##raspberrypi-sys-mods##|Règles udev (GPIO, SPI, I2C), modules de l'initramfs | ||
| 74 | |##raspberrypi-net-mods##|Réglage NetworkManager pour le Wi-Fi du Pi | ||
| 75 | |##raspi-config##|Outil de configuration | ||
| 76 | |||
| 77 | ##rpi-eeprom## et ##raspi-utils## sont marqués comme installés manuellement (##apt-mark manual##) : un ##autoremove## les avait retirés. | ||
| 78 | |||
| 79 | == Mettre à jour le noyau == | ||
| 80 | |||
| 81 | Simuler, installer, puis contrôler avant de redémarrer : | ||
| 82 | |||
| 83 | {{code language="bash"}} | ||
| 84 | sudo apt install -s linux-image-rpi-v8 raspi-firmware | grep -E '^(Inst|Remv)' | ||
| 85 | sudo apt install linux-image-rpi-v8 raspi-firmware | ||
| 86 | cmp /boot/firmware/kernel8.img /boot/vmlinuz-<VERSION>+rpt-rpi-v8 && echo OK | ||
| 87 | cmp /boot/firmware/initramfs8 /boot/initrd.img-<VERSION>+rpt-rpi-v8 && echo OK | ||
| 88 | {{/code}} | ||
| 89 | |||
| 90 | Copie de secours avant un changement de noyau : | ||
| 91 | |||
| 92 | {{code language="bash"}} | ||
| 93 | sudo cp -a /boot/firmware/kernel8.img /boot/firmware/kernel8-<ANCIENNE_VERSION>.img | ||
| 94 | sudo cp -a /boot/firmware/initramfs8 /boot/firmware/initramfs8-<ANCIENNE_VERSION> | ||
| 95 | {{/code}} | ||
| 96 | |||
| 97 | Si le Pi ne redémarre pas : carte SD dans un PC, ajouter à la fin de ##config.txt## (partition FAT) : | ||
| 98 | |||
| 99 | {{code}} | ||
| 100 | kernel=kernel8-<ANCIENNE_VERSION>.img | ||
| 101 | initramfs initramfs8-<ANCIENNE_VERSION> followkernel | ||
| 102 | {{/code}} | ||
| 103 | |||
| 104 | La copie ne sert que tant que les modules de l'ancien noyau sont installés : la supprimer en même temps que le paquet de l'ancien noyau. | ||
| 105 | |||
| 106 | Contrôles après redémarrage : | ||
| 107 | |||
| 108 | {{code language="bash"}} | ||
| 109 | uname -r | ||
| 110 | ls <POINT_MONTAGE> > /dev/null && findmnt -n -o SOURCE,FSTYPE <POINT_MONTAGE> | ||
| 111 | lsusb -t | grep -E 'Driver=(uas|usb-storage)' | ||
| 112 | ls /dev/spidev0.0 /dev/i2c-1 | ||
| 113 | systemctl is-active meshtasticd led-anim jellyfin docker fail2ban smartmontools | ||
| 114 | meshtastic --host localhost --info | grep -m1 Owner | ||
| 115 | {{/code}} | ||
| 116 | |||
| 117 | == Chargeur de démarrage == | ||
| 118 | |||
| 119 | {{code language="bash"}} | ||
| 120 | sudo rpi-eeprom-update # état ; propose l'installation si une mise à jour existe | ||
| 121 | sudo rpi-eeprom-update -a # préparer la mise à jour, appliquée au redémarrage suivant | ||
| 122 | sudo rpi-eeprom-update -r # annuler une mise à jour en attente | ||
| 123 | {{/code}} | ||
| 124 | |||
| 125 | À faire séparément d'un changement de noyau, pour savoir lequel est en cause en cas de problème. | ||
| 126 | |||
| 127 | == Examiner une mise à jour avant de l'appliquer == | ||
| 128 | |||
| 129 | Le dépôt Raspberry Pi ne publie pas ses journaux pour ##apt changelog## : les lire dans le paquet. | ||
| 130 | |||
| 131 | {{code language="bash"}} | ||
| 132 | cd /tmp | ||
| 133 | apt-get download <PAQUET>=<VERSION> | ||
| 134 | dpkg-deb --fsys-tarfile <PAQUET>_*.deb | tar -xO ./usr/share/doc/<PAQUET>/changelog.gz | zcat | head -n 40 | ||
| 135 | dpkg-deb -c <PAQUET>_*.deb | grep -v '/$' | ||
| 136 | {{/code}} | ||
| 137 | |||
| 138 | == Paquets orphelins == | ||
| 139 | |||
| 140 | {{code language="bash"}} | ||
| 141 | apt list '~o' # paquets installés qu'aucun dépôt ne fournit plus | ||
| 142 | {{/code}} | ||
| 143 | |||
| 144 | Seul ##libpam-cracklib## (Debian 11) reste, volontairement : il est utilisé par ##/etc/pam.d/common-password##. Remplaçant Debian : ##libpam-pwquality##. |
