Устройство Loop переходит в режим Readonly

Мы используем сетевой диск Samba для резервного копирования на нашем сервере Linux. Чтобы сохранить разрешения (Samba не поддерживает это), мы создали устройство с петлей для большого файла (50 ГБ) на сетевом диске. Это работает нормально в большинстве случаев, но каждые несколько недель устройство петли переходит в режим только для чтения.

Вот фрагмент кода fstab для сетевого и петлевого дисковода:

//xyxyxy.your-backup.de/backup /backup cifs credentials=/root/backup-credentials,iocharset=utf8 0 0
/backup/backup.lp /backup-loop ext3 loop,sync,defaults,_netdev 0 0

Я также попробовал стандартную конфигурацию петли, но проблема поддерживает:

/backup/backup.lp /backup-loop ext3 loop,sync 0 0

Наше предположение: насколько я знаю, подключенный диск переходит в режим только для чтения, когда соединение с физическим устройством теряется. Таким образом, когда сетевой диск теряет соединение, файл петли исчезает, и монтирование петли переходит в режим только для чтения. CIFS обрабатывает повторное подключение своего собственного монтирования, но loop ничего не знает об этом.

Наше текущее решение состоит в том, чтобы принудительно перемонтировать samba и loop устройство незадолго до того, как наш cronjob запустит процесс резервного копирования. Это работает, но не чувствует себя хорошо.

Есть ли возможность запустить перемонтирование петлевого устройства, когда целевой файл петли возвращается в оперативный режим?

2 ответа

Решение

Я думаю, что ваше предположение о вещах, переходящих в режим только для чтения, когда соединение с сетевым диском потеряно, является правильным. Я сделал простой тест с небольшим файлом на общем ресурсе Samba, и то же самое происходит, если я дергаю сетевой кабель.

Что касается решения проблемы, я бы сказал об этом так:

  • В зависимости от того, как вы на самом деле делаете резервное копирование, я бы подключил файл цикла rw как часть процесса резервного копирования и размонтировал его, как только это будет сделано. Это также помогает защитить резервную копию от случайного воровства.

  • Если вам нужен доступ к резервной копии в другое время, установите ее только для чтения. Вы можете всегда сохранять файл подключенным таким образом, за исключением случаев, когда вы действительно хотите сделать резервную копию

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

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

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

Надеюсь, это поможет:-)

Спустя годы мы заменили этот петлевой диск на Samba резервным копированием Borg через ssh.

В целом это лучшее решение для резервного копирования файлов.

Другие вопросы по тегам