Безопасное копирование в Linux
Я хочу просто обменять 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 ответа
Я не уверен, является ли это самым простым решением, но по крайней мере это должно работать, если только ваша коллега имеет доступ к целевому каталогу.
scp -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1
Вы также можете использовать rsync, который является более универсальным инструментом (настоятельно рекомендуется):
rsync -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1
Если вам нужно синхронизировать файлы в обоих направлениях, вы должны использовать какой-нибудь инструмент синхронизации файлов, например, Unison.
scp
это не инструмент для безопасного копирования файлов на одном хосте, это инструмент для копирования файлов по сети с использованием протокола SSH.
В вашем случае вы можете немного "обмануть", используя SSH на локальном хосте, чтобы зарегистрировать вас с вашими учетными данными коллеги, таким образом, имея хорошее право доступа:
scp -r /home/user1/directory1 username@localhost:
Это будет копировать directory1
в домашнем каталоге вашего коллеги. Но имейте в виду, что эта команда запросит пароль вашего коллеги.
Лучший способ, если это не разовая копия, - установить права на каталоги, чтобы вы могли писать в них, или использовать общий каталог для передачи файлов.