Настройка NFS сервера в Ubuntu

Настройка nfs в Ubuntu 16.04

Настройка NFS сервера в Ubuntu
Сетевая файловая система NFS или Network File System, это популярный протокол сетевой файловой системы, который позволяет пользователям подключать удаленные сетевые каталоги на своей машине и передавать файлы между серверами.

Вы можете использовать дисковое пространство на другой машине для своих файлов и работать с файлами, расположенными на других серверах.

По сути, это альтернатива общего доступа Windows для Linux, в отличие от Samba реализована на уровне ядра и работает более стабильно.

В этой статье будет рассмотрена установка nfs в Ubuntu 16.04. Мы разберем установку всех необходимых компонентов, настройку общей папки, а также подключение сетевых папок.

Немного теории

Как уже было сказано, NFS, это сетевая файловая система. Для работы необходим сервер, на котором будет размещена общая папка и клиенты, которые могут монтировать сетевую папку как обычный диск в системе.

В отличие от других протоколов NFS предоставляет прозрачный доступ к удаленным файлам.

Программы будут видеть файлы как в обычной файловой системе и работать с ними как с локальными файлами, nfs возвращает только запрашиваемую часть файла, вместо файла целиком, поэтому эта файловая система будет отлично работать в системах с быстрым интернетом или в локальной сети.

Установка компонентов NFS

Перед тем как мы сможем работать с NFS, нам придется установить несколько программ. На машину, которая будет сервером нужно установить пакет nfs-kernel-server, с помощью которого будет выполнено открытие шары nfs в ubuntu 16.04. Для этого выполните:

sudo apt install nfs-kernel-server

Теперь давайте проверим правильно ли установился сервер. Сервис NFS слушает соединения как для TCP, так и для UDP на порту 2049. Посмотреть действительно ли сейчас используются эти порты можно командой:

rpcinfo -p | grep nfs

Также важно проверить поддерживается ли NFS на уровне ядра:

cat /proc/filesystems | grep nfs

Видим, что работает, но если нет, нужно вручную загрузить модуль ядра nfs:

modprobe nfs

Давайте еще добавим nfs в автозагрузку:

sudo systemctl enable nfs

На клиентском компьютере вам нужно установить пакет nfs-common, чтобы иметь возможность работать с этой файловой системой. Вам необязательно устанавливать компоненты сервера, достаточно будет только этого пакета:

sudo apt install nfs-common

Вот и все, дальше настройка nfs ubuntu.

Настройка сервера NFS в Ubuntu

Мы можем открыть NFS доступ к любой папке, но давайте создадим для этих целей новую:

sudo mkdir /var/nfs

Дальше нас интересует настройка ubuntu nfs server. Все общие папки и другие настройки nfs находятся в файле /etc/exports. Синтаксис записи папки такой:

адрес_папки клиент (опции)

Адрес папки — это та папка, которую нужно сделать доступной по сети. Клиент — ip адрес или адрес сети, из которой могут получить доступ к этой папке. А вот с опциями немного сложнее. Рассмотрим некоторые из них:

  • rw — разрешить чтение и запись в этой папке
  • ro — разрешить только чтение
  • sync — отвечать на следующие запросы только тогда, когда данные будут сохранены на диск (по умолчанию)
  • async — не блокировать подключения пока данные записываются на диск
  • secure — использовать для соединения только порты ниже 1024
  • insecure — использовать любые порты
  • nohide — не скрывать поддиректории при, открытии доступа к нескольким директориям
  • root_squash — подменять запросы от root на анонимные
  • all_squash — превращать все запросы в анонимные
  • anonuid и anongid — указывает uid и gid для анонимного пользователя.

Например, для нашей папки эта строка может выглядеть вот так:

/var/nfs 127.0.0.1(rw,sync,no_subtree_check)

Когда все было настроено, осталось обновить таблицу экспорта NFS:

sudo exportfs -a

Вот и все, открытие шары nfs в ubuntu 16.04 завершено. Теперь попытаемся настроем клиента и попытаемся ее примонтировать.

Подключение NFS

