Error when upgrading system : "update-initramfs : Write error : cannot write block : No space left on device"

Bonjour, la mise à jour des packages system de yunohost 12.1 semble avoir fonctionné par contre je rencontre des erreurs (toutes identiques) lorsque je souhaite procéder aux mises à jour des applications :

Vous ne pouvez pas faire ça maintenant car dpkg/apt (le gestionnaire de paquets du système) semble avoir laissé des choses non configurées… Vous pouvez essayer de résoudre ce problème en vous connectant via SSH et en exécutant sudo apt install --fix-broken et/ou sudo dpkg --configure -a et/ou sudo dpkg --audit.

En ssh, chacune des 3 commandes proposées ne fonctionnent pas, j’ai une erreur :

update-initramfs: Generating /boot/initrd.img-6.1.0-38-amd64
zstd: error 70 : Write error : cannot write block : No space left on device 
E: mkinitramfs failure zstd -q -9 -T0 70
update-initramfs: failed for /boot/initrd.img-6.1.0-38-amd64 with 1.
dpkg: erreur de traitement du paquet initramfs-tools (--configure) : le sous-processus paquet initramfs-tools script post-installation installé a renvoyé un état de sortie d'erreur 1Des erreurs ont été rencontrées pendant l'exécution : initramfs-tools
E: Sub-process /usr/bin/dpkg returned an error code (1)

Il semblerait, si je comprends bien, d’un manque de place sur un périphérique. J’ai tenté la commande “autoremove” qui me donne la même erreur.
Comment régler ce soucis ?

Salut,

As-tu essayé cette commande pour nettoyer le stockage :

sudo yunohost tools basic-space-cleanup

Et pour nettoyer le cache du serveur et SWAP :

sync; echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a
1 Like

Bonjour,
Merci pour cette piste, mais j’ai toujours cette erreur

update-initramfs: Generating /boot/initrd.img-6.1.0-38-amd64
zstd: error 70 : Write error : cannot write block : No space left on device
E: mkinitramfs failure zstd -q -9 -T0 70
update-initramfs: failed for /boot/initrd.img-6.1.0-38-amd64 with 1.
dpkg: erreur de traitement du paquet initramfs-tools (–configure) :
le sous-processus paquet initramfs-tools script post-installation installé a re
nvoyé un état de sortie d’erreur 1
Des erreurs ont été rencontrées pendant l’exécution :
initramfs-tools
E: Sub-process /usr/bin/dpkg returned an error code (1)

par contre la commande a nettoyé les journaux archivés.

La seconde commande ne s’est pas exécutée :

-bash: /proc/sys/vm/drop_caches: Permission non accordée

Remarque : je n’ai pas de journal de ces erreurs !

Ayant déjà rencontré un pb de place sur la partition /boot il y a 2 ou 3 ans, j’ai purgé 5 des 8 noyaux existants, j’ai conservé
ii linux-image-6.1.0-37-amd64 6.1.140-1 (signed)
ii linux-image-6.1.0-38-amd64 6.1.147-1 (signed)
ii linux-image-amd64 6.1.147-1 (meta package).
Cela n’a apparemment rien changé.

Déjà les commandes yunohost fonctionnent… Est-ce que le migrations ce sont bien passées ?

Les versions et l’espace ? (en passant en root, aussi je pense que la commande qui n’est pas passée tout au-dessus pour vider le drop_cache peut-être car pas faîtes en )

yunohost tools versions
df -h

est-ce que un diff des regen-conf propose des changements

yunohost tools regen-conf -n -d

aussi que renvoi ?

yunohost tools update

Peut-être encore un nettoyage des confs apt autoremove --purge mais cette commande a déjà du être effectuée avec le nettoyage yunohost tools basic-space-cleanup ??

Sinon, peut-être tenter de réinstaller intramfs-tools ?

apt install --reinstall initramfs-tools

Ça ressemble un peu à ce même souci qu’ici :backhand_index_pointing_down:

Tu peux essayer comme ça :

sudo sh -c "echo  3 > /proc/sys/vm/drop_caches"

J’en profite pour te filer ce script.
Script que j’avais récupéré l’année dernière pour nettoyer les noyaux obsolètes sous Debian et les résidus.
Ça m’a pas mal aidé, notamment sur mes ordinateurs chez-moi qui sont sous Debian, mais teste-le avant.

