Não é possível excluir a pasta como raiz

5

A estrutura da pasta é: /home/bobuser/ftp/files

Estou logado como root e tomei posse de /bobuser , /ftp e /files . Eu tenho 777 permissões em todas as pastas. Não há nada dentro de /files .

Quando estou dentro de /files e faço ls -a , obtenho

. ..

Quando faço

lsof +D /home/bobuser/ftp/files

Eu entendo isso:

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
bash    1479 root  cwd    DIR  253,1     4096 256003 /home/bobuser/ftp/files
lsof    2080 root  cwd    DIR  253,1     4096 256003 /home/bobuser/ftp/files
lsof    2081 root  cwd    DIR  253,1     4096 256003 /home/bobuser/ftp/files

Se eu tentar matar o serviço 2080 ou 2081 ( kill -9 2081 ), ele me informará que o serviço não existe. Esses dois números PID mudam toda vez que eu executo o mesmo comando. Se eu matar 1479, ele mata minha sessão SSH como usuário e eu estou desconectado.

Na verdade, quero excluir /bobuser e tudo abaixo.

EDITAR:

Mais saída conforme solicitado pelos comentários:

Efetuei login com o usuário root e alterei o diretório para root, mesmo que eu já estivesse lá.

root@myhost:~# cd /root

A execução desta próxima linha não retorna nada. Eu só obtenho uma resposta se sou cd'ed no diretório de arquivos, então recebo a saída como postada acima.

root@myhost:~# lsof +D /home/bobuser/ftp/files

Tentei esta linha em seguida e o retorno é 0

root@myhost:~# ls -l /home/bobuser/ftp/files
total 0
    
por Amir 08.04.2017 / 21:45

1 resposta

7

Resposta curta:

umount /home/bobuser/ftp/files
rm -r /home/bobuser/ftp/files

Se você der uma olhada na seção FD da página lsof man, você descobrirá que cwd significa o diretório de trabalho atual.

A outra coisa que você mencionou é PIDs diferentes para a 2ª e 3ª linhas. Esses são os PIDs do comando lsof , então toda vez que você executar lsof , ele será executado com um novo PID e, em seguida, será fechado.

Depois de alterar seu diretório para /root , podemos ver que não há arquivo aberto no diretório /home/uerbob/ftp/files , então meu primeiro palpite é que alguma partição está montada lá.

Você deve executar o comando abaixo para ver se alguma partição está montada:

mount | grep -i bobuser/ftp

Se sim, você receberá uma saída assim:

/dev/vda1 on /home/bobuser/ftp/files type ext4 (rw,relatime,data=ordered)

Em seguida, basta desmontar a partição e remover o diretório.

    
por Ravexina 09.04.2017 / 00:23