Não há mais espaço no dispositivo, mesmo que haja

Não há mais espaço no dispositivo, mesmo que haja

Um laptop com tela quebrada que acesso via SSH. O sudo apt-get autoremovecomando me dá os seguintes erros

cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//lib/x86_64-linux-gnu/libpthread.so.0’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//lib/x86_64-linux-gnu/libpthread.so.0’: No space left on device
cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//sbin/modprobe’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//sbin/modprobe’: No space left on device
cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//sbin/rmmod’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//sbin/rmmod’: No space left on device

Recebo erros semelhantes de vários outros comandos, mas gpartedme diz que há mais de 20 GB de espaço restante na partição (única) do laptop. Aqui está a saída dedf

$ df -i
Filesystem      Inodes  IUsed   IFree IUse% Mounted on
udev            502644    484  502160    1% /dev
tmpfs           505433    503  504930    1% /run
/dev/sda1      7331840 214087 7117753    3% /
none            505433      2  505431    1% /sys/fs/cgroup
none            505433      3  505430    1% /run/lock
none            505433      4  505429    1% /run/shm
none            505433     16  505417    1% /run/user
overflow        505433    401  505032    1% /tmp

E:

$ df -k
Filesystem     1K-blocks     Used Available Use% Mounted on
udev             2010576       12   2010564   1% /dev
tmpfs             404348     1284    403064   1% /run
/dev/sda1      115247656 83994028  25809372  77% /
none                   4        0         4   0% /sys/fs/cgroup
none                5120        0      5120   0% /run/lock
none             2021732      204   2021528   1% /run/shm
none              102400       16    102384   1% /run/user
overflow            1024     1024         0 100% /tmp

O erro começou depois que eu executei sudo apt-get upgrade.

Responder1

Em algum momento no passado, seu sistema de arquivos raiz ficou cheio e um pequeno /tmp temporário foi criado para permitir que a inicialização fosse bem-sucedida. Este /tmp pequeno nunca foi excluído, então agora, mesmo que você tenha espaço em /, você ainda está preenchendo o /tmp pequeno e vendo o seu problema. Basta desmontá-lo:

sudo umount /tmp

e, claro, tente garantir que seu / esteja o mais limpo possível.


Normalmente, /tmp é apenas uma parte do sistema de arquivos raiz (/), nenhuma montagem separada é necessária, a menos que haja circunstâncias especiais, como ficar sem espaço de arquivo raiz (quando algum daemon cria aquele que você vê), ou talvez você tenha / em uma mídia muito lenta (como um pendrive) e deseja /tmp na memória RAM para desempenho, mesmo com espaço limitado.

Responder2

Se você se deparar com esse problema, onde você recebe erros que parecem indicar que o disco está cheio, quando não está, verifique também a utilização do inode.

Você pode usar df -ipara obter um relatório rápido sobre os inodes usados/disponíveis para cada ponto de montagem.

Se você perceber que está com muito pouco ou sem inodes, a próxima etapa é identificar qual pasta está contendo a maioria dos inodes. Como cada arquivo e diretório usa um inode, você pode ter uma pasta com centenas de milhares de arquivos pequenos ou vazios que estão usando todos os inodes. Os suspeitos usuais incluem: diretório temporário, diretórios de cache de sites, diretórios de cache de pacotes, etc.

Use este comando para obter uma lista ordenada dos subdiretórios com mais inodes usados:

sudo find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n

Execute isso em sua pasta raiz e, em seguida, faça uma busca detalhada até encontrar o culpado.

Responder3

Eu acredito que você tem muitoarquivos não utilizadosremova-os com:

sudo apt autoremove

Em seguida, verifique novamente o seu espaço com dfo comando

Responder4

Para ver quantos inodes por pasta:

du * -s --inodes

informação relacionada