Como faço para remover um diretório de nome sem nome?

0

Eu tenho este diretório estranho no Oracle Linux que não posso remover, não posso alterar o proprietário, não posso mudar de grupo, etc.

Parece ser uma variável de ambiente vazia e com o nome: $ EXTEND

Aqui está o que eu tentei:

[root@PSFSTSTAPP01 interfaces]# ls -al
total 74
drwxrwxrwx  3 psoft psoft 3 May 11 12:42 .
drwxrwxrwx  4 psoft psoft 4 May 11 12:42 ..
drwx------+ 2 root  sys   3 Oct 23  2015 .$EXTEND
[root@PSFSTSTAPP01 interfaces]#

[root@PSFSTSTAPP01 interfaces]# chown root:root .$EXTEND
chown: changing ownership of '.': Operation not permitted
[root@PSFSTSTAPP01 interfaces]#

[root@PSFSTSTAPP01 interfaces]# echo $EXTEND

[root@PSFSTSTAPP01 interfaces]#

[root@PSFSTSTAPP01 interfaces]# echo .$EXTEND
.
[root@PSFSTSTAPP01 interfaces]#
[root@PSFSTSTAPP01 interfaces]# chmod 777 .$EXTEND
chmod: changing permissions of '.': Operation not permitted
[root@PSFSTSTAPP01 interfaces]#

[root@PSFSTSTAPP01 interfaces]# chattr -i .$EXTEND
chattr: Inappropriate ioctl for device while reading flags on .
[root@PSFSTSTAPP01 interfaces]#

[root@PSFSTSTAPP01 interfaces]# rm -r .$EXTEND
rm: cannot remove directory: '.'
[root@PSFSTSTAPP01 interfaces]# rmdir .$EXTEND
rmdir: failed to remove '.': Invalid argument
[root@PSFSTSTAPP01 interfaces]#
    
por mgrep 12.05.2016 / 17:35

3 respostas

4

Você pode escapar do sinal $ : rm -r .\$EXTEND
ou
use aspas simples: rm -r '.$EXTEND'

    
por 12.05.2016 / 17:43
3

Para diferenciar uma variável de uma string bash usa $ .

Quando você faz:

rm -R .$EXTEND 

A variável $ EXTEND é expandida e o resultado é substituído.

Para remover o arquivo .$EXTEND , você precisa dizer ao bash para interpretar $ sem seu significado especial. Você pode fazer isso de duas maneiras:

rm -R .\$EXTEND #\ strips the special meaning of $

ou

rm -R '.$EXTEND'
# Use single quotes. Variable expansion/substitution doesn't happen inside
# single quotes
    
por 12.05.2016 / 17:52
0

Descobri que o diretório $ EXTEND é criado em um sistema de armazenamento Oracle ZFS quando o SMB está ativado. O SMB pode ser desativado para o pool, mas o diretório $ $ EXTEND ainda não pode ser removido.

    
por 16.05.2016 / 16:17