Установка и настройка NFS сервера и NFS клиента. Использование на ноутбуке. Сведения о реестре

Суть проблемы: в свое время компания Samsung стала выпускать телевизоры, поддерживающие разработанную ведущими производителями бытовой техники технологию DLNA, основанную на принципе "цифровой дом". Эта технология позволила интегрировать телевизоры в локальную домашнюю сеть, что дало возможность обмениваться медиа-контентом между телевизором и компьютером, и в частности, просматривать на ТВ фильмы, хранящиеся на компьютере по локальной сети или через WiFi. Однако мультимедийное решение, предложенное Самсунгом для реализации этой технологии, мягко говоря, оставляет желать лучшего. Так, фильмы просматриваемые по сети во встроенном в телевизор медиа-плеере, в большинстве случаев не перематываются. Кроме того во время просмотра фильмов по сети, в отличие от просмотра фильмов с флешки или переносного жесткого диска, подключенного к ТВ по USB-порту, не поддерживается функция беспрерывного воспроизведения (синяя кнопка на пульте). Наконец, сама необходимость каждый раз запускать на компьютере Samsung PC Share Manger и производить коррекцию после каждого удаления или добавления виде-файлов на диск, немного напрягает.

Не только устранить существующие проблемы с просмотром фильмов на ТВ по локальной сети, но и увеличить скорость передачи данных (что может послужить немаловажным фактором во время просмотра больших фильмов в формате HD) поможет нам включение сетевого протокола NFS (Network File System). После того, как мы произведем необходимую установку и настройку NFS-сервера, наш компьютер будет восприниматься телевизором так, как если бы мы подключили переносной жесткий диск к ТВ через USB-порт (единственное отличие будет только в скорости обмена данными, которая определяется максимальной пропускной способностью вашей локальной сети или WiFi-соединения).

NFS - это сетевой протокол, организованный по принципу "сервер - клиент". В роли сервера у нас будет компьютер, в роли клиента - телевизор. Включение поддержки NFS в телевизоре мы уже рассмотрели в предыдущем разделе во время настройки и установки в ТВ приложения SamyGO Auto. Если вы помните, то в настройках конфигуратора SamyGO Auto мы установили флажок напротив секции NFS и также прописали IP-адрес NFS-сервера (192.168.xxx.xxx), то есть адрес нашего компьютера:
В этом разделе мы рассмотрим установку и настройку NFS-сервера на наш компьютер. В Интернете есть множество различных программ по установке и настройке NFS-сервера. Мы же воспользуемся приложением haneWIN NFS Server (оно является условно-бесплатным, и по истечении определенного срока требует регистрации серийного номера, но, как вы понимаете, в интернете всегда находятся умельцы, способные решить эту проблему). Итак, приступим:

Примечание: иногда брандмауэр Windows или встроенный в антивирус файрвол могут блокировать работу NFS-сервера. Что бы этого не происходило, в брандмауэре Windows (или если у вас стоит другой файрвол, то в нем) необходимо разрешить доступ в сеть двум приложениям: nfsd.exe и pmapd.exe (они находятся в папке установки сервера C:\Program Files\nfsd).


Наконец, включим телевизор и убедимся в том, что наш NFS-сервер работает. В предыдущем разделе, когда мы устанавливали программу SamyGO Auto в телевизор, мы указали в нем параметр для автозапуска. Следовательно, при включении ТВ, он должен автоматически обнаружить наш NFS (это происходит не сразу, а приблизительно через 20 секунд после включения ТВ). Итак, включаем ТВ, затем переходим в медиа-плеер и видим там новое устройство - NFS Server.

Если вы обратите внимание, то напротив NFS стоит значок USB-соединения. Это то, о чем мы ранее говорили, теперь ваш ТВ будет воспринимать компьютер как жесткий диск или флешку, подключенную по USB. Можете переходить в раздел Movie и наслаждаться просмотром фильмов по сети. Запускать Samsung PC Share Manger на компьютере вам больше не понадобиться. Просто добавьте фильм в папку с фильмами на компьютере, и он автоматически "подгрузится" в меди-плеер ТВ.

В следующем разделе мы расскажем о том, как записывать передачи с ТВ на флешку или, раз уж теперь у нас есть NFS - то в папку с фильмами на компьютере.


