Команда sync через NFS
Я работаю над системой резервного копирования через NFS и хочу как можно больше убедиться, что файлы действительно записываются на диск. В настоящее время, когда я делаю резервные копии на локальном жестком диске, я копирую все во временную папку, выполняю sync(), чтобы очистить кэш, переименовываю временную папку в окончательное имя и выполняю другую sync(). Таким образом, если система зависает во время резервного копирования или происходит сбой питания, наполовину созданная резервная копия будет находиться в легко идентифицируемой папке и может быть удалена и запущена снова при повторной загрузке системы.
Возможно ли сделать это через NFS? Выполните "remote sync()", чтобы убедиться, что сервер сбросил кэш на диск?
Благодарю.
1 ответ
Когда вы монтируете свой диск через NFS, вы можете настроить синхронизацию, добавив "sync" в качестве одного из вариантов. Я считаю, что по умолчанию это делает это. Поэтому нет необходимости беспокоиться о выполнении вызова синхронизации, поскольку это уже происходит для вас. Когда сервер отвечает, что данные записаны на диск, вы можете быть уверены, что данные есть.
Если вы используете систему *nix (включая Mac), вы можете использовать rysnc, который является очень удобным инструментом для резервного копирования, если у вас много данных.
Рассмотрим просто
sudo mount /nfs-mount -o remount
-O без каких-либо других параметров в порядке.
Это помогло мне, когда у меня был файл в /nfs-mount, который при удаленном обновлении не обновлялся локально. Синхронизация опций монтирования не помогла, и, возможно, также повлияла на производительность.