Você precisa desmontar o sistema de arquivos ext3 para reduzi-lo. umount -l
significa que o sistema de arquivos será desmontado quando não houver mais arquivos abertos nele.
Execute lsof /tmp
para ver quais arquivos estão abertos em /tmp
. Se você estiver executando um servidor X, verá o soquete /tmp/.X11-unix/X0
. Você não pode remover esse socket¹ e ainda conseguir se conectar ao servidor X. Além disso, a maioria dos arquivos tende a ter vida curta ou a pertencer a programas que podem ser reiniciados.
Se você realmente deseja executar a operação em um sistema ativo, precisará migrar para um sistema de arquivos /tmp
diferente, pelo menos durante a operação. Você poderia fazer a transição para tmpfs, em que /tmp
é armazenado na RAM ou swap; consulte este guia . Na verdade, o tmpfs para /tmp
é uma configuração comum; você pode querer manter isso e remover completamente a partição /tmp
(e talvez aumentar um pouco o seu swap).
Depois de conseguir fechar tudo de /tmp
, você poderá desmontá-lo. Não use umount -l
, é inútil aqui, pois libera o ponto de montagem, mas não o dispositivo, enquanto o que você quer é liberar o dispositivo. Quando /tmp
for desmontado, execute fsck
, execute resize2fs
para reduzi-lo e encolha o volume lógico do LVM de acordo. Ou você pode economizar tempo reduzindo diretamente o volume do LVM e criando um novo sistema de arquivos para /tmp
. (Se você tem algum dado que deseja manter em /tmp
, está fazendo errado. /tmp
é para dados que não precisam ser salvos entre as reinicializações, e arquivos fechados em /tmp
são um jogo justo para exclusão.)
Se tudo isso parecer assustador, reinicie em um sistema de recuperação (live CD ou USB) e opere a partir daí.
¹ Também não é possível movê-lo para outro sistema de arquivos: isso seria remover o original e criar um novo soquete.