Questão Não é possível remover dirs com a permissão 444 no linux


Alguém fez algo como chmod 444 *, agora tem alguns dirs que eu não consigo remover ...

ls -al mostra:

4.0K drwxrwxrwx 6 root root 4.0K Apr  7 10:06 .
4.0K drwxr-xr-x 4 root root 4.0K Apr 14 19:51 ..
4.0K dr--r--r-- 4 root root 4.0K Feb 11 08:42 beta
4.0K dr--r--r-- 2 root root 4.0K Apr  2 23:39 download

# rm beta/ -rf
rm: cannot remove directory `beta//xxx': Permission denied
rm: cannot remove `beta//yyy.xml': Permission denied

Eu fiz tudo o que sei chmod +x ou cd no diretório para remover os arquivos, mas falhou.

Edit: Eu logado como root. eu tentei chmod +x beta.

# ls -al
total 24
drwxrwxrwx 6 root root 4096 Apr 14 22:20 .
drwxr-xr-x 4 root root 4096 Apr 14 19:51 ..
dr--r--r-- 4 root root 4096 Feb 11 08:42 beta
dr--r--r-- 2 root root 4096 Apr  2 23:39 download
# chmod +x beta
chmod: changing permissions of `beta': Operation not permitted

0


origem




Respostas:


Como seu prompt é #, suponho que você esteja logado como root.

O problema é sua linha de comando. A partir da man page do rm, a sintaxe é

rm [OPTION]... FILE...

então tente

rm -rf beta/ 

1



Não, não é. Coreutils GNU aceitam formato como rm beta/ -rf, O BSD não. - yaroot
Estranho eu olhei gnu.org/software/coreutils/manual/html_node/… para essa informação e diz rm [opção] ... [arquivo] ... - Mark


Você vai ter que mudar o modo dos diretórios de volta para 755 ou qualquer outra coisa, para que eles sejam executáveis. O bit de execução é o que permite que os diretórios atuem como diretórios e deixem você entrar neles. Quando você executa o rm -fr beta, a primeira coisa que ele faz é descer no diretório beta, se ele não puder entrar nesse diretório, ele falhará logo de cara. Isso não deve falhar se você for o usuário root. O # no seu prompt implica que você é o usuário root, por isso pode ser outra coisa.


0



Sim eu logado como root. Eu não posso chroot ou mv beta xxx.. Estou confuso .. O SELinux está desativado .. Eu fiz tudo o que sei .. - yaroot
Ah, certo, seu nome de usuário me disse isso. ;-) Que tipo de sistema de arquivos é este e como é montado? Eu rodaria o fsck para ter certeza de que você não tem outra coisa acontecendo. Eu não vejo como alguém apenas executando o chmod 444 * seria irreversível. - deltaray