PiShrink est un script bash qui réduit automatiquement la taille d’une image de système Raspberry Pi. Cette image sera ensuite redimensionnée à la taille maximale de la carte SD au démarrage. Cela permet de remettre l’image sur la carte SD plus rapidement. De plus, les images réduites se compressent mieux avec gzip et xz pour créer une image encore plus petite. La compression de l’image à l’aide de plusieurs cœurs est prise en charge par le script.
Au sommaire :
PiShrink pour compresser une image de Raspberry Pi OS
Utilisation
$0 [-adhrsvzZ] imagefile.img [newimagefile.img]
-s Ne pas étendre le système de fichiers lorsque l’image est démarrée pour la première fois
-v Être bavard
-r Utiliser l’option de réparation avancée du système de fichiers si l’option normale échoue
-z Compresser l’image après réduction avec gzip
-Z Compresser l’image après réduction avec xz
-a Compresser l’image en parallèle en utilisant plusieurs cœurs
-d Écrire les messages de débogage dans un fichier journal de débogage
Si vous spécifiez le paramètre newimagefile.img, le script fera une copie de imagefile.img et travaillera à partir de celle-ci. Pour utiliser cette option, vous devez disposer de suffisamment d’espace pour effectuer une copie complète de l’image.
-s empêche l’expansion automatique du système de fichiers sur les images au prochain démarrage
-v permet une sortie plus verbeuse
-r tente de réparer le système de fichiers en utilisant des options supplémentaires si la réparation normale échoue
-z compresse l’image après la réduction en utilisant gzip. L’extension .gz sera ajoutée au nom du fichier.
-Z compressera l’image après réduction en utilisant xz. L’extension .xz sera ajoutée au nom du fichier.
-a utilise l’option -f9 pour pigz et l’option -T0 pour xz et compresse en parallèle.
-d crée un fichier journal pishrink.log qui peut aider à l’analyse du problème.
Les options par défaut des compresseurs peuvent être écrasées en définissant les variables d’environnement PISHRINK_GZIP ou PSHRINK_XZ pour gzip et xz.
Prérequis
Si vous exécutez PiShrink dans VirtualBox, vous rencontrerez probablement une erreur si vous essayez d’utiliser la fonction « Dossier partagé » de VirtualBox. Vous pouvez copier l’image que vous souhaitez rétrécir sur la VM à partir d’un dossier partagé, mais rétrécir directement à partir du dossier partagé va provoquer des problèmes.
Si vous utilisez Ubuntu, vous verrez probablement une erreur concernant e2fsck qui n’est pas à jour et metadata_csum. La solution la plus simple est d’utiliser Ubuntu 16.10 et plus, car cela vous évitera bien des soucis à long terme.
Installation
wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh
chmod +x pishrink.sh
sudo mv pishrink.sh /usr/local/bin
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
[user@localhost PiShrink]$ sudo pishrink.sh pi.img e2fsck 1.42.9 (28-Dec-2013) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/loop1: 88262/1929536 files (0.2% non-contiguous), 842728/7717632 blocks resize2fs 1.42.9 (28-Dec-2013) resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/loop1 to 773603 (4k) blocks. Begin pass 2 (max = 100387) Relocating blocks XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Begin pass 3 (max = 236) Scanning inode table XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Begin pass 4 (max = 7348) Updating inode references XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX The filesystem on /dev/loop1 is now 773603 blocks long. Shrunk pi.img from 30G to 3.1G |
Contribuer
Si vous trouvez un bogue, veuillez créer un « issue » à ce sujet. Si vous souhaitez qu’une nouvelle fonctionnalité soit ajoutée, vous pouvez créer un « issue » à ce sujet, mais l’auteur ne peut pas promettre que la demande aboutira.
Les demandes d’extension pour les nouvelles fonctionnalités et les corrections de bugs sont les bienvenues !
Ping : Compressez votre Raspberry Pi OS avec PiShrink
Ping : Un Point d'Accès WiFi avec RaspAP, un Raspberry Pi 5 et Bookworm - Framboise 314, le Raspberry Pi à la sauce française....