Permissão perdida em arquivos usando a sintaxe chmod incorreta Centos 5.5

1

Eu estava tentando remover permissões de gravação em um diretório inteiro e usei o comando incorreto:

chmod 644 -r sites/default

Eu quis digitar

chmod -R 644 sites/default

O resultado foi este:

chmod: cannot access '644': No such file or directory
$ ls -als sites
total 24
4 drwxr-xr-x  5 user group 4096 Jan 11 10:54 .
4 drwxrwxr-x 14 user group 4096 Jan 11 10:11 ..
4 drwxr-xr-x  4 user group 4096 Jan  5 01:25 all
4 d-w-------  3 user group 4096 Jan 11 10:43 default
4 -rw-r--r--  1 user group 1849 Apr 15  2010 example.sites.php

Eu fixei as permissões na pasta padrão com     $ chmod 644 sites / default Mas, o seguinte ls mostra todos os arquivos com fundos vermelhos e pontos de interrogação. Não consigo acessar nenhum arquivo, a menos que eu seja root.

$ ls -als sites/default
total 0
? ?--------- ? ? ? ?            ? .
? ?--------- ? ? ? ?            ? ..
? ?--------- ? ? ? ?            ? default.settings.php
? ?--------- ? ? ? ?            ? files
? ?--------- ? ? ? ?            ? settings.php

Quando faço login como root, posso editar todos os arquivos e as permissões deles aparecem corretamente. Eu não sei como desfazer o dano causado usando -r com chmod em vez de -R.

Alguma sugestão?

    
por alloutfallout 11.01.2011 / 17:18

2 respostas

2

Primeiro, faça isso:

chmod 755 sites/default

A saída que você está vendo é porque você não ter permissão de execução no diretório:

$ mkdir -p foo/bar
$ touch foo/bar/a foo/bar/b foo/bar/c
$ ls -l foo
total 4
drwxr-xr-x 2 thedward thedward 4096 2011-01-11 10:28 bar
$ ls -l foo/bar
total 0
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 a
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 b
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 c
$ chmod 644 foo/bar
$ ls -l foo/bar
total 0
-????????? ? ? ? ?                ? a
-????????? ? ? ? ?                ? b
-????????? ? ? ? ?                ? c
$ chmod 755 foo/bar
$ ls -l foo/bar
total 0
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 a
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 b
-rw-r--r-- 1 thedward thedward 0 2011-01-11 10:28 c
    
por 11.01.2011 / 17:32
0

Por que não executar o mesmo comando novamente com as permissões adequadas e, em seguida, aplicar as permissões desejadas aos sites / padrão?

    
por 11.01.2011 / 17:21