Question Pas assez d'espace disque libre lors de la mise à niveau


Je reçois une erreur dans la mise à jour du logiciel lorsque j'essaie de faire mes mises à jour quotidiennes. ça dit:

The upgrade needs a total of 25.3 M free space on disk `/boot`.
Please free at least an additional 25.3 M of disk space on `/boot`.
Empty your trash and remove temporary packages of former installations 
using `sudo apt-get clean`.

J'ai essayé de taper sudo apt-get clean dans le terminal mais je reçois toujours le message. Toutes les pages que je lis semblent être destinées à des Ubuntuers expérimentés. J'utilise Ubuntu 12.10. Je veux passer à la version 13.04, mais je dois d'abord les terminer.

C'est la sortie de la saisie cat /etc/fstab dans le terminal:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/mapper/ubuntu-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=fa55c082-112d-4b10-bcf3-e7ffec6cebbc /boot           ext2    defaults        0       2
/dev/mapper/ubuntu-swap_1 none            swap    sw              0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
matty@matty-G41M-ES2L:~$ 

Sortie de df -h:

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu-root  915G   27G  842G   4% /
udev                     984M  4.0K  984M   1% /dev
tmpfs                    397M  1.1M  396M   1% /run
none                     5.0M     0  5.0M   0% /run/lock
none                     992M  1.8M  990M   1% /run/shm
none                     100M   52K  100M   1% /run/user
/dev/sda1                228M  222M     0 100% /boot
matty@matty-G41M-ES2L:~$ 

Et dpkg -l | grep linux-image donne:

ii linux-image-3.5.0-17-generic 3.5.0-17.28 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-18-generic 3.5.0-18.29 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-19-generic 3.5.0-19.30 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-21-generic 3.5.0-21.32 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-22-generic 3.5.0-22.34 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-23-generic 3.5.0-23.35 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-24-generic 3.5.0-24.37 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-25-generic 3.5.0-25.39 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-26-generic 3.5.0-26.42 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
iF linux-image-3.5.0-28-generic 3.5.0-28.48 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP

136
2018-05-22 04:30


origine


De plus, le contenu de votre / etc / fstab pourrait être utile. Il semble que / boot soit monté sur une partition séparée. - Chuck R
Comme le dit @Githlar, votre fstab peut nous donner des informations sur vos partitions HD. - ssoto
fstab est un fichier contenant des informations sur les partitions montées au démarrage de votre ordinateur. Pour afficher le contenu de ce fichier, tapez cat /etc/fstab dans un terminal. Copiez le résultat et ajoutez-le à votre question (vous pouvez modifier votre question). Copiez également la sortie de df -h et dpkg -l | grep linux-image. - Alaa Ali
Votre problème est tout le extra linux-image... fichiers dans le /boot partition utilisant de l'espace - vous ne disposez que de 6 Mo sur la partition. sudo dpkg -P purge 'older_linux_image_filename' pour supprimer toutes les versions sauf les dernières = 3.5.0-28.48 et 3.5.0-26.42 Cela devrait vous permettre de mettre à jour / mettre à niveau. - douggro
Je devais juste courir sudo apt-get autoremove pour résoudre ce problème. - Juampy NR


Réponses:


Note: cette réponse se veut plus une «explication» que de fournir le meilleur moyen de supprimer les anciens noyaux. Pour trouver la meilleure façon de supprimer les anciens noyaux, consultez les autres réponses.

Ok, donc à partir de la sortie de /etc/fstab vous avez posté, il semble que votre /boot est monté sur une partition séparée et à partir de la sortie de df -h, cette partition est pleine. C'est parce qu'il y a d'anciens noyaux installés qui ne sont pas nécessaires; vous pouvez dire cela en regardant la sortie de dpkg -l | grep linux-image que vous avez posté, où vous pouvez en voir plus d'un "linux-image"avec différentes versions. Nous devons supprimer les anciennes versions.

Tout d'abord, je veux que vous exécutiez la commande uname -r dans un terminal, cela vous montrera la version du noyau que vous utilisez actuellement. Nous ne voulons jamais supprimer cette version du noyau. La commande dira quelque chose comme ça 3.5.0-26-generic. Prenez une note de ce numéro, 26! Les commandes suivantes supposent que c'est le noyau que vous utilisez.

La commande pour supprimer une ancienne version du noyau est la suivante:

sudo apt-get purge linux-image-x.x.x-xx-generic

