O upload de arquivos via sftp falhou. Permissão negada

0

Estou tentando enviar arquivos para o servidor Ubuntu usando sftp . Eu uso put -r dir para fazer upload de uma pasta com todo o seu conteúdo. Quando eu executo o comando, ele dá algo como o seguinte:

 Uploading AuthApp/ to /var/www/html/AuthApp remote open("/var/www/html/AuthApp/.DS_Store"): Permission denied
 Uploading of file AuthApp/.DS_Store to /var/www/html/AuthApp/.DS_Store failed!
 remote open("/var/www/html/AuthApp/.gitattributes"): Permission denied     
 Uploading of file AuthApp/.gitattributes to /var/www/html/AuthApp/.gitattributes failed! 
 remote open("/var/www/html/AuthApp/.gitignore"): Permission denied 
 Uploading of file AuthApp/.gitignore to /var/www/html/AuthApp/.gitignore failed!
 remote open("/var/www/html/AuthApp/artisan"): Permission denied
 Uploading of file AuthApp/artisan to /var/www/html/AuthApp/artisan failed! 
 remote open("/var/www/html/AuthApp/composer.json"): Permission denied 
 Uploading of file AuthApp/composer.json to /var/www/html/AuthApp/composer.json failed! 
 remote open("/var/www/html/AuthApp/composer.lock"): Permission denied
 Uploading of file AuthApp/composer.lock to /var/www/html/AuthApp/composer.lock failed! 
 remote open("/var/www/html/AuthApp/CONTRIBUTING.md"): Permission denied
 Uploading of file AuthApp/CONTRIBUTING.md to /var/www/html/AuthApp/CONTRIBUTING.md failed! 
 remote open("/var/www/html/AuthApp/phpunit.xml"): Permission denied 
 Uploading of file AuthApp/phpunit.xml to /var/www/html/AuthApp/phpunit.xml failed! 
 remote open("/var/www/html/AuthApp/readme.md"): Permission denied 
 Uploading of file AuthApp/readme.md to /var/www/html/AuthApp/readme.md failed! 
 remote open("/var/www/html/AuthApp/server.php"): Permission denied
 Uploading of file AuthApp/server.php to /var/www/html/AuthApp/server.php failed!
 Couldn't setstat on "/var/www/html/AuthApp": Permission denied

Eu tentei alterar as permissões, adicionar usuário e apache ao grupo, mas nada funciona. O que mais eu estou sentindo falta?

    
por onlyforthis 18.09.2015 / 14:19

2 respostas

1

O melhor método seria o upload de seu programa para um diretório de usuário no servidor (também conhecido como / home / $ USER / upload / e instalar um cron job em / etc / crontab no servidor que copia os arquivos como o usuário apache está configurado para (provavelmente www-data ou apache2) em / var / www / html / -after- fazendo um backup com timestamp dos arquivos que irá sobrescrever.

  • resolveria seu problema
  • evitaria a perda de dados caso sua cópia faça algo desagradável.
  • não é preciso mexer nas configurações do site e / var / www / html /

Um observador de diretórios (veja como colocar um gatilho em um diretório ) pode fazer isso em tempo real.

    
por Rinzwind 18.09.2015 / 14:41
0

A tag sudo executa tudo como root, o que você precisa fazer para executar isso, em vez de sftp -r dir do sudo sftp -r dir , em seguida, insira sua senha. Observe que você precisará de acesso root para fazer isso . Se isso funcionar, verifique e vote, para que outras pessoas possam encontrar isso, se precisarem.

    
por David 18.09.2015 / 14:26