Перейти к содержимому

 Друзья: Всё для вебмастера | [ Реклама на форуме ]


Rutor
Rutor


[ DDos Услуги. DDos атака. Заказать ДДос ]


Работа NFS с Windows


  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1
MrBonD

MrBonD

    UkrainiaN MaFia

  • Honourаble
  • PipPipPipPip
  • 777 сообщений
При работе с *NIX системами на предприятиях мне часто приходится организовывать совместную работу с Windows2003. В работе необходимо обеспечить взаимодействие UNIX <-> WIN, но бывает, что доступ по FTP или SCP не устраивает. Sambа я не перевариваю за ее ммм прихотливость, да и незачем ее ставить из-за такой мелочи.
Обычно нужно подобие сетевого диска для Win2003. За этим воспользуемся NFS. До
недавнего времени Win2003 не могла корректно обеспечить работу с сетевой файловой системой. И только с выходом Windows Server 2003 R2 все встало на свои места.

Содержание:
* NFS
     NFS Сервер
     NFS Клиент
* Windows2003
     Компоненты Windows
     Windows mount info
     Mount
* Windows Services for UNIX Version 3.5 (WinXP Pro)
* Информация о работе NFS
* Литература


NFS
  В FreeBSD встроена поддержка сетевой файловой системы (Network File System),
известной как NFS. NFS позволяет системе использовать каталоги и файлы совместно с другими машинами, посредством сети. Посредством NFS пользователи и программы могут получать доступ к файлам на удалённых системах точно так же, как если бы это были файлы на собственных дисках. Те можно хранить все данные на другой машине или использовать один CD-ROM или Zip всеми компьютерами. Иметь домашние каталоги доступные по все сети. А так же несколько машин могут иметь общий каталог /usr/ports/distfiles.

NFS Сервер
  Сначала организуем NFS сервер на FreeBSD. Для сервера NFS необходимо наличие на сервере работающих следующих демонов:
nfsd - Демон NFS, обслуживающий запросы от клиентов NFS.
mountd - Демон монтирования NFS, который выполняет запросы, передаваемые ему от nfsd.
rpcbind - Этот даемон позволяет клиентам NFS определить порт, используемый сервером NFS.

OpenBSD - для включение NFS Сервера в /etc/rc.conf измените.

Цитата

portmap=YES # Note: inetd (8) rpc services need portmap too
nfs_server=YES # see sysctl.conf for nfs client configuration
nfs_server_flags="-tun 4" # Crank the 4 for a busy NFS fileserver

FreeBSD - для включение NFS Сервера в /etc/rc.conf добавьте.

Цитата

rpcbind_enable="YES"
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
mountd_flags="-r -n"

Некоторые флаги nfs_server_flags:
-t - Обслуживание TCP-клиентов.
-u - Обслуживание UDP-клиентов.
-n 'x' - Количество одновременных подключений.
-h - Указать какой интерфейс слушать (-h 192.168.1.11 или -h Raven2000.su) можно
указать несколько интерфейсов.

Некоторые флаги mountd_flags:
-r - Позволяет mountd обслуживать и рядовые файлы, а не только каталоги.
-n - Монтирование ресурсов NFS на удаленных системах, не разделяющих модели владения и полномочий принятых в UNIX. (Windows)
-r - Протоколирование все запросы на монтирование NFS. (OpenBSD)
-l - Протоколирование все запросы на монтирование NFS. (FreeBSD)

Теперь обозначим, что будем экспортировать (EXPORTS).
В файле /etc/exports определяют, какие файловые системы на вашем сервере будут экспортироваться. Каждая строка в файле задаёт файловую систему, которая будет экспортироваться и какие машины будут иметь к ней доступ. Допустим нам нужно расшарить директорию /home/share.

Для этого в /etc/exports добавим.

Цитата

/home/share -ro -alldirs -maproot=root 192.168.1.12 host.win2k3.local

/home/share - Директория для доступа.
-alldirs - Разрешает монтировать любой подкаталог; по умолчанию разрешение выдается
только для указанного каталога.
-maproot=юзер - Закрепляет идентификатор учетной записи root за указанным пользователем
(это может быть значение UID или имя). По умолчанию выбирается пользователь nobody
(UID -2). Чтобы разрешить привилегированный доступ, задайте -maproot=root.
-mapall=юзер - Закрепляет все значений UID за определенным пользователем; это удобно
при работе с персональными компьютерами и ненадежными однопользовательскими станциями.
-webnfs - Экспорт каталога в формате WebNFS; доступ только для чтения всем
пользователям, а все идентификаторы закрепляют за пользователем nobody.
192.168.1.12 - Хосты, которым разрешено подключатся.
-ro - Экспорт для чтения; по умолчанию экспорт предоставляет для чтения-записи.

При изменение exports нужно перезапустить mountd.

Цитата

kill -HUP `cat /var/run/mountd.pid`
или

Цитата