#!/bin/bash
#
# ╭──────────────────│ Script nettoyage du noyau Debian │──────────────────╮
# │                                                                        │
# │ DESCRIPTION :                                                          │
# │ Script qui permet d'identifier le noyau en cours d'exécution,          │
# │ il compile la liste de toutes les versions installées.                 │
# │ Il supprime ensuite tous les noyaux sauf les deux plus récents,        │
# │ ce qui permet de garantir la stabilité du système                      │
# │ tout en libérant de l'espace disque.                                   │
# │ Une fois les anciens noyaux supprimés,                                 │
# │ le script effectue un nettoyage avec apt-get autoremove                │
# │ pour supprimer les dépendances résiduelles et les paquets inutilisés.  │
# │ Enfin, il fournit un résumé du nombre de noyaux supprimés.             │
# │                                                                        │
# │────────────────────────────────────────────────────────────────────────│
# │                                                                        │
# │             Créer le script Yunohost « kernel-cleanup.sh »             │
# │             ──────────────────────────────────────────────             │
# │ 1) Création du script :                                                │
# │ •   nano kernel-cleanup.sh                                             │
# │ •                                                                      │
# │ 2) Rendre exécutable le script :                                       │
# │ •   sudo chmod +x kernel-cleanup.sh                                    │
# │ •                                                                      │
# │ 3) Tester le script :                                                  │
# │ •   ./kernel-cleanup.sh                                                │
# ╰────────────────────────────────────────────────────────────────────────╯
#
# Afficher la version du noyau
current_kernel=$(uname -r)

# Répertorie tous les noyaux installés, triés par ordre de version et exclut le noyau actuel.
installed_kernels=$(ls /lib/modules | grep -v "$current_kernel" | sort -V)

# Conserve les deux noyaux les plus récents.
kernels_to_keep=$(echo "$installed_kernels" | tail -n 2)

# Créer une liste de noyaux à supprimer, en excluant les noyaux à conserver.
kernels_to_remove=$(comm -23 <(echo "$installed_kernels") <(echo "$kernels_to_keep"))

if [ -n "$kernels_to_remove" ]; then
  # Supprime chaque noyau de la liste des noyaux à supprimer.
  for kernel in $kernels_to_remove
  do
    echo "Suppression $kernel"
    sudo apt-get remove -y "linux-image-$kernel"
    sudo apt-get purge -y "linux-image-$kernel"
    sudo rm -rf "/lib/modules/$kernel"
  done

  # Nettoie tous les packages inutilisés restants.
  sudo apt-get autoremove -y
  echo "Nettoyage terminé !"

  # Affiche le nombre de noyaux retiré.
  num_kernels_to_remove=$(echo "$kernels_to_remove" | wc -l)
else
  echo "Aucun noyau à supprimer"
  num_kernels_to_remove=0
fi

echo "Nombre de noyaux supprimé : $num_kernels_to_remove"


2 Likes

Merci pour cet outil qui me sera d’un grand secours !

2 Likes

la commande initiale est bien passée en root…mais toujours la même erreur.

Pour répondre aux questions de @rodinux :
Les migrations se sont faites sans soucis
Effectivement, la commande drop_cache semble effectivement être passée en root
Versions de yunohost :

yunohost:
repo: stable
version: 12.1.16
yunohost-admin:
repo: stable
version: 12.1.10
yunohost-portal:
repo: stable
version: 12.1.1
moulinette:
repo: stable
version: 12.1.3
ssowat:
repo: stable
version: 12.1.1
L’espace sur les différents disques :
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev 16G 0 16G 0% /dev
tmpfs 3,2G 992K 3,2G 1% /run
/dev/sdb6 1,8T 534G 1,2T 31% /
tmpfs 16G 2,1M 16G 1% /dev/shm
tmpfs 5,0M 0 5,0M 0% /run/lock
/dev/sdb1 222M 158M 49M 77% /boot
/dev/sda1 1,8T 675G 1,1T 39% /mnt/tom
/dev/sdc1 2,3T 997G 1,2T 46% /mnt/wdc
/dev/sdd1 1,8T 465G 1,3T 27% /mnt/multimedias
tmpfs 3,2G 40K 3,2G 1% /run/user/121
tmpfs 3,2G 36K 3,2G 1% /run/user/42944