Мы не будем подробно останавливаться на этом вопросе в сегодняшней статье. Это довольно большая тема, заслуживающая отдельной статьи. Но пару слов я все же скажу.

Чтобы подключить сетевую папку вам не нужен никакой nfs клиент ubuntu, достаточно использовать команду mount:

 sudo mount 127.0.0.1:/var/nfs/ /mnt/

Теперь вы можете попытаться создать файл в подключенной директории:

touch /mnt/test

Также мы посмотрите подключенные файловые системы с помощью df:

df -h

127.0.0.1:/var/nfs 30G 6,7G 22G 24% /mnt

Чтобы отключить эту файловую систему достаточно использовать стандартный umount:

sudo umount /mnt/

Выводы

Настройка NFS сервера в Ubuntu

Настройка NFS сервера в Ubuntu

С протоколами передачи данных знаком не каждый. А вот соединить свои компьютеры в одну сеть или использовать сервер для хранения файлов хотели бы многие. Один из способов это осуществить: NFS. Как настроить NFS сервер в Ubuntu — читайте далее.

Правильно настроив NFS можно объединить в одну сеть компьютеры на разных ОС.

Что такое NFS?

Network File System — протокол сетевого доступа к файлам. Как водится, состоит из двух частей. Одна — клиентская, которая расположена на компьютере, с которого просматривают удалённые данные.

Другая — серверная — расположена на компьютере, где эти данные хранятся. Довольно удобно использовать дополнительное дисковое пространство, особенно в локальной сети.

А если речь идёт о каких-то корпоративных ПК, то это просто необходимо.

Чем отличается?

Сегодня существует большое число протоколов и самого разного программного обеспечения, которое выполняет те же самые функции. Чем выделяется NFS?

  • Возможность соединения в одну сеть компьютеров на разных операционных системах. Часто ОС Windows удобно соединить по NFS с Unix-системой, например, Ubuntu. Для этих же целей существует и применяется Samba, но NFS легче, проще и быстрее этой программы, поскольку реализован на уровне ядра. Поэтому настроить доступ через него, как правило, будет проще.
  • NFS предоставляет прозрачный доступ к файлам. Это означает, что все удалённые файлы воспроизводятся точно так же, как и локальные. Программы не надо апгрейдить, чтобы воспроизвести любой файл, находящийся на сервере.
  • NFS отправляет только запрашиваемую часть файла, а не весь файл.

Устанавливать Network File System для полноценной работы необходимо, как минимум, на два компьютера: сервер и клиент. Естественно, новичку больше всего попотеть придётся над серверной частью, поскольку именно там необходимо «расшаривать» (открывать доступ) папки. Однако всё это выполняется довольно легко.

Как и большинство протоколов передачи данных, NFS совсем не молод. Разработан он был в 1984 году и предназначался для UNIX-систем.

Это и сейчас главная роль NFS, однако многие обнаружили, что при помощи его очень удобно соединять Windows-компьютеры с линуксовыми.

Кроме того, NFS отлично подходит для воспроизведения мультимедийного контента по локальной домашней сети. Samba в этой роли часто подвисает и подтормаживает.

Установка серверной части NFS

Серверную часть протокола мы будем ставить на Ubuntu 16.04. Естественно, если у вас стоит редакция Server, то процесс никоим образом не отличается. Просто в традиционной версии Убунту некоторые действия можно выполнить при помощи графического интерфейса.

Устанавливаем программу. Для этого можно воспользоваться центром загрузки приложений, а можно просто ввести команду:

sudo apt install nfs-kernel-server

После этого нелишним будет проверить корректность установки. Делать это не обязательно, но мы всё же проверим. Вводим команду:

rpcinfo -p | grep nfs

Порт везде должен быть 2049.

Теперь проверяем, поддерживает ли ядро NFS. Для этого вводим:

cat /proc/filesystems | grep nfs

Полученное значение должно выглядеть так: nodev nfsd

Это означает, что всё функционирует правильно. Если нет, то вводим команду:

modprobe nfs

При помощи её мы ставим модуль ядра самостоятельно.

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

sudo systemctl enable nfs

