Você precisa colocar a opção -R
na frente.
chown -R root:www-data /var/www/example.com
(Eu sempre uso um ponto em vez de dois-pontos entre usuário e grupo, mas as páginas man dizem que os dois pontos devem ser usados).
Estou usando este comando:
chown root:www-data /var/www/example.com -R
mas recebo uma mensagem de erro informando que o diretório não está listado.
O que está errado?
Você precisa colocar a opção -R
na frente.
chown -R root:www-data /var/www/example.com
(Eu sempre uso um ponto em vez de dois-pontos entre usuário e grupo, mas as páginas man dizem que os dois pontos devem ser usados).
A versão GNU coreutils de chown
, que é padrão no Ubuntu, aceita
opções colocadas em qualquer lugar (contanto que --
não seja usado). Isso é:
chown foo:bar some/location -R
chown -R foo:bar some/location
ambos funcionam. Isso ocorre porque getopt_long()
funciona. No meu livro isso é um bug - como deveria resultar em erro, ou ser documentado, que de
o que eu posso achar que não é.
chown foo:bar some/location -- -R
procuraria o diretório chamado -R
.
No entanto, se um conjunto de variáveis de ambiente POSIXLY_CORRECT
o primeiro exemplo
falharia se não houvesse um diretório chamado -R
e nunca iria recorrer.
$ export POSIXLY_CORRECT=
$ chown -v :foo a/ -R
ownership of 'a/' retained as foo:foo
chown: cannot access '-R': No such file or directory
IMHO: sempre tente se adequar ao modo POSIX, pois um dia você insere esse comando em outro sistema onde um POSIX é aplicado, quebrando assim.
Observe também que o valor de POSIXLY_CORRECT
não tem efeito. Isso não desativaria:
export POSIXLY_CORRECT=0
export POSIXLY_CORRECT=no
export POSIXLY_CORRECT=false
export POSIXLY_CORRECT=...
Seria necessário unset
.
Pode ser que seu sistema esteja configurado com outra ferramenta chown
ou
POSIXLY_CORRECT
está definido.
Verifique por:
export | grep POSIX
chown --version
# etc.
Como nota de rodapé, o uso de ponto, .
, para separar grupo e usuário ficou obsoleto
a partir de POSIX 2001 ( info coreutils 'chown invocation'
), mas ainda suportado para compatibilidade com versões anteriores,
não é recomendado.