web-dev-qa-db-fra.com

Le démarrage est complet ne peut pas obtenir apt-get pour mettre à jour

J'ai suivi la plupart des instructions, une réinitialisation trouvée sur les interwebs, je suis un peu bête pour Linux, je l'utilise surtout pour les tests de développement web, mais je suis plutôt doué pour suivre les instructions de commande;)

Malheureusement, ma boîte semble coincée avec le répertoire/boot complet et je ne parviens pas à comprendre les étapes à suivre pour la nettoyer.

Je pense que je ne peux pas nettoyer le démarrage car le noyau 39 est en attente d'installation, mais je peux le supprimer de l'installation en attente car le démarrage est plein?

Voici la suite d'étapes que j'ai tentées:

pedro@lamp01:~$ Sudo apt-get autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run âapt-get -f installâ to correct these.
The following packages have unmet dependencies.
 linux-image-generic-lts-quantal : Depends: linux-image-3.5.0-39-generic but it is not installed
E: Unmet dependencies. Try using -f.


pedro@lamp01:~$ Sudo apt-get purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve "$(uname -r | sed -r 's/-[a-z]+//')")
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies.
 linux-headers-generic-lts-quantal : Depends: linux-headers-3.5.0-39-generic but it is not going to be installed
 linux-image-generic-lts-quantal : Depends: linux-image-3.5.0-39-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).


pedro@lamp01:~$ Sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.5.0-32-generic linux-headers-3.5.0-27-generic
  linux-headers-3.5.0-30-generic linux-headers-3.5.0-28-generic
  linux-headers-3.5.0-30 linux-headers-3.5.0-31 linux-headers-3.5.0-26
  linux-headers-3.5.0-32 linux-headers-3.5.0-27 linux-headers-3.5.0-28
  linux-headers-3.5.0-31-generic linux-headers-3.5.0-26-generic
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  linux-image-3.5.0-39-generic
Suggested packages:
  fdutils linux-lts-quantal-doc-3.5.0 linux-lts-quantal-source-3.5.0
  linux-lts-quantal-tools
The following NEW packages will be installed
  linux-image-3.5.0-39-generic
0 upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
3 not fully installed or removed.
Need to get 0 B/40.7 MB of archives.
After this operation, 157 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
(Reading database ... 269199 files and directories currently installed.)
Unpacking linux-image-3.5.0-39-generic (from .../linux-image-3.5.0-39-generic_3.5.0-39.60~precise1_AMD64.deb) ...
Done.
dpkg: error processing /var/cache/apt/archives/linux-image-3.5.0-39-generic_3.5.0-39.60~precise1_AMD64.deb (--unpack):
 failed in write on buffer copy for backend dpkg-deb during `./boot/vmlinuz-3.5.0-39-generic': No space left on device
No apport report written because the error message indicates a disk full error
                                                                              dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.5.0-39-generic /boot/vmlinuz-3.5.0-39-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.5.0-39-generic /boot/vmlinuz-3.5.0-39-generic
Errors were encountered while processing:
 /var/cache/apt/archives/linux-image-3.5.0-39-generic_3.5.0-39.60~precise1_AMD64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
pedro@lamp01:~$

Il est un peu étrange que l'extraction automatique semble forcer l'installation, le noyau actuel est 37:

pedro@lamp01:~$ uname -a
Linux lamp01 3.5.0-37-generic #58~precise1-Ubuntu SMP Wed Jul 10 17:48:11 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Quelqu'un peut-il aider?

Merci beaucoup, P.

1
Pedro Costa

Etant donné que je n'ai pas une configuration similaire, je ne peux pas dire si ces solutions fonctionnent bien. Avant d'essayer quoi que ce soit effectuez une sauvegarde! Ceci dit, vous pouvez essayer les solutions suivantes:

  1. En utilisant dpkg pour supprimer les anciens noyaux et installer le nouveau après. Par exemple:

    $ Sudo dpkg -r linux-headers-3.5.0-28-generic
    
  2. Si cela ne fonctionne toujours pas, vous pouvez essayer de déplacer temporairement certains fichiers du noyau plus anciens vers un emplacement différent (partition racine, une clé USB, etc.), d'installer le nouveau noyau, puis de supprimer les anciens noyaux, tout en déplaçant les fichiers du noyau. à leur emplacement par défaut;

  3. Vous pouvez essayer de "déplacer" temporairement votre point de montage /boot (en supposant que vous disposez de suffisamment d'espace disque sur /). Cela prendra les étapes suivantes:

    • Démontez votre point de montage/boot: Sudo umount /boot;
    • Montez-le n'importe où: Sudo mount /dev/**your boot partition** /mnt;
    • Déplacez vos fichiers de/mnt vers/boot: vous pouvez utiliser gksu nautilus ou Sudo mv pour le faire.
    • Effectuez les modifications souhaitées (installation du nouveau noyau, suppression des anciens);
    • Copiez les fichiers de/mnt dans/boot;

Notez également que si vous utilisez LVM, le redimensionnement d'une partition est beaucoup plus facile (vous n'avez même pas besoin d'arrêter quoi que ce soit/de redémarrer/d'utiliser des CD dynamiques). Donc, si c'est le cas, utilisez simplement lvextend pour augmenter l'espace disponible sur la partition /boot.

2
Salem

Je suis sûr que si vous faites un df -h, vous remarquerez que votre partition /boot est pleine.

 braiam @ bt: ~ $ df -h 
 Taille du système de fichiers utilisée Dispail Utilisation% Monté sur 
/dev/sda7 14G 9.8G 3.3G 76% /
/ dev/sda5 922M 40M 819M 5%/boot

Cela se produit parce que vous l’avez rendue trop petite, ou que vous avez écrasé plusieurs noyaux dont vous n’avez pas besoin, ou que vous venez de le remplir avec un fond de licorne pour Grub ... De toute façon, il existe 2 solutions simples:

  1. Désinstallez les noyaux obsolètes.

    Sudo apt-get -y autoremove
    Sudo apt-get -f install
    
  2. Rendez votre partition /boot plus grande.

    Cela nécessite de démarrer dans un système d'exploitation Live, puis de redimensionner la partition.

1
Braiam