Сегодня мы разберемся, как установить и настроить клиент NFS (Network File System) в Windows Server 2012 R2 / Windows 8. Итак, чтобы подключить каталог (шару) в Windows Server 2012 R2 / Win 8, нужно, как и в предыдущих версиях Windows, установить отдельный компонент — клиент NFS (Client for NFS ). Дополнительно, для возможности управления настройками NFS подключения, можно установить компонент служб NFS (Services for Network File System ).

Клиент NFS входит в состав ОС Microsoft, начиная с Windows 7. В Windows 2012 / 8 клиент NFS получил небольшие изменения. Теперь NFS клиент поддерживает аутентификацию по протоколу Krb5p — Kerberos версии 5 (в дополнение к Krb5 и Krb5i, поддержка которых появилась еще в Windows 7), поддерживаются большие NFS пакеты – до 1024KB (в Win 7 максимальный размер пакета 32KB)

Клиент NFS можно установить через GUI или с помощью Powershell. Для установки в графическом режиме, откройте и выберите компонент (Features) под названием Client for NFS .

По умолчанию вместе с этим компонентом не устанавливается графическая консоль управления NFS, чтобы исправить это, установим опцию Services for Network File System Management Tools в разделе Remote Server Administration Tools -> Role Administration Tools -> File Services Tools.

Для установки NFS-клиента в Windows 8 нужно активировать компонент Services for NFS ->Client for NFS , через установку/удаление компонентов (Turn Windows features on or off) в Панели управления (Control Panel -> Programs -> Programs and Features).

Примечание . В отличии от Windows 7, в которой NFS клиент присутствовал в редакциях Enterprise и Ultimate, в Windows 8 клиент Network File System поддерживается только в старшой версии — Windows 8 Enterprise.

Все перечисленные выше компоненты системы можно установить всего одной командой Powershell:

Install-WindowsFeature NFS-Client, RSAT-NFS-Admin

После окончания установки, запустите консоль Services for Network File System Managemen и откройте окно свойств NFS клиента (Client for NFS ).

В настройках NFS клиента можно задать:

  • Используемый транспортный протокол (Transport protocols) – по умолчанию TCP+UDP
  • Тип монтирования NFS шар: hard или soft
  • На вкладке File Permissions указываются дефолтные права для создаваемых папок и файлов на NFS шарах
  • На вкладке Security указываются протоколы аутентификации, с помощью которых можно аутентифицироваться на NFS сервере

После настройки установки, администраторы смогут смонтировать NFS каталог с помощью команды mount:

Mount \\lx01.abc.lab\nfs z:

В этом примере мы смонтировали под буквой Z: каталог NFS, расположенный на сервере lx01.abc.lab.

После монтирования, подключенный таким образом каталог на NFS сервере доступен в системе как отдельный диск с буквой Z:\ .

Смонтировать NFS шару можно и с помощью Powershell:

New-PSdrive -PSProvider FileSystem -Name Z -Root \\lx01.abc.lab\nfs

Примечание . Подключенный таким образом nfs каталог будет доступен только внутри сессии Powershell, в которой была выполнена команда монтирования. Чтобы смонтировать NFS каталог в системе на постоянной основе, в конце Powershell команды нужно добавить ключ –Persist .

Отключить смонтированный каталог можно так.

NFS (Network File System) — сетевой протокол доступа к доступ к файлам и файловой системе NFS-сервера, популярный в семейства ОС Linux/ UNIX, а также различных системах хранения. Microsoft также, не желая отставать от конкурентов, внедрила базовый функционал NFS сервера еще в Windows Server 2003 R2. В последующих версиях серверных платформ Microsoft возможности встроенного NFS Windows сервера расширялись, появлялся новый функционал и средства управления. NFS сервер в Windows Server 2012 – очередная веха в развитии данной технологии.