Итак, серверную часть мы установили, осталось правильно её настроить и перейти к клиентской.

Настройка

Настройка NFS в Ubuntu заключает в себе расшаривание определённых папок.

Помимо просто открытия доступа необходимо также указать параметры, которые определяют возможности пользователя по отношению к этой папке.

  • rw — reading and writing этот параметр разрешает чтение и запись файлов в папке.
  • ro — reading only — разрешает только чтение папки.
  • sync (по умолчанию) — параметр обеспечивает надёжность передачи. Если включен он, то нельзя будет одновременно передавать несколько файлов или на разные компьютеры. Эта настройка не даст отвечать на другие запросы. Предотвращает утерю данных, но передача может идти медленнее.
  • async — обратный предыдущему параметр. Передача идёт быстрее, но возникает риск потери информации.
  • secure — опция разрешает использовать только порты, номер которых ниже 1024. Включена по умолчанию.
  • insecure — разрешает использование любых портов.
  • nohide — если вы монтируете несколько директорий, среди которых есть вложенные, то вложенные в отличие от родительской будут отображаться как пустые. Исправить это поможет параметр
  • anonuid — указывает uid для анонимов. Это специальный идентификатор пользователя.
  • anongid — указывает gid для анонимов. GID (Group ID) — ещё один идентификатор пользователя.
  • no_subtree_check — функция отключает контроль поддерева. Дело в том, что без неё NFS дополнительно проверяет, что пользователи обращаются только в нужные разделы каталога. Это замедляет работу. Параметр позволяет ускорить её, но понижает безопасность.

Их мы и будем использовать в зависимости от того, что нужно в конкретной ситуации.

Создадим новую папку. Можно использовать и новую. Наша папка будет /var/network.

Теперь необходимо добавить эту папку в файл /etc/exports. Там хранятся все файлы и папки с открытым сетевым доступом. Запись должна выглядеть так:

/var/network168.1.1(rw,async,no_subtree_check)

192.168.1.1 — это IP, по которому мы осуществляем передачу. Указывать его обязательно.

Обновляем таблицу экспорта:

sudo exportfs –a

Теперь попробуем получить доступ к папке со стороны клиента.

Ubuntu

На Убунту подключить настроенный сервер не составит труда. Делается это всего за пару команд.

Устанавливаем специальный клиентский пакет:

sudo apt install nfs-common

Дальше просто пользуемся командой:

sudo mount 192.168.1.1:/var/network/ /mnt/

Сетевая папка подключена. С помощью df можно проверить все подключенные сетевые папки:

df –h

Также можно проверить свой уровень доступа специальной командой:

touch /mnt/test

Отключаем файловую систему следующим образом:

sudo umount /mnt/

Почти везде используется команда mount. Она отвечает за процесс монтирования, то есть, подготовки пространства на жёстком диске для использования его операционной системой. Звучит сложно, но если упростить, получится, что мы просто перекидываем сетевые файлы на наш компьютер в новоявленную папку. Здесь она называется /mnt/.

Windows

С Виндой, как правило, всё складывается куда сложнее. NFS клиент без проблем можно запустить на всех серверных Windows. Из стандартных он присутствует на:

  • Windows 7 Ultimate/Enterprise
  • Windows 8/8.1 Enterprise
  • Windows 10 Enterprise

Больше нигде не найти. Если у вас одна из этих версий, делаем следующее:

  1. Открываем меню «Программы и компоненты».
  2. Жмём «Добавление компонентов».
  3. Находим там NFS и ставим только «Клиент для NFS», другой компонент нам не нужен.

После подключения монтируется всё такой же командой:

mount 192.168.1.1:/var/network/ /mnt/

Размонтировать можно следующим образом:

umount Z: -F

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

А что делать, если клиента для NFS на компьютере нет? Можно попробовать загрузить софт через сайт Microsoft или со сторонних ресурсов. Возможно, что здесь понадобятся другие команды или действия.

Теперь у вас появились базовые представления о том, как можно использовать NFC и провести простейшую настройку. Этих знаний хватит, чтобы наладить доступ с одного компьютера к другому. Причём в роли клиента может выступить и ПК на Windows.