La regen-conf renvoi un succès (si ce n’est un soucis de dnsmasq:
Succès ! La configuration aurait dû être mise à jour pour la catégorie ‘dnsmasq’

yunohost tools update renvoi ça :

Info : Récupération des mises à jour disponibles pour les paquets du système…
Info : Mise à jour du catalogue des applications…
Succès ! Le catalogue des applications a été mis à jour !
apps: 
  0: 
    description: CMS moderne basé sur des fichiers plats
    domain_path: "mon-domaine".ynh.fr/grav
    id: grav
    name: Grav
    upgrade: 
      current_version: 1.7.48~ynh2
      message: L'application peut être mise à jour de la version 1.7.48~ynh2 à la version 1.7.49.2~ynh1
      new_revision: 7572428aab287e2d7661602a41a764e6bd8b23dd
      new_version: 1.7.49.2~ynh1
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures all. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 50M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 11.1.30. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/grav_ynh
    version: 1.7.48~ynh2
  1: 
    description: Sauvegarde de photos et de vidéos directement depuis votre mobile
    domain_path: immich."mon-domaine".ynh.fr/
    id: immich
    name: Immich
    upgrade: 
      current_version: 1.135.3~ynh1
      message: L'application peut être mise à jour de la version 1.135.3~ynh1 à la version 1.140.1~ynh1
      new_revision: 9db38f328d4cfbfb8435823f536805594459fe98
      new_version: 1.140.1~ynh1
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures arm64, amd64. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 2G de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/immich_ynh
    version: 1.135.3~ynh1
  2: 
    description: Outil de création et diffusion de sondage
    domain_path: "mon-domaine".ynh.fr/sondage
    id: limesurvey
    name: LimeSurvey
    upgrade: 
      current_version: 6.15.2~ynh1
      message: L'application peut être mise à jour de la version 6.15.2~ynh1 à la version 6.15.8~ynh1
      new_revision: f1845e97dae00cdd72b7c4c8fcd81903c9c24653
      new_version: 6.15.8~ynh1
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures all. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 150M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12.0.8. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/limesurvey_ynh
    version: 6.15.2~ynh1
  3: 
    description: Serveur de musique moderne et Streamer compatibles avec Subsonic/Airsonic
    domain_path: "mon-domaine".ynh.fr/navidrome
    id: navidrome
    name: Navidrome
    upgrade: 
      current_version: 0.57.0~ynh1
      message: L'application peut être mise à jour de la version 0.57.0~ynh1 à la version 0.58.0~ynh2
      new_revision: a78e56ad083460b0567a588fa2e616dd19100f19
      new_version: 0.58.0~ynh2
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures amd64, arm64, armhf. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 90M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12.0.9. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/navidrome_ynh
    version: 0.57.0~ynh1
  4: 
    description: Stockage en ligne, plateforme de partage de fichiers et diverses autres applications
    domain_path: "mon-domaine".ynh.fr/nextcloud
    id: nextcloud
    name: Nextcloud
    upgrade: 
      current_version: 31.0.7~ynh1
      message: L'application peut être mise à jour de la version 31.0.7~ynh1 à la version 31.0.8~ynh1
      new_revision: 38f165a550622313fea05aaf1e05a072a62ffc7b
      new_version: 31.0.8~ynh1
      notifications: 
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures amd64, arm64, armhf. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 512M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12.0.9. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/nextcloud_ynh
    version: 31.0.7~ynh1
  5: 
    description: Sauvegarder, trier, synchroniser et partager des adresses web
    domain_path: "mon-domaine".ynh.fr/shaarli
    id: shaarli
    name: Shaarli
    upgrade: 
      current_version: 0.14.0~ynh1
      message: L'application peut être mise à jour de la version 0.14.0~ynh1 à la version 0.15.0~ynh1
      new_revision: ddb299571d2ec70fdbed0fbf73021128b50ae5e7
      new_version: 0.15.0~ynh1
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures all. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 50M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12.0.9. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/shaarli_ynh
    version: 0.14.0~ynh1
  6: 
    description: Émulateur de terminal web
    domain_path: "mon-domaine".ynh.fr/ssh
    id: shellinabox
    name: Shell In A Box
    upgrade: 
      current_version: 2.21~ynh4
      message: Cette application n'existe pas (plus ?) dans le catalogue, vous devez donc vous occuper manuellement des mises à jour. <br/><small>Depuis la ligne de commande, vous pouvez utiliser `yunohost app upgrade <app>` et fournir l'URL du dépôt à l'aide de l'option `-u`.</small>
      new_revision: None
      new_version: None
      requirements: None
      specific_channel: None
      specific_channel_message: None
      status: url_required
      url: None
    version: 2.21~ynh4
  7: 
    description: Lecteur de flux d’actualité utilisant les protocoles RSS et Atom
    domain_path: "mon-domaine".ynh.fr/ttrss
    id: ttrss
    name: Tiny Tiny RSS
    upgrade: 
      current_version: 2025.07.12~ynh1
      message: L'application peut être mise à jour de la version 2025.07.12~ynh1 à la version 2025.08.15~ynh1
      new_revision: 34a91e9d640b56ed752b1420b18d6ac3f80151de
      new_version: 2025.08.15~ynh1
      notifications: 
        main: Si vous faites la mise à jour depuis la version 20230630 ou une version antérieur : nous passons de MariaDB à la base de données PostgreSQL. Il n'y a pas de migration de base de données pour l'instant. Il est conseillé d'exporter votre OPML, d'installer TTRSS et de réimporter le fichier OPML.
      requirements: 
        arch: 
          error: Cette application ne peut être installée que sur les architectures all. L'architecture de votre serveur est amd64
          id: arch
          passed: True
        ram: 
          error: Cette application nécessite 150M de mémoire vive (RAM) pour être installée/mise à jour mais seule 27G de mémoire est disponible actuellement.
          id: ram
          passed: True
        required_yunohost_version: 
          error: Cette application nécessite une version de YunoHost >= 12.0.9. La version installée est 12.1.16.
          id: required_yunohost_version
          passed: True
      specific_channel: None
      specific_channel_message: None
      status: upgradable
      url: https://github.com/YunoHost-Apps/ttrss_ynh
    version: 2025.07.12~ynh1
important_yunohost_upgrade: False
last_apps_catalog_update: 2
last_apt_update: 3
pending_migrations: 
system:

La commande apt autoremove --purge se termine sur la même erreur

Et ça donne quoi pour chaque commande ?

Pour sudo apt install -fix-broken :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
1 partiellement installés ou enlevés.
Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
Paramétrage de initramfs-tools (0.142+deb12u3) ...
update-initramfs: deferring update (trigger activated)
Traitement des actions différées (« triggers ») pour initramfs-tools (0.142+deb1
2u3) ...
update-initramfs: Generating /boot/initrd.img-6.1.0-38-amd64
zstd: error 70 : Write error : cannot write block : No space left on device 
E: mkinitramfs failure zstd -q -9 -T0 70
update-initramfs: failed for /boot/initrd.img-6.1.0-38-amd64 with 1.
dpkg: erreur de traitement du paquet initramfs-tools (--configure) :
 le sous-processus paquet initramfs-tools script post-installation installé a re
nvoyé un état de sortie d'erreur 1
Des erreurs ont été rencontrées pendant l'exécution :
 initramfs-tools
E: Sub-process /usr/bin/dpkg returned an error code (1)

Même chose pour les autres commandes

C’est pas un peu trop serré pour la partition boot ?

Merci.
J’y ai pensé : dès que je rentre, je m’occupe de modifier la taille de cette partition.
Clonezilla devrait-être mon ami sur ce coup :crossed_fingers:

1G devrait faire l’affaire. Tu peux utiliser gparted sur n’importe quel distro (ma préférée est mx linux)

(Splitted this discussion from the 12.1 release post to not pollute it too much)

1 Like

Merci d’avoir pallier mon inexpérience : avec toutes mes excuses.

1 Like

Merci du tuyau. Ce sera avec une mint pour moi…après clonage en cas de pépin !

Non mais c’est ok y’a pas à s’excuser x) Quand on démarre un bout de conversation on sais pas forcément où ça va mener et combien de temps / message ça va prendre, c’est juste que je me permet de remettre split le truc mais c’était pas facile de le savoir au moment où la conversation démarrait x)

1 Like