... où les caractères x sont des nombres. Donc, dans votre cas, parce que vous avez beaucoup de vieilles versions (17, 18, 19, etc ...), nous devrions exécuter cette commande pour chacune des versions, comme ceci:

  • sudo apt-get purge linux-image-3.5.0-17-generic
  • sudo apt-get purge linux-image-3.5.0-18-generic
  • sudo apt-get purge linux-image-3.5.0-19-generic

...etc. Mais il y a un moyen de faire tout cela par une seule commande. La commande est la suivante (NE PAS EXÉCUTER LA COMMANDE ENCORE! Lisez ce qui suit. ):

sudo apt-get purge linux-image-3.5.0-{17,18,19,21,22,23,24}-generic

Cette commande supprimera les versions mentionnées entre parenthèses. Je n'ai pas inclus les versions 25, 26 et 28 pour les raisons suivantes:

  • N'a pas inclus 26 évidemment car c'est la version du noyau que vous utilisez actuellement! C'est la version que nous avons obtenue de la commande uname -r, rappelles toi? Nous ne voulons jamais enlever ça!
  • N'a pas inclus 28 parce que c'est celui que votre mise à niveau essayait de mettre à niveau (vous pouvez le dire depuis le iF statut à côté de lui, ce qui signifie qu'il est "à moitié configuré").
  • N'a pas inclus 25, car il est généralement recommandé de laisser au moins une ancienne version. Donc, puisque vous exécutez 26, nous en garderons 25, donc nous ne l'inclurons pas dans la commande ci-dessus.

Donc, si le dernier numéro dans uname -r est 26 (ou 28, ou même 25), alors il est sécuritaire d'exécuter la commande ci-dessus. Entrez votre mot de passe lorsque vous y êtes invité et tapez y quand demandé Cela montrera un tas de lignes, et reviendra éventuellement à l'invite de commande (dans votre cas, matty@matty-G41M-ES2L:~$), espérons sans erreurs. Quand c'est fait, faire df -h et regardez la dernière ligne, celle qui commence par /dev/sda1. Vous devriez trouver qu'il a maintenant plus d'espace et que le pourcentage utilisé est inférieur à 100% comme auparavant. Vous pouvez maintenant poursuivre votre mise à jour.


186
2018-05-23 07:57



Ça a marché!!! Merci beaucoup! Question bonus: lorsque j'ai téléchargé Ubuntu pour la première fois, j'ai accidentellement supprimé le dossier "images" dans la zone d'origine. En raison de cela, il n'y a pas d'onglet "photos" sur le côté. J'ai contourné cela en créant simplement un dossier appelé "images" mais il n'apparaît pas dans la barre latérale. Savez-vous comment y arriver? J'ai essayé de cliquer et de glisser, mais en vain. @Alaa - carmatt95
De rien! Pour l'autre question, créez une autre question et je vais y répondre. De cette façon, les personnes qui recherchent ce problème peuvent le trouver. - Alaa Ali
J'aurais aimé pouvoir le prendre à chaque fois que je reviendrais pour le référencer ... ça aurait déjà beaucoup changé. - sevenseacat
oui, encore ici pour faire référence à la même chose. Vous penseriez que je m'en souviendrais maintenant. - sevenseacat
Une commande plus concise pour purger tous les anciens noyaux est la suivante: sudo apt-get autoremove --purge - ctrueden


Vous pouvez installer Ubuntu-Tweak.To installer procédez comme suit:

Ouvrez le terminal. Ajoutez le référentiel requis avec la commande:

sudo add-apt-repository ppa:tualatrix/ppa

Mettez à jour la liste des logiciels avec la commande:

sudo apt-get update

Enfin, installez Ubuntu Teak avec la commande:

sudo apt-get install ubuntu-tweak

Après cela, ouvrez le tiret et tapez "tweak ubuntu".

Et puis allez à janitor onglet et sélectionnez Apps , Personal et System cases à cocher et cliquez sur nettoyer bouton en bas à droite.


42
2018-06-11 15:15



Beaucoup mieux que de jouer avec la ligne de commande et d'essayer de supprimer tous les noyaux, mais pas les courants quand ils ont même des versions différentes (pas seulement -32 à la fin) et des paquets -extra. Ubuntu tweak m'a sauvé 5 minutes, merci! - POMATu
Beaucoup plus pratique. - Saeed Amiri
Je ne pouvais pas ajouter le PPA mais j'ai téléchargé le .deb du site web du projet ubuntu-tweak.com - Luigi Siri
pas besoin d'ajouter de PPA sur Ubuntu 14.04 - Edward Torvalds
@edwardtorvalds Bien sûr, vous pouvez l’installer sans ajouter son PPA le 14.04 et aussi 14.10 par son .deb paquet, mais ce n'est pas le plus préférable. La raison pour laquelle vous voulez l'installer via son PPA est parce qu'il garantit les mises à jour. - αғsнιη


Un moyen rapide de supprimer tous les noyaux et les en-têtes inutilisés (à l'exception du noyau en cours d'exécution) a été signalé par @Lekensteyn dans son répondre À la question Comment puis-je libérer plus d'espace dans / boot?:

sudo apt-get purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve "$(uname -r | sed -r 's/-[a-z]+//')") 