Настройка и монтирование NFS

Настройка NFS сервера в Ubuntu

Если у Вас дома(или на работе) не один компьютер, то естественным желанием будет объединить их в сеть для использования совместных ресурсов на компьютерах.

Ubuntu позволяет сделать это разными способами — SMB (Server Message Block) с использованием Samba (об этом способе напишу в следующий раз) и с использованием NFS (network file system).

Если у вас в сети компьютеры работают под управлением разных операционных систем (Linux, Windows), то целесообразнее использовать Samba. Но если все компьютеры работают под Ubuntu, то имеет смысл поставить NFS

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

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

Конечно, в сети достаточно много информации по nfs, но приходится перелопачивать множество сайтов в поисках «подводных камней», поэтому я решил собрать свой опыт в данной статье.

Устанавливаем необходимые пакеты клиента (nfs-common) и сервера (nfs-kernel-server). В терминале выполняем следующую команду:

sudo apt-get install nfs-kernel-server nfs-common portmap

Настраиваем NFS-сервер.

Для примера мы предоставим общий доступ к папкам /common, /common1 и /common2, находящимся в домашней папке /user пользователя user, под чьим именем мы вошли в систему на компьютере с адресом 192.168.0.1.

Условия использования папок (для примера):

  • /common — доступ на запись/чтение для всех компьютеров в локальной сети (из любой подсети);
  • /common1 — доступ на чтение компьютеру с адресом 192.168.0.100, остальным доступ запрещен;
  • /common2 — доступ на запись/чтение всем компьютерам с диапазона адресов 192.168.0.1 — 192.168.0.255 кроме компьютера с адресом 192.168.0.200.

Все данные о совместном использовании папок хранятся в файле /etc/exports. Выполняем в терминале команду:

sudo gedit /etc/exports

В появившемся редакторе записываем:

/home/user/common *(rw,async)

/home/user/common1 192.168.0.100(ro,async)

/home/user/common2 192.168.0.1/24(rw,sync) 192.168.0.200(noaccess)

Сохраняем файл.

Обратите внимание, что:

  • записывается полный путь к папке для совместного использования от самого корня;
  • пробелов между адресом компьютера и опциями монтирования нет!

Примечание на счет пробелов:

/home/user/common1 192.168.0.100(rw,async)

В этом случае доступ к папке /home/user/common1 получит компьютер с адресом 192.168.0.100 с правами на чтение/запись, остальные доступ не получат.

/home/user/common1 192.168.0.100 (rw,async)

В этом случае доступ к папке /home/user/common1 получит компьютер с адресом 192.168.0.100 с правами на чтение, остальные компьютеры получат доступ с правами на чтение/запись!

Доступные опции:

    ro (rw) — Разрешает только запросы на чтение (чтение/ запись). subtree_check (no_subtree_check) — Если экспортируется подкаталог фаловой системы, но не вся файловая система, сервер проверяет, находится ли запрошенный файл в экспортированном подкаталоге. Отключение проверки уменьшает безопасность, но увеличивает скорость передачи данных. sync (async) — указывает, что сервер должен отвечать на запросы только после записи на диск изменений, выполненных этими запросами. Опция async указывает серверу не ждать записи информации на диск, что повышает производительность, но понижает надежность, т.к. в случае обрыва соединения или отказа оборудования возможна потеря информации. wdelay (no_wdelay) — указывает серверу задерживать выполнение запросов на запись, если ожидается последующий запрос на запись, записывая данные более большими блоками. Это повышает производительность при отправке больших очередей команд на запись. no_wdelay указывает не откладывать выполнение команды на запись, что может быть полезно, если сервер получает большое количество команд не связанных друг с другом.
    noaccess— запрещает доступ к указанной директории. Может быть полезной, если перед этим вы задали доступ всем пользователям сети к определенной директории, и теперь хотите ограничить доступ в поддиректории лишь некоторым пользователям.

Перезапускаем nfs-kernel-server:

sudo /etc/init.d/nfs-kernel-server restart

в дальнейшем при изменении конфигурационного файла будет достаточно перечитать конфигурационный файл:

sudo exportfs -a

Настройка сервера закончена.

Настройка КЛИЕНТА

Установка и настройка NFS-клиента.

Установка (если мы не ставили сервер, в противном случае клиент уже установлен):

sudo apt-get install portmap nfs-common

Монтирование:

Для начала создадим папки, в которые будут монтироваться сетевые ресурсы. Пусть они в нашем примере монтируются в домашнюю папку пользователя user2, в которой мы создадим папки общих ресурсов: /net/disk1, /net/disk2, /net/disk3. Для этого в терминале выполним команды:

mkdir net cd /net mkdir disk1 mkdir disk2

mkdir disk3

То же самое можно сделать просто в Nautilus.

Монтирование сетевых ресурсов возможно сделать как автоматически, так и вручную.

Для ручного монтирования в терминале выполняем команды:

sudo mount -t nfs -o rw,hard,intr 192.168.0.1:/home/user/common ~/net/disk1 sudo mount -t nfs -o ro,soft,intr 192.168.0.1:/home/user/common1 ~/net/disk2

sudo mount -t nfs -o rw,soft,intr 192.168.0.1:/home/user/common2 ~/net/disk3

Примечание:Опция hard жестко привязывает папку на клиенте к серверу и если сервер отвалится, то может зависнуть и ваш компьютер. Опция soft, как понятно из её названия, не такая категоричная. Полный спискок опций Вы можете посмотреть по команде man nfs, набранной в терминале.

Данный способ не очень удобен, так как каждый раз после перезагрузки придется выполнять эти команды. Сделаем монтирование автоматическим.

Для автоматического монтирования редактируем файл /etc/fstab

sudo gedit /etc/fstab

В конец открытого файла добавляем наши данные

192.168.0.1:/home/user/common /home/user2/net/disk1 nfs defaults 0 0 192.168.0.1:/home/user/common1 /home/user2/net/disk2 nfs defaults 0 0

192.168.0.1:/home/user/common2 /home/user2/net/disk3 nfs defaults 0 0

Сохраняем файл.

Выполним монтирование дисков:

Теперь наши сетевые диски видны в проводнике как простые папки.

Сетевая файловая система NFS или Network File System, это популярный протокол сетевой файловой системы, который позволяет пользователям подключать удаленные сетевые каталоги на своей машине и передавать файлы между серверами.

Вы можете использовать дисковое пространство на другой машине для своих файлов и работать с файлами, расположенными на других серверах.

По сути, это альтернатива общего доступа Windows для Linux, в отличие от Samba реализована на уровне ядра и работает более стабильно.

В этой статье будет рассмотрена установка nfs в Ubuntu 16.04. Мы разберем установку всех необходимых компонентов, настройку общей папки, а также подключение сетевых папок.

Как настроить NFS (Network File System) на RHEL/CentOS/Fedora и..

Настройка NFS сервера в Ubuntu
NFS (Network File System) в основном разработана для совместного использования файлов и папок между Linux/Unix систем от компании Sun Microsystems в 1980 году.

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

С помощью NFS, мы можем настроить общий доступ к файлам между Unix в Linux системе и Linux для системы Unix.

Преимущества NFS

  1. NFS создает локальный доступ к удаленным файлам.
  2. Он использует стандартную архитектуру клиент/сервер для обмена файлами между всеми машинами на базе * NIX.

  3. С помощью NFS не нужно, чтобы обе машины работали на той же ОС.
  4. С помощью NFS мы можем настроить решение централизованного хранения.

  5. Пользователи получают свои данные независимо от их физического расположения.
  6. Автоматическое обновление для новых файлов.

  7. Более новая версия NFS поддерживает монтирование acl, pseudo под root.
  8. Может быть защищен брандмауэрами и Kerberos.

Услуги NFS

Cервис System V-launched. Серверный пакет NFS включает в себя три средства, входящие в состав пакетов portmap и nfs-Utils.

  1. portmap: отображает вызовы, сделанные из других машин к правильной службе RPC (не требуется с NFSv4 ).
  2. nfs: преобразует удаленные запросы общего доступа к файлам в запросы на локальной файловой системе.
  3. rpc.mountd: эта служба отвечает за монтирование и размонтирования файловых систем.

