В настоящее время у меня есть SFTP (фактически vsftpd) сервер, который я использую для обычных архивов. ОС – Centos 7.0. В то время как я использовал SFTP, я все равно мог воспользоваться подключением NFS к этому серверу (rw).
Могут ли быть проблемы в двух демонах (sftp и nfs), работающих в одних и тех же каталогах?
Может ли эта установка привести к ошибке и / или повреждению данных (предположим, что я не пытаюсь одновременно писать файл с тем же именем через sftp и ftp)?
Управление файлами осуществляется на уровне ядра, а не на пространстве пользователя. Это означает, что ядро будет гарантировать, что повреждение файла не будет, когда две программы попытаются одновременно прочитать или записать один и тот же файл, включая демон или любое другое приложение. Поэтому я бы сказал, что это зависит от используемой файловой системы, но не от количества демонов, обращающихся к тем же файлам / каталогам.
Если вас беспокоит состояние гонки, вам может быть интересно установить файл с обязательным флажком блокировки ( mount -o mand
), чтобы избежать одновременного записи двух приложений в один и тот же файл. Затем вы можете посмотреть на man 8 mount
чтобы получить дополнительную информацию о параметре монтирования, который я указал (поиск по mand
), или man 2 mount
(и поиск MS_MANDLOCK
).
На vsftd
вас есть опция lock_upload_files
которая может вас заинтересовать. В NFS у вас есть опция lock
.