Содержание
В Unix-подобных операционных системах подключить каталога NFS (Network File System) довольно просто, однако если вам понадобится использовать NFS шару в Windows, придется выполнить ряд дополнительных действий. В этой статье мы покажем, как в Windows 10 подключить NFS каталог, который находинся на UNIX системе. Все описанные инструкции будут работать в Windows 10 Pro (версия 10.0.14393 и выше).
Установка клиента NFS (службы для NFS)
В первую очередь в Windows 10 нужно установить клиент NFS. Для установки необходимо выполнить следующие шаги:
- Откройте раздел «Programs and Features».
- Щелкните по пункту «Turn Windows features on or off».
- В появившемся списке в разделе Services for NFS включите NFS клиента (Client for NFS), а затем нажмите «ОК».
- После установки нажмите кнопку «Close» и вернитесь на рабочий стол.
Как разрешить запись в NFS каталог анонимному пользователю
По умолчанию при подключении NFS каталога с UNIX системы, анонимному пользователю (anonymous) предоставляются права только на чтение. Чтобы предоставить анонимным пользователям право записи, необходимо изменить значения UID и GID, которые используются для монтирования NFS каталога в Windows. Пример стандартных настроек представлен на рисунке ниже.
Чтобы изменить значение полей UID и GID, нам потребуется внести изменения в реестр Windows.
- Откройте редактор реестра regedit.
- Перейдите в ветку реестра — HKEY_LOCAL_MACHINESOFTWAREMicrosoftClientForNFSCurrentVersionDefault.
- В каталоге «Default» создайте новый параметр типа DWORD (32бит) с именем AnonymousUid и назначьте UID, назначенный на каталог в UNIX, к которому открыт доступ через NFS.
- В ветке Default создайте ещё один параметр DWORD (32-бит) с именем AnonymousGid и назначьте GID, назначенный данному каталогу в UNIX.
Список подключенных NFS каталогов и параметры монтирования можно вывести с помощью команды Mount без параметров.
Результат работы команды mount теперь должен выглядеть следующим образом:
Local Remote Properties
——————————————————————————-
Z: \10.1.1.211mntvms U >rsize=1078756, wsize=1078756
mount=soft, timeout=1.6
retry=1, locking=yes
fileaccess=755, lang=ANSI
casesensitive=no
sec=sys
Обратите внимание на значение полей U >
Как подключить NFS каталог в Windows 10
Смонтировать NFS каталог в Windows 10 можно с помощью команды mount. Например, смонтируем NFS каталог и назначим ему букву диска Z:. Предположим, что ваше NAS устройство находится в той же сети, что и ваш компьютер с установленной операционной системы Windows, а IP-адрес устройства — 10.1.1.211. С помощью следующей команды можно смонтировать общий ресурс NFS в /mnt/vms.
Mount –o anon \10.1.1.211mntvms Z:
Z: is now successfully connected to \10.1.1.211mntvms
The command completed successfully .
Теперь общий ресурс создан, и мы можем получить доступ к данным. В нашем примере сетевой ресурс (диск) обозначается буквой «Z».
На этом настройка NFS завершена и вы сможете сохранять данные на свое NAS устройство через смонтированный NFS каталог. Обратите внимание, что при в первый раз открытие этого каталога выполняется довольно долго.
Недавно задался вопросом: «А возможно ли примонтировать удаленную файловую систему Linux сервера по протоколу NFS к Windows 10?». Оказывается можно, даже более того… для этого есть стандартные средства.
Первым делом пойдем в Панель управления -> Приложения -> (справа выбираем ссылку) Программы и компоненты -> (в открывшемся окне слева) Включение или отключение компонентов Windows -> (в списке находим) Службы для NFS. Выделяем все компоненты и нажимает кнопку ОК.
Далее открываем меню «Пуск» и начинаем вводить «NFS». Выбираем пункт «Службы для NFS».
Либо идем в «Администрирование» и там выбираем «Службы для NFS».
В открывшимся окне выбираем «Клиент для NFS» -> Свойства. Выставляем разрешения для файлов которые будут по умолчанию.
По стандарту подключение к NFS в Windows происходит под анонимным пользователем UID и GID которого -2:-2
Нам же нужно подключаться к NFS под пользователем которому даны права со стороны сервера. Предположим пользователь 1000:1000
(по стандарту первый пользователь во многих системах на базе linux).
Идем в «Пуск» и вводим «regedit». Переходим по адресу:
Здравствуйте, имеется комп с hyper-v, на котором стоит Debian, дальше хост-машина на Windows 10 монтирует оттуда папку по NFS, туда-сюда гигабайтный файл копировал, всё очень быстро происходит, но вот чего то не хватает в настройках, происходят следующие странности.
1. Только примонтировал сетевую папку, кликаю правой кнопкой по любой папке внутри (например хочу удалить или копировать), у меня контекстное меню не открывается секунд 10, кружочек крутится, проводник задумывается, дальше открывается, а потом я по другим папкам тыкаю и всё моментально работает. Такое повторяется если долго не работать с сетевой папкой, а потом снова туда залезть и кликнуть правой кнопкой мышки по любой папке.
2. Удаляю малюсенький файлик из папки NFS — окно с прогрессом на 99% зависает и долго думает, потом уходит, типа всё завершилось.
3. Открываю файлики в редакторе, временами так долго думает при открытии, как будто ему на гиг текста дали, а там только пара килобайт.
Сеть на виртуалке с синтетическим 10гбит адаптером, т.е. пинги идут без проседания и менее 1мс, отклик со скоростью света, когда подключаюсь по ssh или через веб захожу на сервер, дисковая подсистема на сервере равна по скорости чтения и записи хосту. Но что то с NFS не то, в файле /etc/exports
В настройках виндового клиента ничего не менял. Только не нужно советовать подключать smb, хочу разобраться с вопросом, тут столько тонкостей с размером пакетов, с таймаутами, кешированием и другими, может кто то подскажет куда копать и что смотреть, чтобы было всё идеально как на локальном диске.