Важные файлы конфигурации для NFS

  1. /etc/exports: его основной конфигурационный файл NFS, все экспортируемые файлы и каталоги, которые определены в этом файле и на конечном сервере NFS.

  2. /etc/fstab: Для того, чтобы смонтировать каталог NFS на вашей системе без перезагрузок, нам нужно сделать запись в /etc/fstab.

  3. /etc/sysconfig/nfs: Конфигурационный файл NFS для управления, на котором порт RPC и другие услуги прослушивания.

Настройка и монтирование NFS на сервере Linux

Для настройки монтирования NFS, мы будем нуждаться по крайней мере, в двух машинах Linux/Unix. Вот в этом учебнике, мы будем использовать два сервера.

  1. Сервер NFS: nfsserver.example.ru с IP – 192.168.0.55
  2. Клиент NFS: nfsclient.example.ru с IP – 192.168.0.60

Установка сервера NFS и клиента NFS

Нам нужно установить пакеты NFS на нашем сервере NFS, а также на машине клиента NFS. Мы можем установить его с помощью “yum” (Red Hat Linux) и установочный пакет “apt-get” (Debian и Ubuntu).

[root@nfsserver ~]# yum install nfs-utils nfs-utils-lib[root@nfsserver ~]# yum install portmap (not required with NFSv4)[root@nfsserver ~]# apt-get install nfs-utils nfs-utils-lib

Теперь запустите службы на обеих машинах.

[root@nfsserver ~]# /etc/init.d/portmap start[root@nfsserver ~]# /etc/init.d/nfs start[root@nfsserver ~]# chkconfig —level 35 portmap on[root@nfsserver ~]# chkconfig —level 35 nfs on

После установки пакетов и запуск сервисов на обеих машинах, нам нужно настроить обе машины для совместного использования файлов.

Настройка сервера NFS

Сначала настроим сервер NFS.

Настройка каталога экспорта

Для обмена каталог с NFS, нам нужно сделать запись в  файл конфигурации “/etc/exports”. Здесь мы будем создавать новый каталог с именем “nfsshare” в разделе “/” для обмена с сервером клиента, вы также можете поделиться уже существующим каталогом с NFS.

[root@nfsserver ~]# mkdir /nfsshare

Теперь нам нужно сделать запись в “/etc/exports” и перезапустить службы, чтобы сделать наш каталог разделяемыми в сети.

[root@nfsserver ~]# vi /etc/exports /nfsshare 192.168.0.60(rw,sync,no_root_squash)

В приведенном выше примере, есть каталог, в разделе / под названием “nfsshare“, в настоящее время совместно с клиентом IP “192.168.0.

60” с привилегиями чтения и записи (RW), вы можете также использовать имя хоста клиента вместо IP в приведенном выше примере.

Параметры NFS

Некоторые другие варианты мы можем использовать в файлы “/etc/exports” для совместного использования файлов выглядит следующим образом.

  1. ro: С помощью этой опции мы можем предоставить доступ только для чтения к общим файлам, то есть клиент будет только в состоянии прочитать.
  2. rw: Эта опция позволяет клиент – серверу доступ для обоих для чтения и записи в пределах общего каталога.
  3. sync: Синхронизация подтверждает запросы к общему каталогу только после того, как изменения были совершены.
  4. no_subtree_check: Эта опция предотвращает проверку поддерева. Когда общий каталог является подкаталогом большей файловой системы, NFS выполняет сканирование каждой директории над ним, чтобы проверить свои разрешения и детали. Отключение проверки поддерева может повысить надежность NFS, но снижают безопасность.
  5. no_root_squash: Эта фраза позволяет root, подключиться к определенной папке.

Для большего количества вариантов с “/etc/exports“, рекомендуется прочитать страницы руководства для экспорта.

Настройка клиента NFS

После настройки NFS-сервера, нам необходимо смонтировать этот общий каталог или раздел на клиентском сервере.

Монтирование общих каталогов на клиенте NFS

