У меня есть два сервера, назовем их sA и sB. Мне нужно сделать резервную копию данных (несколько ТБ) с sA на sB, но из-за проблем с sB SSH я использую свой локальный компьютер в качестве «посредника». sA - это сервер Linux, sB - это QNAP nas.
Итак, сначала я монтирую sB локально с помощью
sudo mount -t cifs //sb_host/share destdir -o username=myuser,file_mode=0777,dir_mode=0777
Затем я использую rsync для копирования файлов из sA в общий ресурс:
rsync -PrlH -e '/usr/bin/ssh' myremoteuser@sa_host:/dir-to-backup/ destdir
Мне пришлось удалить -a
вариант, потому что время и разрешения не могут быть сохранены. Это не имеет большого значения (хотя было бы неплохо это исправить), но то же самое происходит с символическими ссылками:
rsync: symlink "symlink_file" -> "symlink_destination_file" failed: Operation not supported (95)
Это можно исправить?
Я пробовал "unix extensions = yes", но это не сработало - но это был просто nas, перезаписывающий настройки при перезапуске.
Итак, добавление этой опции к принимающему серверу, перезапуск там samba и монтирование общего ресурса с cifs корректно обрабатывают разрешения и символические ссылки.
CIFS не поддерживает символические ссылки