Abrir arquivos
Processos com arquivos abertos são os culpados de sempre. Mostre-os:
lsof +f -- <mountpoint or device>
Há uma vantagem em usar, em /dev/<device>vez de /mountpoint: um ponto de montagem desaparece após um umount -lou pode ser oculto por um suporte sobreposto.
fusertambém pode ser usado, mas na minha opinião lsoftem uma saída mais útil. No entanto, fuseré útil quando se trata de matar os processos que causam seus dramas, para que você possa continuar sua vida.
Liste os arquivos <mountpoint>(veja a advertência acima):
fuser -vmM <mountpoint>
Interaja apenas com processos abertos com arquivos abertos para gravação:
fuser -vmMkiw <mountpoint>
Após remontar somente leitura ( mount -o remount,ro <mountpoint>), é seguro (r) eliminar todos os processos restantes:
fuser -vmMk <mountpoint>
Pontos de montagem
O culpado pode ser o próprio kernel. Outro sistema de arquivos montado no sistema de arquivos que você está tentando umountcausar luto. Verificar com:
mount | grep <mountpoint>/
Para montagens de loopback, verifique também a saída de:
losetup -la
Inodes anônimos (Linux)
Inodes anônimos podem ser criados por:
- Arquivos temporários (
opencom O_TMPFILE)
- inotify relógios
- [eventfd]
- [eventpoll]
- [timerfd]
Estes são o tipo mais evasivo de pokemon, e aparecem em lsof's TYPEcoluna como a_inode(o que não é documentado na lsofpágina do manual ).
Eles não aparecerão lsof +f -- /dev/<device>, então você precisará:
lsof | grep a_inode
Para processos de eliminação que contêm inodes anônimos, consulte: Listar os relógios atuais para identificação (nome do caminho, PID) .