Desmontar o sistema de arquivos ocupado

0

Estou tentando desmontar um sistema de arquivos de backup que não preciso mais. Quando eu executo o comando "umount", o sistema diz:

umount: /backup: target is busy

E os comandos a seguir não funcionam e o mesmo motivo (ocupado) retorna para mim:

fuser -cuk /backup
fuser -k -9 /backup
umount -f /backup
mount -o remount /backup; umount /backup

e

lsof |grep /backup | grep -v "backup.log"

comando retorna nada já. (grep -v é porque ignora arquivos backup.log. Se eu estiver errado, posso mudar.)

Por que não consigo desmontar esse sistema de arquivos e como posso fazer isso?


Editar:

Comandos esses são eu tentei e saídas deles:

myserver:~ # fuser -cuk /backup
myserver:~ # fuser -k -9 /backup
myserver:~ # umount -f /backup
umount: /backup: target is busy
    (In some cases useful info about processes that
     use the device is found by lsof(8) or fuser(1).)
myserver:~ # mount -o remount /backup; umount /backup
umount: /backup: target is busy
    (In some cases useful info about processes that
     use the device is found by lsof(8) or fuser(1).)
myserver:~ #

Versão do SO:

myserver:~ # cat /etc/os-release
NAME="SLES_SAP"
VERSION="12-SP2"
VERSION_ID="12.2"
PRETTY_NAME="SUSE Linux Enterprise Server for SAP Applications 12 SP2"
ID="sles_sap"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles_sap:12:sp2"

E quando eu verifico a I / O com o comando "iostat" eu vejo o disco físico (/ dev / sdx) que montado neste sistema de arquivos, não há leitura, mas nenhuma escrita.

Lista montada:

myserver:~ # mount | grep backup
/dev/mapper/vgbackup-lvbackup on /backup type xfs (rw,relatime,attr2,inode64,noquota)
Gefolge
fonte
sim. nenhum deles funciona. Como posso verificar os processos respawned? Se houver um deles, como eu não vejo esses processos ou arquivos abertos? Isto é tão estranho.
Gefolge
Uma coisa que não aparece em lsof são os pontos de montagem. Então, se você montou algo em um diretório naquele sistema de arquivos, ou montou um arquivo daquele FS em outro lugar ( mount -o loop ... ) eles não serão mostrados em lsof, mas evitarão um descompasso.
xenoid
Não consigo ver nada que seja montado em / backup ou sob / backup no comando fstab nem df -h.
Gefolge
meu formato de pergunta foi quebrado :) ele não mostra blocos de código. Eu tenho muita sorte hoje. (ok, isso foi minha culpa. Eu consertei.)
Gefolge

Respostas:

1

Existe esta questão no Linux & amp; Unix SE: umount: o dispositivo está ocupado. Por quê?

Poucas respostas:

  1. Parece que a causa do meu problema foi a nfs-kernel-server estava exportando o diretório. o nfs-kernel-server provavelmente vai atrás dos arquivos abertos normais e, portanto, não está listado por lsof e fuser.

    Quando parei o nfs-kernel-server eu poderia umount o diretório.

  2. A causa da minha manifestação deste problema agora era uma montagem de loopback obsoleto. Eu já tinha verificado a saída de fuser -vm <mountpoint>/lsof +D <mountpoint>, mount e cat /proc/mounts, verificou se algum antigo servidor nfs-kernel estava rodando, desativado quotas, tentou (mas falhou) um umount -f <mountpoint> e tudo, mas resignou-me a abandonar 924 dias de tempo antes de finalmente verificar a saída de losetup e encontrando dois loopbacks antigos configurados, mas não montados

  3. Para mim, o processo ofensivo era um daemon rodando em um chroot. Porque estava em um chroot lsof e fuser não encontraria.

    Se você suspeitar que tem algo deixado em execução em um chroot, sudo ls -l /proc/*/root | grep chroot encontrará o culpado (substitua "chroot" pelo caminho para o chroot).

  4. Inodes anônimos

    […]

    Estes são os tipos de pokemon mais elusivos, e aparecem em lsof 's TYPE coluna como a_inode (que não está documentado no lsof man page).

    Eles não aparecerão em lsof +f -- /dev/<device>, então você precisará:

    lsof | grep a_inode
    
Kamil Maciorowski
fonte