Estou usando o CwRsync para conectar da minha máquina de desenvolvimento do Windows a um servidor web linux:
rsync -avuz -e ./ssh --exclude=".svn" /cygdrive/c/xampp/htdocs/project123/ [email protected]:/home/user123/public_html
Isso sincroniza o diretório do meu projeto de desenvolvimento de maneira simples e rápida com o servidor.
Mas depois de fazer isso, todas as propriedades do diretório são redefinidas para o usuário local user123
apenas, então o site não está mais disponível. Eu preciso redefinir manualmente essas propriedades.
Por que isso está acontecendo e como evitá-lo?
PS. vindo de um ambiente Windows Estou tendo muita dificuldade em entender o rsync. Eu copiei o comando acima de alguns exemplos ... só preciso fazer uma coisa pequena funcionando ...
-o, --owner preserve owner (super-user only)
Respostas:
Depende do que você entende por "propriedades".
Permissões? o
-p
(--perms
) opção deve preservá-los. É ativado automaticamente ao usar-a
, no entanto, se as permissões forem perdidas, isso pode ser causado pelo próprio CwRsync.Certifique-se (usando o Cygwin's
ls
echmod
) que o local as permissões estão corretas. Alternativamente, tente o--no-perms
opção.Propriedade? Em sistemas Unix, os usuários não podem alterar a propriedade do arquivo. Se você fizer login como
user123
e criar um arquivo, ele será de propriedadeuser123
período. Existem restrições semelhantes para grupos - você posso altere o grupo de um arquivo, mas somente se você estiver nesse grupo.Algo mais?
fonte
icacls
no Windows, talvez tenteicacls C:\xampp\htdocs\project123 /grant everyone:(oi)(ci)(rx)
.