Теперь на клиенте NFS, нам нужно смонтировать этот каталог для доступа к нему на местном уровне. Для этого, во-первых, мы должны выяснить, какие ресурсы доступны на удаленном сервере или сервере NFS.

[root@nfsclient ~]# showmount -e 192.168.0.55 Export list for 192.168.0.55:/nfsshare 192.168.0.60

Командой показывает, что каталог с именем “nfsshare” доступна на “192.168.0.55” , чтобы поделиться с вашим сервером.

Монтирование доступного каталога в NFS

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

[root@nfsclient ~]# mount -t nfs 192.168.0.55:/nfsshare /mnt/nfsshare

Приведенная выше команда установит общий каталог в “/mnt/nfsshare” на сервере клиента. Вы можете проверить его следующей командой.

[root@nfsclient ~]# mount | grep nfs sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)nfsd on /proc/fs/nfsd type nfsd (rw)192.168.0.55:/nfsshare on /mnt type nfs (rw,addr=192.168.0.55)

Выше команда mount монтирует на NFS совместно используемый каталог на NFS клиента временно, чтобы смонтировать каталог NFS постоянно на вашей системе вне зависимости от перезагрузок, нам нужно сделать запись в “/etc/fstab“.

[root@nfsclient ~]# vi /etc/fstab

Добавьте следующую новую строку, как показано ниже.

192.168.0.55:/nfsshare /mnt nfs defauls 0 0

Тестирование режима работы установки NFS

Мы можем протестировать нашу установку сервера NFS путем создания тестового файла на стороне сервера и проверить его наличие на NFS клиента стороне или наоборот.

На стороне сервера nfsserver

Мы создали новый текстовый файл с именем “nfstest.txt” в этом общем каталоге.

[root@nfsserver ~]# cat > /nfsshare/nfstest.txt This is a test file to test the working of NFS server setup.

На стороне клиента nfsclient

Перейдите в общий каталог на сервере клиента и вы обнаружите общий файл без какого-либо ручного обновления или службы перезагрузки.

[root@nfsclient]# ll /mnt/nfssharetotal 4-rw-r—r— 1 root root 61 Sep 21 21:44 nfstest.txtroot@nfsclient ~]# cat /mnt/nfsshare/nfstest.txtThis is a test file to test the working of NFS server setup.

Удаление монтирования NFS

Если вы хотите размонтировать этот общий каталог с сервера после того, как вы закончите с обменом файлами, вы можете просто размонтировать этот конкретный каталог с помощью команды “umount“. Смотрите этот пример ниже.

root@nfsclient ~]# umount /mnt/nfsshare

Вы можете видеть, что монтирование было удалено в файловой системе.

[root@nfsclient ~]# df -h -F nfs

Вы увидите, что эти общие каталоги не доступны больше.

Важные команды для NFS

Некоторые более важные команды для NFS .

  1. showmount -e : Показывает доступные расшаренные объекты на локальном компьютере
  2. showmount -e: Список доступных расшаренных объектов на удаленном сервере
  3. showmount -d : Список всех поддиректорий
  4. exportfs -v : Отображает список расшаренных файлов и опций на сервере
  5. exportfs -a : Экспорт всех доступных объектов, перечисленных в /etc/exports, или имя
  6. exportfs -u : Реэкспорт всех доступных объектов, перечисленные в /etc/exports, или имя
  7. exportfs -r : Обновить список сервера после изменения /etc/exports

Это все про монтирование NFS на данный момент, если интересно, можете прочитать гид о том как настроить сервер NFS на Ubuntu 16. Оставляйте свои комментарии и предложения ниже в поле для комментариев.

, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Установка и настройка NFS сервера и клиента в Ubuntu

Настройка NFS сервера в Ubuntu

дело было вечером — делать было нечего (точнее дело было ночью)

в общем что то я начал подозревать что юзать самбу на линукс машинах есть не очень корректно по сему решил поднять на домашнем сервере вместо самбы (а точнее в дополнение к ней) NFS

конфигурация такова

сервер — ubuntu 9.04 desktop там торрнент клиент крутиться ну и немного софта для просмотра видео ну и много HDD

