En utilisant la barre de tabulation, je continue à avoir cette erreur:
bash: impossible de créer un fichier temporaire pour here-document: aucun espace disponible sur le périphérique "
Des idées?
J'ai fait des recherches et de nombreuses personnes parlent du fichier / tmp, qui risque d'avoir un débordement. Quand j'exécute, df -h
je reçois:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.1G 8.7G 0 100% /
udev 10M 0 10M 0% /dev
tmpfs 618M 8.8M 609M 2% /run
tmpfs 1.6G 0 1.6G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.6G 0 1.6G 0% /sys/fs/cgroup
/dev/sda1 511M 132K 511M 1% /boot/efi
/dev/sda4 1.8T 623G 1.1T 37% /home
tmpfs 309M 4.0K 309M 1% /run/user/116
tmpfs 309M 0 309M 0% /run/user/1000
On dirait que le répertoire / dev / data est sur le point d'exploser, mais si je bascule:
$ du -sh /dev/sda2
0 /dev/sda2
Il semble que c'est vide.
Je suis nouveau dans Debian et je ne sais vraiment pas comment procéder. J'avais l'habitude d'accéder à cet ordinateur via ssh. Outre ce problème, j'ai plusieurs autres avec cet ordinateur, ils peuvent être liés, par exemple chaque fois que je veux entrer mon utilisateur en utilisant l'interface graphique (avec la racine cela fonctionne) je reçois:
Xsession: avertissement: impossible d'écrire dans / tmp: Xsession peut se fermer avec une erreur
du -hxd1 /
, nondu /dev/sda2
./dev/sda2
n'existe pas vraiment sur le disque.Réponses:
Votre système de fichiers racine est plein et votre répertoire temporaire (/ tmp, et / var / tmp d'ailleurs) est également plein. Un grand nombre de scripts et de programmes nécessitent un peu d’espace pour les fichiers de travail, même les fichiers verrouillés. Lorsque / tmp est inscriptible, de mauvaises choses se produisent.
Vous devez déterminer comment vous avez rempli le système de fichiers. Cela se produit généralement dans / var / log (vérifiez que vous parcourez les fichiers journaux). Ou / tmp peut être plein. Il existe cependant de nombreuses autres manières de remplir un disque.
Vous voudrez peut-être re-partitionner pour donner à / tmp sa propre partition (c'est la méthode habituelle de le faire, mais si vous avez beaucoup de disque, tout va bien), ou le mapper en mémoire (ce qui le rendra très rapide mais commence à problèmes d’échange si vous surchargez les fichiers temporaires).
la source
Vous pouvez également avoir perdu l'accès en écriture au
/tmp/
répertoire.Cela devrait ressembler à ça:
Vous pouvez corriger les permissions comme ça:
la source
ls -ld /tmp
place.Si quelqu'un arrive avec cette erreur alors que son disque n'est pas plein, vérifiez non seulement,
df
mais aussidf -i
. Il y a un nombre fixe d'inodes sur un système de fichiers, et chaque fichier en a besoin. Si vous avez juste des tonnes de petits fichiers, il est très facile pour votre système de fichiers de se remplir de ces petits fichiers alors qu'il reste encore beaucoup d'espace disponible sur le lecteur lorsque vous exécutezdf
.la source
/dev/root 4980000 4980000 0 100% /
Peut-être que le système devrait répondre avec un message d'erreur approprié?Je devenais erreur, alors j'ai vu
J'ai pu le confirmer,
la source
Le moyen le plus rapide de localiser vos dossiers trop pleins consiste à réduire la taille du fichier de dossier en niveaux à partir du dossier racine. Vous commencez avec le dossier racine par:
Ensuite, vous augmentez la profondeur, c’est-à-dire les niveaux inférieurs:
OU - plus rapidement - vous regardez quel dossier a consommé le plus d’espace disque et faites de même sur ce dossier:
Une fois que vous l'avez trouvé, supprimez celui-ci:
la source
sudo du -h --max-depth=1 / | sort -h
(fichiers plus gros en bas ousort -hr
fichiers plus gros en haut)Pour mon cas de cette même erreur, c’était un problème de cagefs puisque ce serveur était sur CloudLinux, avec
cagefsctl --remount username
la source
En effet, l'espace disque étant insuffisant, vous devez nettoyer les fichiers volumineux ou nettoyer le processus qui prend de l'espace:
df -h
Afficher l'espace disquedu -sh /*
Voir quel répertoire est le plus grand, étape par étape pour trouver des fichiers volumineuxdu -h --max-depth=1
trouver le plus gros fichierla source