« Partition-pleine » : différence entre les versions
(Page créée avec « Au secours mon disque est plein à 100 % Si vous en êtes là, cette page est écrite pour vous. Comment s'en rendre compte. utilisez la commande df Si vous voyez ma... ») |
mAucun résumé des modifications |
||
(14 versions intermédiaires par 8 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
Au secours mon disque est plein à 100 % | Au secours mon [[Le_partitionnement#Le_Disque_dur|disque]] est plein à 100 % | ||
En réalité nous parlons ici des [[Le_partitionnement#Les_partitions|partitions]]: ''En micro-informatique, une partition est une partie d'un disque dur destinée à accueillir un système de fichiers.'' | |||
Si vous en êtes là, cette page est écrite pour vous. | Si vous en êtes là, cette page est écrite pour vous. | ||
Ligne 5 : | Ligne 8 : | ||
Comment s'en rendre compte. | Comment s'en rendre compte. | ||
utilisez la commande | utilisez la commande | ||
<pre>df</pre> | |||
Si vous voyez marqué 100% | |||
Voici un exemple de ce qu'elle présente : | |||
<pre> | |||
#df -h | |||
Sys. de fichiers Taille Uti. Disp. Uti% Monté sur | |||
/dev/sda1 14G 4,5G 8,9G 34% / | |||
tmpfs 1,4G 0 1,4G 0% /lib/init/rw | |||
udev 1,4G 252K 1,4G 1% /dev | |||
tmpfs 1,4G 508K 1,4G 1% /dev/shm | |||
/dev/sda5 20G 8,9G 9,9G 48% /home | |||
</pre> | |||
Si vous voyez marqué 100% dans la colonne « Uti% », vous avez une partition pleine. | |||
== df m'indique une partition pleine alors qu'il reste de la place == | |||
'''Si df vous indique qu'une partition est pleine alors que la place utilisée est inférieur à la taille de la partition.''' | |||
Par défaut les système de fichiers sont configurés pour réserver 5% de l'espace disque pour l'administrateur. Cela peut devenir très gros sur une très grosse partition (pour une partition de 2Tio cela fait plus de 100Gio). Bien sûr on peut réduire cet espace réservé avec la commande suivante (réserver 2% de l'espace sur le périphérique /de/device normalement de la forme /dev/sda1) : | |||
<pre>#tune2fs -m 2 /dev/device</pre> | |||
== Cache APT == | |||
APT garde des anciennes versions de paquets dans /var/cache/apt/archives, en cas de besoin. | |||
On peut déterminer la taille de ce cache ainsi : | |||
<pre> | |||
#du -sh /var/cache/apt/archives | |||
1007M /var/cache/apt/archives | |||
</pre> | |||
Ici on voit que ce cache fait presque 1 Gio. | |||
Pour vider ce cache il suffit de lancer la commande : | |||
<pre>#apt-get clean</pre> | |||
== Fichiers de log == | |||
=== Méthode simple === | |||
La grande majorité du temps, c'est un ou plusieurs fichiers de log qui se remplissent. | La grande majorité du temps, c'est un ou plusieurs fichiers de log qui se remplissent. | ||
Aller dans le répertoire /var/log, et supprimez | Aller dans le répertoire /var/log, et supprimez tous les fichiers se terminant par tgz (sauf évidement si vous suspectez une intrusion sur votre système et que vous avez besoin de tous les logs) | ||
=== Méthode plus évoluée === | |||
Si vous avez supprimé les archives de log, et que votre disque est toujours trop plein, il va falloir affiner. | Si vous avez supprimé les archives de log, et que votre disque est toujours trop plein, il va falloir affiner. | ||
commencez par repérer le répertoire qui est anormalement rempli. on part de la racine, et on affine par itérations. | commencez par repérer le répertoire qui est anormalement rempli. on part de la racine, et on affine par itérations. | ||
<pre>#du -m /| sort -g</pre> | |||
Si vous repérez que c'est /var qui est anormalement rempli, descendez d'un cran avec | Si vous repérez que c'est /var qui est anormalement rempli, descendez d'un cran avec | ||
<pre>#du -m /var | sort -g</pre> | |||
Ligne 29 : | Ligne 68 : | ||
L'astuce est de ne regarder que le début, ou la fin, avec | L'astuce est de ne regarder que le début, ou la fin, avec | ||
<pre> | |||
$ head fichier | |||
$ tail fichier | |||
</pre> | |||
Si il n'y a rien | Si il n'y a rien d’intéressant dedans, et que ce n'est pas un fichier d'archive (.tgz), il est recommandé de le vider sans l'effacer. | ||
Une astuce pour le vider sans avoir à l'ouvrir: | Une astuce pour le vider sans avoir à l'ouvrir: | ||
<pre># echo >/var/log/fichier</pre> | |||
== cas particulier de /tmp == | |||
lors de certaines opérations, par exemple une compilation, il arrive parfois d'avoir ce message | |||
"no space left on device" | |||
Pour voir quelle est la taille de votre /tmp | |||
df -h /tmp | |||
Sys. fich. Taille Util. Dispo Uti% Monté sur | |||
tmpfs 50M 44K 50M 1% /tmp | |||
Il fait ici 50M. Certains utilisateurs se plaignent de la taille trop faible de /tmp sur les versions récentes de debian. Mais comme l'indique la commande df, /tmp utilise un système de fichiers de type [http://fr.wikipedia.org/wiki/Tmpfs tempfs], donc redimensionnable à chaud. | |||
Pour le passer à 100M | |||
mount -o remount,size=100M /tmp | |||
df -h /tmp | |||
Sys. fich. Taille Util. Dispo Uti% Monté sur | |||
tmpfs 100M 44K 100M 1% /tmp | |||
== Cas particulier : plus d'inodes disponibles == | |||
Vous rencontrez des erreurs "disque plein" (par exemple, lorsque vous tentez d'installer un paquet via apt-get ou aptitude), cependant la commande df vous indique que la partition n'est pas pleine? | |||
Il se peut fortement que votre système de fichiers soit à cours d'[https://fr.wikipedia.org/wiki/N%C5%93ud_d%27index inodes]. | |||
Cela peut se produire si votre système est saturé de fichiers de petite taille. | |||
La commande | |||
<code>df -i</code> vous confirmera si tel est le cas. | |||
Comment libérer des inodes? Il vous faut trouver et supprimer les fichiers qui saturent le système de fichiers. La commande suivante pourra vous aider à identifier les répertoires où se trouvent ces fichiers : | |||
<code>for i in /*; do echo "$i"; find "$i" |wc -l; done</code> | |||
[https://web.archive.org/web/20120511051036/http://saylinux.net/story/009617/no-space-left-device-%E2%80%93-running-out-inodes source sur archive.org] | |||
=== Utiliser ncdu === | |||
Ce petit utilitaire vous donne une vision claire de qui occupe combien d'espace. A vous de faire ensuite le ménage .... | |||
=== Autres astuces pour récupérer de l'espace disque === | |||
== Localepurge == | |||
Il est intéressant d'installer le paquet [http://packages.debian.org/wheezy/localepurge localepurge]. Ce logiciel, une fois installé, supprimera automatiquement tous les fichiers de documentation qui ne sont pas dans la langue ("locale") paramétrée sur votre système, et qui prennent inutilement de l'espace disque. | |||
<code># apt-get install localepurge && localepurge</code> | |||
(Vous pourrez facilement récupérer plusieurs centaines de Mo sur un système type desktop) | |||
{{Warning|Text=Si vous utilisez [http://debdelta.debian.net/ debdelta] pour diminuer votre charge réseau lors des mises-à-jour, celui-ci ne fonctionne pas pour les paquets installés nettoyés par localepurge.}} |
Dernière version du 30 janvier 2016 à 09:24
Au secours mon disque est plein à 100 %
En réalité nous parlons ici des partitions: En micro-informatique, une partition est une partie d'un disque dur destinée à accueillir un système de fichiers.
Si vous en êtes là, cette page est écrite pour vous.
Comment s'en rendre compte. utilisez la commande
df
Voici un exemple de ce qu'elle présente :
#df -h Sys. de fichiers Taille Uti. Disp. Uti% Monté sur /dev/sda1 14G 4,5G 8,9G 34% / tmpfs 1,4G 0 1,4G 0% /lib/init/rw udev 1,4G 252K 1,4G 1% /dev tmpfs 1,4G 508K 1,4G 1% /dev/shm /dev/sda5 20G 8,9G 9,9G 48% /home
Si vous voyez marqué 100% dans la colonne « Uti% », vous avez une partition pleine.
df m'indique une partition pleine alors qu'il reste de la place
Si df vous indique qu'une partition est pleine alors que la place utilisée est inférieur à la taille de la partition.
Par défaut les système de fichiers sont configurés pour réserver 5% de l'espace disque pour l'administrateur. Cela peut devenir très gros sur une très grosse partition (pour une partition de 2Tio cela fait plus de 100Gio). Bien sûr on peut réduire cet espace réservé avec la commande suivante (réserver 2% de l'espace sur le périphérique /de/device normalement de la forme /dev/sda1) :
#tune2fs -m 2 /dev/device
Cache APT
APT garde des anciennes versions de paquets dans /var/cache/apt/archives, en cas de besoin.
On peut déterminer la taille de ce cache ainsi :
#du -sh /var/cache/apt/archives 1007M /var/cache/apt/archives
Ici on voit que ce cache fait presque 1 Gio.
Pour vider ce cache il suffit de lancer la commande :
#apt-get clean
Fichiers de log
Méthode simple
La grande majorité du temps, c'est un ou plusieurs fichiers de log qui se remplissent. Aller dans le répertoire /var/log, et supprimez tous les fichiers se terminant par tgz (sauf évidement si vous suspectez une intrusion sur votre système et que vous avez besoin de tous les logs)
Méthode plus évoluée
Si vous avez supprimé les archives de log, et que votre disque est toujours trop plein, il va falloir affiner. commencez par repérer le répertoire qui est anormalement rempli. on part de la racine, et on affine par itérations.
#du -m /| sort -g
Si vous repérez que c'est /var qui est anormalement rempli, descendez d'un cran avec
#du -m /var | sort -g
Et ainsi de suite.
Avant de supprimer un fichier, il est bon de regarder ce qu'il contient. Malheureusement, nous traitons là de gros fichiers, pas facile à manipuler, surtout si vous êtes en ssh avec un bas débit.
L'astuce est de ne regarder que le début, ou la fin, avec
$ head fichier $ tail fichier
Si il n'y a rien d’intéressant dedans, et que ce n'est pas un fichier d'archive (.tgz), il est recommandé de le vider sans l'effacer. Une astuce pour le vider sans avoir à l'ouvrir:
# echo >/var/log/fichier
cas particulier de /tmp
lors de certaines opérations, par exemple une compilation, il arrive parfois d'avoir ce message "no space left on device" Pour voir quelle est la taille de votre /tmp
df -h /tmp Sys. fich. Taille Util. Dispo Uti% Monté sur tmpfs 50M 44K 50M 1% /tmp
Il fait ici 50M. Certains utilisateurs se plaignent de la taille trop faible de /tmp sur les versions récentes de debian. Mais comme l'indique la commande df, /tmp utilise un système de fichiers de type tempfs, donc redimensionnable à chaud.
Pour le passer à 100M
mount -o remount,size=100M /tmp
df -h /tmp Sys. fich. Taille Util. Dispo Uti% Monté sur tmpfs 100M 44K 100M 1% /tmp
Cas particulier : plus d'inodes disponibles
Vous rencontrez des erreurs "disque plein" (par exemple, lorsque vous tentez d'installer un paquet via apt-get ou aptitude), cependant la commande df vous indique que la partition n'est pas pleine?
Il se peut fortement que votre système de fichiers soit à cours d'inodes. Cela peut se produire si votre système est saturé de fichiers de petite taille.
La commande
df -i
vous confirmera si tel est le cas.
Comment libérer des inodes? Il vous faut trouver et supprimer les fichiers qui saturent le système de fichiers. La commande suivante pourra vous aider à identifier les répertoires où se trouvent ces fichiers :
for i in /*; do echo "$i"; find "$i" |wc -l; done
Utiliser ncdu
Ce petit utilitaire vous donne une vision claire de qui occupe combien d'espace. A vous de faire ensuite le ménage ....
Autres astuces pour récupérer de l'espace disque
Localepurge
Il est intéressant d'installer le paquet localepurge. Ce logiciel, une fois installé, supprimera automatiquement tous les fichiers de documentation qui ne sont pas dans la langue ("locale") paramétrée sur votre système, et qui prennent inutilement de l'espace disque.
# apt-get install localepurge && localepurge
(Vous pourrez facilement récupérer plusieurs centaines de Mo sur un système type desktop)
Si vous utilisez debdelta pour diminuer votre charge réseau lors des mises-à-jour, celui-ci ne fonctionne pas pour les paquets installés nettoyés par localepurge.