NFS start

Материал из ALT Linux Wiki
Merge-arrow.svg
Необходимо перенести содержимое этой статьи в статью NFS
Вы можете помочь проекту, объединив их.


Примечание: Обратите внимание, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.

Network File System (NFS) — протокол сетевого доступа к файловым системам, первоначально разработан Sun Microsystems в 1984 году. Позволяет монтировать (подключать) удалённые файловые системы через сеть.

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

Примечание: В примере у нас адрес сервера 10.0.2.6, адрес сети 10.0.2.0

Установка сервера:

# apt-get install nfs-server

Запуск службы:

# systemctl enable --now nfs

Настройка подключаемых каталогов:

  1. Первым делом, нужно создать каталог, который мы хотим расшарить:
    # mkdir /home/share
  2. После этого нужно отредактировать файл /etc/exports, в котором хранятся настройки каталогов NFS.
    # mcedit /etc/exports
  3. В файле /etc/exports следует указать экспортируемые каталоги (каталоги, которые будет разрешено монтировать с других машин) и IP, с которых будет доступ:
    /home/share 10.0.2.0/24(rw,subtree_check)
    Примечание: Между адресом и скобками с параметрами не должно быть пробела
    - /home/share - каталог для общего доступа
    - 10.0.2.0/24 - адрес сети, для которой разрешен доступ
    - (rw) - параметры доступа
    - без subtree_check/no_subtree_check доступа не будет
  4. После внесения изменений в файл /etc/exports, для применения параметров, необходимо перезапустить сервер:
    # systemctl restart nfs.service
  5. Проверить список экспортируемых файловых систем можно, выполнив команду:
    # exportfs
    Вывод:
    /home/share 10.0.2.0/24

Параметры доступа

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

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

Команды exportfs

# exportfs -u 10.0.2.0/24:/home/share - удаляет из файла конфигурации все или указанные каталоги
# exportfs -a - экспорт или отзыв каталогов из экспорта, в зависимости от указанных опций
# exportfs -r - применение параметров после изменения файла конфигурации
# exportfs -i - игнорирование /etc/exports и использование только опций командной строки
# exportfs -o - отзыв из экспорта всех предоставленных в общий доступ каталогов
# exportfs -v - детальный вывод информации

Подключение клиента

Консоль

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

$ su -
# mkdir /mnt/share
# mount 10.0.2.6:/home/share /mnt/share

Fstab

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

$ su -
# mkdir /mnt/Share
# mcedit /etc/fstab

Вставляем следующую строчку:

10.0.2.6:/home/share /mnt/Share nfs rw 0 0

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