sshfs
это пользовательский процесс, поэтому запускать его не нужно sudo
.
Если вы запустите его в качестве ключа аутентификации Суда и использование SSH, то ключ будет искать под /root/.ssh
и не под вашим пользователя /home/myuser/.ssh
.
То же самое относится и к ~/.ssh/config
файлу, который sshfs
можно использовать.
Если у вас есть ~/.ssh/config
как:
Host remotehost
HostName 111.22.33.44
User root
Port 1234
IdentityFile ~/.ssh/id_rsa
тогда вы можете смонтировать ваш удаленный хост как обычный пользователь с помощью:
sshfs remotehost: local_dir
Для запуска под пользователем root вы можете добавить -o IdentityFile /home/myuser/.ssh/id_rsa
команду «raw» sshfs
или создать /root/.ssh/config
с полным путем к SSH-ключу вашего пользователя:
Host remotehost
HostName 111.22.33.44
User root
Port 1234
IdentityFile /home/myuser/.ssh/id_rsa
Теперь sshfs remotehost: local_dir
также будет работать под root.
Имея .ssh/config
на месте, вы можете копировать целые папки между хостами с помощью (от удаленного к локальному) scp -r remotehost:remotedir localdir
или (от локального к удаленному) scp -r localdir remotehost:remotedir
, поэтому для одной разовой операции вам может даже не понадобиться sshfs
.
Если вы используете относительный удаленный путь, как в, remotehost:remotedir
то remotedir
будет относительно домашней папки пользователя, то remotehost:remotedir
есть эквивалентноremotehost:/home/myuser/remotedir