Что же нового предлагают нам разработчики Microsoft в данном продукте? Новые возможности NFS сервера в Windows Server 2012:

  1. Поддержка стандарта NFS v4.1 . Поддержка последней версии NFS 4.1 – одно из основных новшеств Windows Server 2012. По сравнению с NFS v3 этот протокол обеспечивает повышенную безопасность, производительность и совместимость, полностью реализуя все аспекты RFC 5661.
  2. Производительность «из коробки». Благодаря использованию новой транспортной инфраструктуры RPC-XDR, оптимальная производительность NFS сервера может быть достигнута сразу «из коробки» без необходимости тонкой настройки параметров системы. Оптимальная производительность достигается за счет автоматически настраивающегося кэша, разделения рабочих процессов на пулы и динамическое управление пулами, основанное на их нагрузке.
  3. Упрощенное развертывание и управление . Данный факт достигнут за счет:
    • — более 40 командлетов PowerShell для настройки сервера NFS и управления общими папками
    • — простого графического интерфейса управления, позволяющего одновременно управлять как SMB, так и NFS шарами, а также настройками скрининга файлов и .
    • — фиксации RPC порта (порт 2049) для простоты настройки файерволов
    • — нового провайдера WMI v2
    • — упрощенной идентификации за счет плоского файла мапинга
  4. Улучшения в NFSv3 . За счет быстрой отправки клиентам уведомлений о сбоях монитором NSM (Network Status Monitor), старые NFS клиенты лучше и быстрее обрабатывают процедуру failover, что означает меньшее время простоя.

Итак, NFS сервер в Windows Server 2012 значительно улучшен с точки зрения простоты развертывания, масштабируемость, стабильность, доступность, надежность, безопасности и совместимости. Общие папки могут быть одновременно доступны по протоколам SMB и NFS, что означает возможность использования Windows Server 2012 в качестве хранилища в гетерогенных сетях.

NFS сервер в Windows Server 2012 можно установить с помощью GUI и Powershell. Чтобы установить NFS сервер с помощью графического интерфейса, откройте и внутри роли файлового сервера (File and Storage Services) отметьте компонент Server for NFS .

После окончания установки компонента NFS, сервер необходимо перезагрузить.

Установка этой же роли с помощью Powershell также не вызывает затруднений, просто выполните команду:

Add-WindowsFeature "FS-NFS-Service"

Настройка общей папки NFS в Windows Server 2012

Далее мы покажем, как с помощью установленной нами роли создать NFS шару (общую папку) на сервере Windows. Создать NFS шару можно опять несколькими способами: с помощью графического интерфейса или Powershell.

Создание общего каталога NFS с помощью консоли Server Manager

Откройте консоль Server Manager , перейдите в раздел Share management (находится внутри роли File and Storage Services ).
В контекстном меню запустите мастер создания нового общего каталога- New Share…

Выберите тип шары NFS Share — Quick

Затем необходимо задать тип аутентификации NFS клиентов: возможно, задействовать как Kerberos- аутентификацию, так и анонимную.

Предположим, в качестве потребителя создаваемого NFS ресурса будет выступать сервер виртуализации ESXi, в котором возможность аутентифицировать NFS соединения отсутствует (ESXi не поддерживает NFSv4). Поэтому тип аутентификации будет No Server Authentication , отметим также опции Enable unmapped user access и Allow unmapped user access by UID/GID .

Чтобы немного обезопасить создаваемую NFS шару от доступа сторонних лиц, ограничим доступ к NFS ресурсу по IP адресу клиента.

Host: 192.168.1.100
Language Encoding : BIG5
Share Permissions : Read/Write
Allow root access : Yes

Далее осталось проверить, что на уровне NTFS пользователь, в которого мапится подключающийся юзер, имеет доступ на чтение/запись (если решено задействовать анонимный доступ, придется для пользователя Everyone дать полные r/w права на уровне NTFS).

Как создать NFS шару с помощью Powershell

Создадим новую NFS шару:

New-NfsShare -Name "NFS " -Path "d:\shares\nfr" -AllowRootAccess $true -Permission Readwrite -Authentication sys

Разрешим доступ к шаре для IP адреса 192.168.1.100 и зададим кодировку BIG5 (возможность просмотра содержимого NFS шары для клиента ESXi).

Grant-NfsSharePermission -Name “NFS” -ClientName 192.168.1.100 -ClientType host -LanguageEncoding BIG5

Созданную NFS шару можно использовать, например, как NFS-datastore в среде виртуализации , или для доступа к данным с других Unix-like клиентов. Как смонтировать NFS шару в Windows — клиентах описано в статье.

Mkdir ~/ Общедоступная

Монтирование вручную