Cela devrait libérer suffisamment d'espace pour que vous puissiez mettre à niveau.


14
2017-09-30 08:00





Il y a un rapport de bogue sur la question ici: https://bugs.launchpad.net/ubuntu/+source/update-manager/+bug/1183692

N'hésitez pas à dire si "ce bogue vous affecte aussi", de manière à attirer plus d’attention.


6
2017-10-29 09:38





Sur mon système Ubuntu à la maison, je suis une méthode similaire à celle affichée, mais c'est un peu plus simple et efface plus d'espace avec les en-têtes du noyau, etc.

  1. Je vérifie ce que j'utilise comme noyau impératif ne pas interférer avec cela.

    uname -a
    
  2. Ensuite, je regarde / boot dans le but de supprimer tous les fichiers liés au noyau qui sont ne pas lié directement au noyau en cours d'exécution. Cela me donne une liste de toutes les versions du noyau que je veux supprimer, par exemple: 3.5.0-17, 3.5.0-18

    ls -l /boot
    
  3. Maintenant, je prends la première version du noyau dans ma liste de purge et je trouve tous les paquets associés.

    dpkg -l | grep 3.5.0-17
    
  4. Purge-les du système

    sudo apt-get purge <list of packages separated by spaces>
    
  5. Revenez à 3 et sélectionnez la prochaine version du noyau dans ma liste de purge.

  6. Terminé


3
2017-07-18 09:59





J'ai eu cette erreur, cet article a aidé.

j'ai utilisé df -h pour identifier que le démarrage était complet, uname -r pour la version, puis utilisé le purge chaîne ci-dessus pour supprimer les anciens noyaux. purge du noyau unique a fonctionné, multi n'a pas (pour moi).

J'ai trouvé les fichiers dans la fenêtre Windows; Je ne pouvais pas les supprimer, je devais utiliser le terminal, mais cela m'a montré les anciennes versions que j'avais.

Je ne sais pas pourquoi / boot (sda2) est partitionné du tout et pourquoi il est si petit. mais maintenant je peux à nouveau utiliser Ubuntu Updater.

J'ai eu un petit succès avec sudo apt-get update,sudo apt-get upgrade, sudo apt-get clean, a également essayé le logiciel libre Bleachbit. Utilisez la chaîne de purge mais pas sur votre version actuelle. J'espère que cela aide quelqu'un.


1
2017-08-13 02:36



edit: je ne pense pas que vous devez ajouter "-generic" à la chaîne de purge - Brian P


Avez-vous d'anciens paquets d'images de noyau installés, qui ne sont pas utilisés? Ceux-ci peuvent prendre de la place sur / boot. Je recommande de revoir l'ensemble des packages de noyau installés avec une commande telle que celle-ci:

dpkg -l "linux-image*" | grep "^i"

Cela devrait fournir une vue d'ensemble de l'ensemble des packages d'image du noyau installés. Pour ceux linux-image les paquets qui ne sont pas utilisés et qui ne seraient pas nécessaires à des fins de récupération - par exemple, par exemple J'aime conserver au moins une version du noyau derrière la version active installée, pour la récupération - sinon, vous pouvez supprimer ces paquets inutilisés, en utilisant votre outil de packaging préféré, tel qu'aptitude.

Je recommande également de jeter un oeil à la relation inux-en-têtes, linux-image-extras (le cas échéant), également linux-source, et linux-tools paquets, tels que ceux qui peuvent être installés avec tout linux-image paquets.


0
2018-05-23 07:27





Je doute que beaucoup de gens, voire aucun, rencontrent ce problème, mais je le mets ici pour la documentation au cas où quelqu'un en aurait besoin.

Mon problème est que je compilais différents noyaux personnalisés jusqu'à ce que je manque d'espace. La façon dont je devais nettoyer l’espace était d’entrer dans chaque répertoire du noyau dans lequel je travaillais et de lancer un sudo make clean.

  • $ cd /usr/src Répertoire où se trouve le source du noyau
  • $ cd linux-image-custom_kernel_name
  • $ sudo make clean

0
2017-11-10 14:41