🛠 Exploiter les 32 Go d'eMMC d'un CM3+ après flash
Objectifs
Les images Raspberry Pi OS sont écrites « au cordeau » (~2 Go) : flashées sur l'eMMC 8/16/32/64 Go d'un CM3+, elles laissent l'essentiel du stockage non alloué. Ce tutoriel étend la partition racine et le système de fichiers pour exploiter la totalité de la puce, puis met en place le trim (fstrim) pour préserver la durée de vie de l'eMMC — aucune donnée d'endurance officielle n'étant publiée par Raspberry Pi, on applique les bonnes pratiques. Note : le CM3+ Lite n'a pas d'eMMC, ce tutoriel ne le concerne pas.
Matériel
- CM3+ avec eMMC (8 à 64 Go) sur CMIO3, système déjà flashé et démarrable
- Sauvegarde des données importantes avant de toucher aux partitions
- Écran HDMI ou accès SSH
Code complet
# 1. État initial : la racine est bien plus petite que le disque
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT # mmcblk0 ~32 Go, mmcblk0p2 ~2 Go
growpart /dev/mmcblk0 2 # étend la partition 2 jusqu'à la fin
sudo reboot
# 2. Étendre le système de fichiers (ext4)
sudo resize2fs /dev/mmcblk0p2
df -h / # la racine occupe désormais ~32 Go
# 3. Trim périodique pour la santé de l'eMMC
systemctl status fstrim.timer || sudo systemctl enable --now fstrim.timer
# 4. (Optionnel) Méthode tout-en-un via raspi-config :
sudo raspi-config --expand-rootfs && sudo reboot
Vérification attendue
Après growpart + resize2fs (ou raspi-config --expand-rootfs), df -h / affiche une racine d'environ 32 Go avec plusieurs Go disponibles. lsblk montre mmcblk0p2 à la taille du disque. systemctl list-timers | grep fstrim confirme le passage périodique du trim.
Erreurs fréquentes
- Faire growpart sans sudo : la commande échoue silencieusement ou refuse ; relancer avec les droits superutilisateur.
- Oublier resize2fs après growpart : la partition est grande mais le système de fichiers reste à 2 Go —
dfne change pas d'un octet. - Manipuler les partitions sans sauvegarde sur un module de production : growpart est sûr dans le cas simple (dernière partition), pas si le schéma a été modifié à la main.
- Croire le CM3+ Lite concerné : sans eMMC, son stockage est une SD externe sur l'interface SDX, à dimensionner côté carte porteuse.
- Écrire frénétiquement en boucle sur l'eMMC (logs à 10 Hz) : sans chiffre officiel d'endurance publié, privilégier journald en mémoire (Storage=volatile) pour les traces volumineuses.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
clignotante.pyPythonbouton-gpio.pyPythoncapteur-i2c.shBashsurveillance-temperature.shBashcapteur-dht11.pyPythonservo-pwm-sysfs.shBash