Это сводит меня с ума! Я просто хочу перенести один простой файл с ноутбука на сервер.
Я использую Ubuntu на обеих машинах.
Так что я:
-rwxr-xr-x 1 sandro 414622 2011-10-14 23:42 sandrophoto-html.tar.gz
И я отправляю это используя:
sudo scp -P XXXX sandrophoto-html.tar.gz usern@server.local:/media/xx/xx/xx
И я получаю: scp: /media/xx/xx/xx/sandrophoto-html.tar.gz: Permission denied
ps я мог бы поступить иначе - я хочу отправить файл tar.gz, который находится на моем рабочем столе, на удаленный сервер в папку / media / yadayda
Ответы:
У вас все в правильном порядке, насколько я понимаю, общий способ выполнения scp:
Судя по вашему вопросу, у вас есть локальный файл, который вы хотите отправить на целевой сервер. Таким образом, у вас есть правильный синтаксис, который хорош!
Если вам отказано в разрешении, значит, вы не используете правильное имя пользователя или что-то не так с аутентификацией. Скорее всего, это потому, что команда sudo работает только локально, для начала, поэтому она не даст вам root на удаленном компьютере, так что это, вероятно, проблема. Убедитесь, что пользователь, на котором вы входите как на удаленном сервере, имеет права на запись в папку, в которую вы пытаетесь записать.
Если проблема заключается в том, что конечный пользователь не имеет доступа к этому местоположению без sudo, переместите файл в домашнюю папку конечного пользователя, а затем sudo mv файл из оболочки на другом сервере, чтобы поместить его в нужное место.
источник
Привет, эта проблема с разрешением была решена таким образом
Убедитесь , что каталог , который вы копируете ON
192.168.0.4
принадлежит пользовательскому имени пользователяНа твоей локальной машине потом делай
ура
источник
chmod
в папке назначения на удаленном сервереPermisssion Denied означает, что вы не являетесь корнем сервера. Вы просто держите аккаунт там. Так что в этом случае вам нужно сделать это:
Это скопирует в ваш домашний каталог на сервере.
Это также будет работать:
источник
~/
это действительно путь,-r
для рекурсивного копирования всего каталога.Эта ошибка произошла для меня, когда файл уже существовал в целевом расположении, а существующий файл имел разрешения только для чтения (предотвращая перезапись файла). В моем случае я только что вошел и удалил существующий файл, и это исправило проблему.
источник
У меня была похожая проблема, это произошло потому, что
ssh
принимает-p xxxx
для указания порта, в то время какscp
принимает-P xxxx
для указания порта. Незначительное несоответствие, так легко пропустить :(источник
scp doesn't work Permission denied (publickey). lost connection for ec2 compute.amazonaws.com
Была такая же проблема. Я обнаружил, что каталог, содержащий мой исходный файл, не имеет достаточных разрешений. Поэтому я просто рекурсивно изменил режим, используя:
chmod -R 771 directory_path
на исходном компьютере.источник
Я пытался скопировать с моей локальной машины как
username@localhost
; ключ SSH, который я использовал, не был зарегистрирован для доступа к моему локальному хосту, поэтому мне было отказано в разрешении. Когда я удалил это из исходной части, это сработало.источник