# /etc/rc.d/mountd reload

NFS Клиент
В /etc/rc.conf добавьте

Цитата

nfs_client_enable="YES"

Перезагрузим систему и примонтируем директорию.
По команде /home/share на сервере будет смонтирована в каталог /mnt на клиенте.
Вы сможете в этом убедится, выполнив эту команду.

Цитата

mount_nfs Server_IP:/home/share /mnt

Если вы хотите автоматически монтировать удалённую файловую систему при каждой загрузке компьютера, добавьте файловую систему в /etc/fstab:

Цитата

Server_IP:/home/share     /mnt    nfs     rw, -b      0   0

-b - Заставляет при загрузке системы выполнить быструю попытку соединится с сервером если попытка не удалась система будет загружаться дальше. Но  порождается дочерний процесс,  продолжающий попытки.
-T - Принуждает использовать транспорт TCP вместо UTP.
-s -x 'x' - Позволяет примонтировать на строго определенное время (-x 60)
используя мягкое монтирование (-s).
-i - Это разрешает прерываемость комбинацией клавиш <Ctrl+C>.

Вы можете настроить количество процессов устанокой nfs_client_flags в /etc/rc.conf

Цитата

nfs_client_flags="-n 4"

Или выполнив в консоли

Цитата

# nfsiod -n 4
Демон nfsiod не обязателен, но позволяет работать в асинхронной манере, с операциями "опережающее чтение" и "отложенной записи" выполняемое в фоновом режиме, вместо ожидания каждого шага процесса. Количество процессов на сервере nfsd, должно совпадать или превышать количество процессов nfsiod на клиенте.


Windows2003
Службы Майкрософт® для Network File System (NFS) предоставляют решение совместного доступа к файлам для предприятий, работающих в смешанной среде Windows и UNIX. Службы Майкрософт для NFS позволяют пользователям перемещать файлы между Microsoft Windows Server 2003 R2 и компьютерами под управлением UNIX с помощью протокола сетевой файловой системы NFS.

Поиск в Active Directory. Расширение схемы Active Directory «Управление идентификацией  для UNIX», доступное в Windows Server 2003 R2, содержит идентификатор пользователя UNIX (UID) и идентификатор группы (GID), которые позволяют клиентам NFS просматривать сведения об  идентификации UNIX прямо из Active Directory.

Компоненты Windows
  Для работы Windows2003 c NFS необходимо добавить Службу Майкрософт® для Network File System. Для этого проделаем следующее:
1. Установка и удаления программ -> Установка компонентов Windows
2. Другие службы доступа к файлам и принтерам сети -> Служба Microsoft для NFS
И выбираем там:
2.1 Администрирование служб Microsoft для NFS
2.2 Внешнее представление данных RPC
2.3 Клиент для NFS

После установки и перезагрузки появляется возможность примонтировать NFS к Win2k3.

Windows mount info
  Чтобы сопоставить сетевой диск с помощью средств командной строки введите:

Цитата

mount [o Параметры ] [u: Имя_пользователя ] [p:{ Пароль | *}]
Имя_компьютера :/ Имя_общего_ресурса { Имя_устройства | *}
или

Цитата

mount [o Параметры ] [u: Имя_пользователя ] [p:{ Пароль | *}]
\\ Имя_компьютера \ Имя_общего_ресурса { Имя_устройства | *}

Аргументы  Описания:
o rsize= n
Размер буфера чтения, в килобайтах. Допустимые значения: 1, 2, 4, 8, 16 и 32(default).

o wsize= n
Размер буфера записи, в килобайтах. Допустимые значения: 1, 2, 4, 8, 16 и 32(default).

o timeout= n
Время задержки удаленного вызова процедуры (RPC), в секундах. Допустимые значения 0,8; 0,9 и все целые числа в диапазоне 160; значение по умолчанию равно 0,8.

o retry= n
Количество попыток программного (soft) подключения. Допустимые значения: целые числа в диапазоне 110; значение по умолчанию равно 1.

o mtype={soft | hard}
Программное (soft) или аппаратное (hard) подключение. Независимо от типа подключения его установка повторяется, если общий ресурс не удается подключить сразу. Однако если тип подключения является аппаратным, то после успешного подключения общего ресурса клиент для NFS будет продолжать попытки получения доступа к общему ресурсу до тех пор, пока они не завершатся успехом.

o anon
Выполняет подключение в качестве анонимного пользователя.

o nolock
Отключает блокировку. Данный параметр может увеличить производительность, если требуется только читать файлы.

-o lang={euc-jp|euc-tw|euc-kr|shift-jis|big5|ksc5601|gb2312-80|ansi}
Задает для имен файлов и каталогов кодировку по умолчанию, и, если параметр используется, должна устанавливаться одна из следующих кодировок:

-o fileaccess= режим
Задает стандартный режим разрешений для вновь создаваемых файлов на общем ресурсе NFS. Указывайте режим в виде трехразрядного числа, имеющего формат ogw, где каждая из букв o, g и w  цифра, обозначающая доступ, предоставляемый владельцу файла, группе и всем, соответственно. Цифры должны находиться в диапазоне 07 и имеют следующее значение:
0: нет доступа;
1: x (доступ с правами на выполнение);
2: w (доступ с правами на запись);
3: wx (доступ с правами на запись и выполнение);
4: r (доступ с правами на чтение);
5: rx (доступ с правами на чтение и выполнение);
6: rw (доступ с правами на чтение и запись);
7: rwx (доступ с правами на чтение, запись и выполнение).


-o casesensitive
Принудительно устанавливает режим поиска на сервере, учитывающий регистры вводимых букв.

u: Имя_пользователя
Имя пользователя, используемое для подключения общего ресурса.

p:{ Пароль | *}
Пароль пользователя, используемый для подключения общего ресурса. Если используется звездочка (*), выводится запрос на ввод пароля.

Имя_компьютера
Имя сервера, на котором находится подключаемый общий ресурс.

Имя_общего_ресурса
Имя общего каталога, к которому выполняется подключение.

Имя_устройства | *
Буква диска, назначаемая подключенному общему ресурсу. Звездочка указывает (*) на использование следующей доступной буквы.

Mount
Из сего вышесказанного ясно что примонтировать можно так:

Цитата

Имя_сервера:/Имя_общего_ресурса
или так:

Цитата

\\Имя_сервера\Имя_общего_ресурса

Но остановимся на первом варианте тк. с этим форматом операции просмотра выполняются с меньшими задержками и, соответственно, поиск и подключение ресурса NFS осуществляются быстрее.
Для автоматического монтирования можно создать *.bat файл следующего содержания ипоместить в автозагрузку для автоматическов подключения. Или в командной стороке выполнить. Способов много на вкус и цвет.

Цитата

umount -a
mount 192.168.1.12:/home/share  Z


Windows Services for UNIX Version 3.5 (WinXP Pro)
  Для WindowsXP клиентов NFS много, но они платные и этим все сказано. Эта ситуация
мне не нравится, поэтому  пошел в обход. Для работы Windows XP Pro с NFS есть
официальная бесплатная вещь Windows Services for UNIX Version 3.5 Ее нужно
скачать и установить. Так как я не боян то выложу полную выборку, откуда что качать
и как ставить. :lol:

1) ]]>Overview of Windows Services for UNIX Installation]]>
1.1) ]]>Службы Windows для UNIX]]>
2) ]]>Скачать Windows Services for UNIX Version 3.5]]>
Устанавливается на: Windows 2000 Service Pack 4; Windows Server 2003; Windows XP.
3) ]]>Как установить клиент NFS для Windows при переходе с UNIX на Windows]]>
4) ]]>Making Windows Services for Unix (SFU) Install on XP Home Edition]]>.


Информация о работе NFS
  Для отображения совместных используемых ресурсов с их полномочиями используется
showmount с опцией -e т.е. показать список экспорта.

Цитата

# showmount -e
Exports list on localhost:
/home/share Everyone

Или использую nfsstat

Просмотрим статистику процессов NFS-сервера.

Цитата

# nfsstat -s

Server Info:
Getattr Setattr Lookup Readlink Read Write Create Remove
9 1 8 0 0 1 3 3
Rename Link Symlink Mkdir Rmdir Readdir RdirPlus Access
3 0 0 0 0 4 13 3
Mknod Fsstat Fsinfo PathConf Commit
0 34 4 4 1
Server Ret-Failed
4
Server Faults
0
Server Cache Stats:
Inprog Idem Non-idem Misses
0 0 0 0
Server Write Gathering:
WriteOps WriteRPC Opsaved
1 1 0

Отобразим информацию об операциях на стороне клиента.

Цитата

# nfsstat -c
Client Info:
Rpc Counts:
Getattr Setattr Lookup Readlink Read Write Create Remove
0 0 0 0 0 0 0 0
Rename Link Symlink Mkdir Rmdir Readdir RdirPlus Access
0 0 0 0 0 0 0 0
Mknod Fsstat Fsinfo PathConf Commit
0 0 0 0 0
Rpc Info:
TimedOut Invalid X Replies Retries Requests
0 0 0 0 0
Cache Info:
Attr Hits Misses Lkup Hits Misses BioR Hits Misses BioW Hits Misses
0 0 0 0 0 0 0 0
BioRLHits Misses BioD Hits Misses DirE Hits Misses
0 0 0 0 0 0


Ну вот и все NFS примонтированна к Windows лишнего ничего не стоит и все довольны.
На сим закончим.

Автор: Raven2000
Изображение
ИНФА О ЛЮБОМ ЧЕЛОВЕКЕ ПО UKR ТУТ
--- "Бачу-бачу власний трилер з понеділка по неділю..." ---


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных