Назад | Перейти на главную страницу

Rsync через ssh: внезапно появилось сообщение «ОШИБКА: модуль только для чтения»

Некоторое время я использовал rsync / ssh для резервного копирования содержимого моего общего хоста на мой личный Synology NAS (212j, если на то пошло), и он работал довольно хорошо. Для информации я использую пароль без пароля ssh подключение.

3 дня назад я обновил программное обеспечение своего NAS, и с тех пор (или, по крайней мере, я так считаю) резервное копирование больше не будет работать. Я получаю следующую ошибку на хосте:

rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32)
ERROR: module is read only 

.. чего я не понимаю. кроме этого ничего не изменилось, что я знаю как в источнике, так и в пункте назначения, что может быть связано с rsync или ssh, Я кое-что проверил, и вроде все в порядке:

Я тут и там читал, что ошибка означает, что я должен убедиться, что мой rsyncd.conf иметь право read only = no в нем, но, насколько мне известно, никогда не использовал rsyncd также как я никогда ничего для него не настраивал и до сих пор он работал как шарм ..

Я использую следующую команду для резервного копирования:

rsync -ab --recursive \
--files-from="$FILES_FROM" \
--backup-dir=backup_$SUFFIX \
--delete \
--filter='protect backup_*' \
$WDIRECTORY/ \
remote_backup:$REMOTE_BACKUP/

Так что я застрял и действительно не могу понять, что случилось.


Редактировать:

Как было предложено в комментариях, я также попытался передать команды ssh (но не изнутри сеанса ssh), который работал, как ожидалось, а также попробовал одну команду rsync, которая не сработала, так же как и команда полного резервного копирования.

(sharedHost):hostuser:~ > touch test.txt
(sharedHost):hostuser:~ > rsync test.txt remote_backup:backups/test.txt
ERROR: module is read only
rsync error: syntax or usage error (code 1) at main.c(1034) [Receiver=3.0.8]
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]

и

(sharedHost):hostuser:~ > ssh remote_backup 'touch /abs_path_to_backups/backups/test2.txt && echo "ProoF" > /abs_path_to_backups/backups/test2.txt'
(sharedHost):hostuser:~ > ssh remote_backup 'cat /abs_path_to_backups/backups/test2.txt'
ProoF

У меня возникла такая же проблема после обновления Synology NAS до DSM 4.1. Я также использую rsync по SSH. В моей ситуации использование rsync user root @ ip также работало, но файлы оставались на сервере с root-правами, которые мне не нужны.

Я обнаружил в пользовательском интерфейсе администратора NAS, что по какой-то причине в ControlPanel-> Users-> MyRSyncUser-> Edit -> "Priviliges setup" не было доступа для чтения / записи в дома. Моя цель RSYNC - под домами.

У меня сработала установка этого параметра на Privilidge. Надеюсь, это поможет.

Я избавился от ОШИБКИ: модуль читается только путем изменения удаленного пути с / var / services / homes / rsync на / volume2 / homes / rsync

DSM 5.1

Я столкнулся с той же проблемой после обновления Synology ds1010 + до dsm 4.1-2661.

У меня нет времени разбираться в том, что случилось с rsync, предоставленным Synology, но это не кажется стандартным. Итак, вот мой обходной путь ...

Я не хотел взламывать привилегии (многопользовательская настройка), поэтому я перекомпилировал rsync в статике на своем ноутбуке, а затем перенес двоичный файл на sinology nas.

wget https://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz
tar xzvf rsync-3.0.9.tar.gz
cd rsync-3.0.9
export CFLAGS=--static
./configure
make

scp rsync <login>@<nas_hostname>:

Вы можете указать rsync использовать ваш новый двоичный файл вместо стандартного с помощью этого параметра:

--rsync-path=<myhome>/rsync

Теперь я могу продолжить использование дублированности с помощью rsync, добавив к дублированию следующий параметр:

--rsync-options="--rsync-path=<myhome>/rsync"

У меня была такая же проблема, но я не использовал специального пользователя для rsync.

Пришлось поправить права в Панели управления -> Общие папки.

У меня была аналогичная проблема при подключении к Synology 211j через SSH Putty. Мне пришлось включить

«Панель управления -> Сетевое резервное копирование -> Включить услугу сетевого резервного копирования».

Сейчас он работает.

Я заставил его работать, войдя в систему как root вместо администратора или обычного пользователя.