Установка NFS монтирования на Ubuntu 12.04

Published by Leave your thoughts

Для установки монтирования NFC на Ubuntu 12.04 необходимы, по крайней мере, два виртуальных сервера. Машина, на которой размещена общая сеть, называется сервером, а подключающиеся к ней машины называются клиентами.

Этому руководству необходимо наличие двух серверов: один, действующий в качестве сервера, второй – в качестве клиента. Сначала мы установим сервер, затем клиент. Следующие IP адреса относятся к ним соответственно:

Master: 12.34.56.789
Client: 12.33.44.555

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

sudo su-

 Установка NFS-сервера

1. Загрузка необходимого программного обеспечения

Для установки программного обеспечения NFS используйте команду apt-get

apt-get install nfs-kernel-server portmap

2. Перемещение разделяемого каталога

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

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

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

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

mkdir /var/nfs/

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

Далее используйте утилиту chown на каталог:

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: эта команда позволяет клиенту просматривать разделяемый каталог и писать в нем.
  • sync: эта фраза подтверждает запросы к разделяемому каталогу только после совершения изменений.
  • no_subtree_check: эта команда предотвращает проверку поддерева. В случае если разделяемый каталог является подкаталогом большей файловой системы, NFS выполняет сканирование каждого каталога над ним в целях проверки его разрешения и подробностей. Отключение проверки поддерева может увеличить надежность NFS, но снижает уровень безопасности.
  • no_root_squash: эта фраза позволяет root подключаться к указанному каталогу.

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

exportfs –a

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

1. Загрузка необходимого программного обеспечения

Чтоб установить программное обеспечение NFS, используйте команду apt-get:

apt-get install nfs-common portmap

2. Монтирование каталогов

После того, как программы были загружены на клиент, создайте каталоги, содержащие разделяемые файлы 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 and /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

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

Tags: , , ,

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

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


*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>