рабочая станция тут уже как месяц тоже ubuntu 9.04 desktop естественно немного винчестера и опять торрнет только уже для часто меняющихся загрузок ну и торрент естественно скачивает на серверную машину

сеть — 100 мегабит инет и 1G локально (сервер-раб.станции)

немного погуглив нашел немного (гуглил русский сегмент инета), но того что нашел я посчитал будет предостаточно. Так что начинаем (статья писалась в процессе установки-настройки)

СЕРВЕР

Устанавливаем NFS-сервер:

sudo apt-get install nfs-kernel-server nfs-common portmap

Настраиваем, какие именно директории мы хотим открыть для совместного пользования и кому. Все это делается в файле /etc/exports:

sudo nano -w /etc/exports

В приведенном ниже примере я выделил директорию /data (директория с данными на сервере) в совместное пользование всем компьютерам с IP — 192.168.0.1 — 192.168.3.255 с правами чтения и записи:

/hard 192.168.0.1/22(rw,no_root_squash,async)

Или еще пример:

/home/samnick/ 192.168.2.96(ro,async)

домашняя директория пользователя samnick стала доступной в режиме только чтение для компьютера с IP 192.168.2.96. Все остальные компьютеры сети к этому разделу доступа не имеют.

Опции:

  • ro — права только на чтение. Можно и не указывать, так как она установлена по умолчанию.
  • rw — дает клиентам право на запись.
  • no_root_squash — по умолчанию пользователь root на клиентской машине не будет иметь доступа к разделяемой директории сервера. Этой опцией мы снимаем это ограничение. В целях безопасности этого лучше не делать.
  • noaccess — запрещает доступ к указанной директории. Может быть полезной, если перед этим вы задали доступ всем пользователям сети к определенной директории, и теперь хотите ограничить доступ в поддиректории лишь некоторым пользователям.

О других опция можно почитать тут:

http://www.toucheatout.net/informatics/linux/nfs-tuning-options

про /22 (маску подсети) читаем тут:

http://ru.wikipedia.org/wiki/CIDR сам оч чясто смотрю (запомнить никак не могу)

Теперь нужно перезапустить дабы все заработало nfs-kernel-server:

sudo /etc/init.d/nfs-kernel-server restart

в дальнейшем при изменении конфигурационного файла будет достаточно перечитать конфигурационный файл тут все просто

sudo exportfs -a

все радуемся сервер подняли и настроили теперь беремся за клиента

КЛИЕНТ

Установка и настройка NFS-клиента.

Установка:

sudo apt-get install portmap nfs-common

Монтирование:

создаем точку монтирования (папку к которой будет монтирована папка с сервера)

я лично предпочитаю все монтировать в каталог /media/

cd /media

так как каталог системный то нам необходимы права root`a

sudo mkdir hard

способов монтирования несколько одн это постоянно вручную (то есть после каждой перезагрузки) а второй это автоматически

первый вариант я допишу чуть позднее

вариант второй

Монтирование NFS ресурса автоматически

для этого отредактируем файл /etc/fstab (в нем описаны файловые системы, что куда и как монтировать)

sudo nano -w /etc/fstab

для прописывания нашего сетевого диска просто допишем в конец файла наши данные

192.168.2.98:/hard /media/hard nfs rw,hard,intr 0

  • 192.168.2.98:/hard -адрес_вашего_сервера:папака_на_вашем_сервере
  • /media/hard -/папка_куда_будем_монтировать
  • nfs rw,hard,intr 0 -опции монтирования (в подробности вдаваться не будем)

подробнее про монтирование можно прочитать тут http://rus-linux.net/lib.php?name=MyLDP/file-sys/fstab.html

после того как записали свои данные сохраняем файл конфигурации монтируем нашу NFS

sudo mount /media/hard

все готово теперь мы можем лицезреть наш диск в проводнике как простой физический диск

более глубже почитать про NFS можно тут http://www.linuxshare.ru/docs/HOWTO/NFS-HOWTO.html

материалы:

Статью написал samnick a.k.a Roman Paschenko

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.