Для монтирования папки вручную необходимо выполнить в терминале команду:

Sudo mount -t nfs -O uid =1000 ,iocharset =utf-8 192.168.1.2:/ data ~/ Общедоступные

Следует помнить, что, как в настройках сервера, так и в настройках клиента при монтировании, путь к общему каталогу указывается полный . Данный пример показывает, что каталог /data находится в корне файловой системы.

Монтирование с записью в fstab

Для большего удобства можно добавить запись с сетевой папкой в fstab. Целесообразно создать точку монтирования сетевой папки в /media, потому что каталоги, созданные там, будут отображаться в Nautilus в левой колонке, монтировать их можно будет одним кликом.

Sudo mkdir / media/ Общедоступные

В файл /etc/fstab добавляем подобную запись:

192.168.1.1:/data /media/Общедоступные nfs user,rw,noauto 0 0

опция «noauto» запрещает автоматическое монтирование при старте системы.

Проблемы

Использование на ноутбуке

При монтировании удаленных папок NFS посредством fstab, в ситуации, когда сеть с сервером будет не доступна, ноутбук невозможно выключить или отправить в спящий режим. Для использования удаленных папок NFS на ноутбуке лучше воспользоваться монтированием при помощи autofs

Монтирование с помощью autofs

Данный способ монтирования позволяет автоматически монтировать папку после обращения к ней в наутилусе (к примеру, через закладки) или в терминале:

Cd / nfs/ server/

и автоматически отмонтировать при отсутствии активности.

Установка

Для реализации данного способа необходимо доустановить пакет autofs:

Sudo apt-get install autofs

Настройка

Для настройки autofs в файле /etc/auto.master необходимо добавить строку

/nfs /etc/auto.nfs --timeout=60

Здесь –timeout=60 указывает отмонтировать раздел при отсутствии активности на нём более чем 60 секунд. Создаем в корне файловой системы папку /nfs :

Sudo touch / etc/ auto.nfs && sudo mkdir / nfs

В файле /etc/auto.nfs добавляем строку/etc/default/autofs необходимо раскомментировать или добавить следующие строки:

#время ожидания ответа от mount

NEGATIVE_TIMEOUT=10

#время ожидания при неудачной попытке монтирования

После этого autofs будет пытаться примонтировать удаленную папку только 10 секунд.

Использование

Проблемы

Проблемы с гибернацией или выключением

После настройки автомонтирования сетевых папок NFS могут обнаружится некотрые проблемы с выключением или гибернацией системы. Чаще всего это проявляется как прерывающаяся гибернация (компьютер начинает уходить в гибернацию, гаснет экран, после чего экран опять загорается и работа продолжается, так же в этих случаях возможны проблемы с выключением и перезагрузкой системы. При последующих попытках отправить компьютер в гибернацию на черном экране вверрху можно наблюдать строку типа:

Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0)

Для диагностирования смотрим лог dmesg , возможный вывод:

Dmesg | grep -A 2 refuse Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0): nfs D 0000000000000000 0 2065 1 0x00800004

Dmesg | grep -A 2 refuse Freezing of tasks failed after 20.00 seconds (1 tasks refusing to freeze): updatedb.mloc D ffff88008e907578 0 9268 9261 0x00800004

Пакет, являющийся причиной зависания указан в начале строки, следующей после сообщения об ошибке.

Причина №1: пакет NFS

Причиной данной проблемы является скрипт прерывания работы NetworkManager, необходимо запретить его выполнение переименовав его:

Sudo mv /usr/lib/pm-utils/sleep.d/55NetworkManager /usr/libg/pm-utils/sleep.d/old.55NetworkManager

Причина №2: пакет updatedb.mloc

updatedb является частью пакета mlocate - удобного пакета для быстрого поиска файлов по системе. К сожалению, версия 0.23.1-1ubuntu2 , находящаяся в репозиториях Ubuntu содержит баг, при котором возникает ситуация, когда компьютер не может выключиться или отправиться в гибернацию, когда сервер NFS выключен . Для решения данной проблемы необходимо установить пакет версии 0.23.1-1 из репозитория debian-sid:

Wget http:// ftp.ru.debian.org/ debian/ pool/ main/ m/ mlocate/ mlocate_0.23.1-1 _i386.deb sudo dpkg -i mlocate*

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