Поиск по сайту:

Как настроить монтирование NFS в Ubuntu 12.04


Статус: устарело

В этой статье рассматривается версия Ubuntu, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением Ubuntu 12.04, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию Ubuntu:

  • Обновите Ubuntu до версии 14.04.
  • Обновление Ubuntu 14.04 до Ubuntu 16.04
  • Перенесите данные сервера в поддерживаемую версию.

Причина:

См. вместо этого:

О монтировании NFS (сетевая файловая система)

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

Настраивать

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

Для этого руководства требуется 2 сервера: один действует как сервер, а другой — как клиент. Сначала мы настроим серверную машину, а затем клиентскую. Следующие IP-адреса будут относиться к каждому из них:

Мастер: 12.34.56.789

Клиент: 12.33.44.555

Система должна быть настроена как root. Вы можете получить доступ к пользователю root, набрав

sudo su-

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

Шаг первый — загрузите необходимое программное обеспечение

Начните с использования apt-get для установки программ nfs.

apt-get install nfs-kernel-server portmap

Шаг второй — экспорт общего каталога

Следующий шаг — решить, какой каталог мы хотим использовать совместно с клиентским сервером. Затем выбранный каталог следует добавить в файл /etc/exports, в котором указывается как общий каталог, так и сведения о том, как он используется.

Предположим, мы хотим разделить два каталога: /home и /var/nfs.

Поскольку /var/nfs/ не существует, нам нужно сделать две вещи, прежде чем мы сможем его экспортировать.

Во-первых, нам нужно создать сам каталог:

mkdir /var/nfs/

Во-вторых, мы должны изменить владельца каталога на пользователя, никого и группу, но не группу. Они представляют пользователя по умолчанию, через которого клиенты могут получить доступ к каталогу, совместно используемому через NFS.

Идите вперед и выберите каталог:

chown nobody:nogroup /var/nfs

После выполнения этих шагов пришло время экспортировать каталоги на другой VPS:

nano /etc/exports

Добавьте следующие строки в конец файла, предоставив клиенту доступ к обоим каталогам:

/home           12.33.44.555(rw,sync,no_root_squash,no_subtree_check)
/var/nfs        12.33.44.555(rw,sync,no_subtree_check)

Эти настройки решают несколько задач:

  • rw: этот параметр позволяет клиентскому серверу как читать, так и записывать в общий каталог
  • синхронизация. Синхронизация подтверждает запросы к общему каталогу только после фиксации изменений.
  • no_subtree_check: этот параметр запрещает проверку поддерева. Когда общий каталог является подкаталогом более крупной файловой системы, nfs выполняет сканирование каждого каталога над ним, чтобы проверить его разрешения и сведения. Отключение проверки поддерева может повысить надежность NFS, но снизить безопасность.
  • no_root_squash: эта фраза позволяет пользователю root подключаться к указанному каталогу

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

exportfs -a

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

Шаг первый — загрузите необходимое программное обеспечение

Начните с использования apt-get для установки программ nfs.

apt-get install nfs-common portmap

Шаг второй — смонтируйте каталоги

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

mkdir -p /mnt/nfs/home
mkdir -p /mnt/nfs/var/nfs

Тогда иди и монтируй их

mount 12.34.56.789:/home /mnt/nfs/home
mount 12.34.56.789:/var/nfs /mnt/nfs/var/nfs

Вы можете использовать команду df -h, чтобы проверить, смонтированы ли каталоги. Вы увидите их последними в списке.

df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/sda                20G  948M   19G   5% /
udev                   119M  4.0K  119M   1% /dev
tmpfs                   49M  208K   49M   1% /run
none                   5.0M     0  5.0M   0% /run/lock
none                   122M     0  122M   0% /run/shm
12.34.56.789:/home      20G  948M   19G   5% /mnt/nfs/home
12.34.56.789:/var/nfs   20G  948M   19G   5% /mnt/nfs/var/nfs

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

mount

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

/dev/sda on / type ext4 (rw,errors=remount-ro,barrier=0) [DOROOT]
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
12.34.56.789:/home on /mnt/nfs/home type nfs (rw,vers=4,addr= 12.34.56.789,clientaddr=12.33.44.555)
12.34.56.789:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,vers=4,addr=12.34.56.78,clientaddr=12.33.44.555)

Тестирование монтирования NFS

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

Создайте файл в каждом каталоге, чтобы попробовать:

touch /mnt/nfs/home/example /mnt/nfs/var/nfs/example

После этого вы сможете найти файлы на сервере в каталогах /home и /var/nfs.

ls /home
ls /var/nfs/

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

nano /etc/fstab
12.34.56.789:/home  /mnt/nfs/home   nfs      auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0
12.34.56.789:/var/nfs  /mnt/nfs/var/nfs   nfs     auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0

Вы можете узнать больше об опциях fstab, набрав:

man nfs

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

Вы можете проверить смонтированные каталоги с помощью двух предыдущих команд:

df -h
mount

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

Если вы решите удалить каталог, вы можете размонтировать его с помощью команды umount:

cd
sudo umount /directory name

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

df -h

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