Não consigo excluir uma pilha de arquivos; o que todos esses arquivos têm em comum é o seguinte:
- Eles são todos links simbólicos ou diretórios parentais
- Todos eles pertencem a um usuário e grupo não mapeado
Aquilo é:
sh-3.2# find . -type l -exec ls -ld {} \;
lrwxrwxrwx 1 1001 1001 14 10 Apr 2011 ./kernel/kernel -> linux-2.6.38.2
lrwxrwxrwx 1 1001 1001 15 25 May 2011 ./kernel/logo/logo.ppm -> skull-black.ppm
lrwxrwxrwx 1 1001 1001 19 2 Sep 15:12 ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0 -> libdefault.so.0.0.0
lrwxrwxrwx 1 1001 1001 17 2 Sep 15:12 ./redhat/BUILD/gol-git/display/nico2/.libs/libnico2.so -> libnico2.so.0.0.0
lrwxrwxrwx 1 1001 1001 15 15 Jul 2011 ./redhat/BUILD/libg15-1.2.7/.libs/libg15.so -> libg15.so.1.0.0
lrwxrwxrwx 1 1001 1001 15 15 Jul 2011 ./redhat/BUILD/libg15-1.2.7/.libs/libg15.so.1 -> libg15.so.1.0.0
sh-3.2# find . -type d -exec ls -ld {} \;
drwxrwxrwx 4 root wheel 136 23 Jan 10:55 .
drwxrwxrwx 3 root wheel 136 22 Jan 22:33 ./kernel
drwxrwxrwx 2 root wheel 102 22 Jan 22:31 ./kernel/logo
drwxrwxrwx 3 root wheel 102 23 Jan 10:55 ./redhat
drwxrwxrwx 4 root wheel 136 23 Jan 10:55 ./redhat/BUILD
drwxrwxrwx 3 root wheel 102 23 Jan 10:55 ./redhat/BUILD/gol-git
drwxrwxrwx 4 root wheel 136 23 Jan 10:55 ./redhat/BUILD/gol-git/display
drwxrwxrwx 3 root wheel 102 22 Jan 22:21 ./redhat/BUILD/gol-git/display/default
drwxrwxrwx 2 root wheel 102 22 Jan 22:33 ./redhat/BUILD/gol-git/display/default/.libs
drwxrwxrwx 3 root wheel 102 22 Jan 22:21 ./redhat/BUILD/gol-git/display/nico2
drwxrwxrwx 2 root wheel 102 23 Jan 11:00 ./redhat/BUILD/gol-git/display/nico2/.libs
drwxrwxrwx 3 root wheel 102 22 Jan 22:21 ./redhat/BUILD/libg15-1.2.7
drwx------ 2 root wheel 136 22 Jan 22:21 ./redhat/BUILD/libg15-1.2.7/.libs
sh-3.2# find . -not -type d -a -not -type l -exec ls -ld {} \;
sh-3.2#
Quanto à exclusão:
sh-3.2# ls -l ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0
lrwxrwxrwx 1 1001 1001 19 2 Sep 15:12 ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0 -> libdefault.so.0.0.0
sh-3.2# rm -f ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0
sh-3.2# ls -l ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0
lrwxrwxrwx 1 1001 1001 19 2 Sep 15:12 ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0 -> libdefault.so.0.0.0
sh-3.2# rm ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0
rm: ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0: No such file or directory
sh-3.2# ls -li !$
ls -li ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0
282892 lrwxrwxrwx 1 1001 1001 19 2 Sep 15:12 ./redhat/BUILD/gol-git/display/default/.libs/libdefault.so.0 -> libdefault.so.0.0.0
sh-3.2#
As opções de montagem para o volume HFS em questão são as seguintes:
- hfs, local, nodev, nosuid
Responder1
Esses são links simbólicos. Você deseja excluir o link ou o arquivo original? (De qualquer forma, rm deve funcionar.) Você poderia tentar unlink
, mas é a opção mais perigosa. Você também pode tentar sudo rm
, embora não tenha certeza se isso terá algum efeito na sua situação. Uma opção final seria tentar alterar o proprietário usando sudo chown
. (Mas, novamente, isso pode não funcionar com arquivos que pensam que não existem...)