1

Я хочу просто обменять 3 каталога в домашний каталог колледжа (у меня нет доступа для записи в него) из моего домашнего каталога, возможно, используя безопасное копирование, если это возможно. Я не очень хорошо разбираюсь в командной строке Linux, поэтому я не уверен, как это сделать, и я был бы очень признателен, если бы кто-нибудь мог немного помочь мне с этим. Я думаю, это должно выглядеть примерно так

scp -r /home/user1/directoy1 /home/user2/directoy1 
scp -r /home/user1/directoy2 /home/user2/directoy2 
scp -r /home/user1/directoy3 /home/user2/directoy3 

Нужно ли указывать логин моего коллеги, чтобы файлы можно было копировать, когда он вводит свой пароль?

Спасибо за вашу помощь, Майкл

2 ответа2

3

Я не уверен, является ли это самым простым решением, но по крайней мере это должно работать, если только ваш коллега имеет доступ к целевому каталогу.

scp -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1

Вы также можете использовать rsync, который является более универсальным инструментом (настоятельно рекомендуется):

rsync -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1

Если вам нужно синхронизировать файлы в обоих направлениях, вам следует использовать какой-либо инструмент синхронизации файлов, например, Unison.

2

scp - это не инструмент для безопасного копирования файлов на одном хосте, это инструмент для копирования файлов по сети с использованием протокола SSH.

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

scp -r /home/user1/directory1 username@localhost:

Это скопирует directory1 в домашний каталог вашего коллеги. Но имейте в виду, что эта команда запросит пароль вашего коллеги.

Лучший способ, если это не разовая копия, - установить права на каталоги, чтобы вы могли в них писать, или использовать общий каталог для передачи файлов.

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