1

Я видел много вариантов этого вопроса, но я не думаю, что что-то соответствует моей конкретной ситуации.

Я на компьютере на работе, который SSH'd в сервер. Находясь на этом сервере, я хотел бы SCP-файлы с моего Mac дома.

Я могу SSH в мой Mac с сервера без проблем с обычной командой:

ssh username@ip.ad.dr.es

Однако, когда я пытаюсь подключиться к SCP, я получаю: -bash: /usr /bin /scp: В доступе отказано

Я использую команду:

scp username@ip.ad.dr.es:/absolute/filepath/i* local/folder

Я также попробовал флаги с номером -p. На моем Mac есть только одна учетная запись, и это административная учетная запись. Я не уверен, есть ли проблемы с разрешениями, или это потому, что я зашел на сервер по SSH или это что-то еще.

Я также могу успешно SCP с сервера на мой Mac при этом с моего Mac дома.

Какие-либо предложения?

Изменить: Дополнительная соответствующая информация, первоначально опубликованная в виде комментариев, потому что у меня был мозг пердеть о протоколе. (моя вина).

В частности, в связи с моим последним предложением о возможности «реверсирования» SCP: следующая команда работает, когда я вошел в свой Mac как локальный компьютер:

scp -P 22003 username@server.hpc.sch.edu:Data/path/i* /Full/Path/On/Mac/

Запуск ls -l /usr/bin/scp на сервере (локальном) возвращает следующее:

rwxr-х ---. 1 root root 67648 31 августа 12:40 /usr /bin /scp

Запуск ls -l /usr/bin/scp на Mac (удаленно) возвращает следующее:

-rwxr-xr-x 1 корневое колесо 81360 1 декабря 14:45 /usr /bin /scp

1 ответ1

1

Вышеприведенная команда завершается неудачно с указанной ошибкой, но следующая команда работает, когда я захожу на свой Mac как локальный компьютер:

scp -P 22003 username@server.someserver:Data/path/i* /Full/Path/On/Mac/

Таким образом, с сервера, к которому вы не можете получить доступ к /usr/bin/scp вы получаете ошибку "Отказано в доступе". Причин такой ошибки может быть много, например, права доступа к файлу.

Поскольку вы можете использовать scp с вашего Mac и ssh с сервера на ваш Mac, я думаю, что это то, что вы должны сделать сейчас. ssh в Mac и scp оттуда.

Чтобы устранить проблему на вашем сервере, сначала убедитесь, что у вас есть разрешения на выполнение в /usr/bin/scp на сервере:

ls -l /usr/bin/scp

Вы видите что-то вроде:

-rwxr-xr-x 1 root root 84104 Jan 16 14:28 /usr/bin/scp
   ^  ^  ^

По сути, файл принадлежит пользователю root (с правами чтения, записи, exec), члены группы root имеют права чтения и exec, как и world (все остальные вошли в систему)

Если у вас есть x (execute) privs в команде, используйте scp -v для увеличения детализации (вы можете добавить больше v , до трех, iirc), вы можете увидеть сообщение, в котором говорится, что не так. Вы также можете попробовать ldd /usr/bin/scp чтобы увидеть, есть ли все зависимости и доступны ли они для чтения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .