Руководство по монтированию NFS в Ubuntu: полное пошаговое руководство по настройке

watch 1m, 3s
views 2

11:01, 20.08.2026

Содержание статьи
arrow

  • Что такое NFS и зачем его использовать в Ubuntu?
  • Понимание модели «клиент-сервер» в NFS
  • Как настроить сервер NFS в Ubuntu (установка и настройка)
  • Шаг 1: Установка сервера NFS в Ubuntu
  • Настройка на стороне клиента
  • Шаг 2: Создание и настройка общих каталогов на хосте
  • Шаг 3: Предоставление доступа клиентским компьютерам
  • Шаг 4: Экспорт общего каталога через NFS
  • Шаг 5: Откройте доступ через брандмауэр для трафика NFS
  • Устранение распространённых проблем с монтированием NFS
  • 1. Не удаётся получить доступ к файлам в смонтированном ресурсе NFS
  • 2. Сбой при монтировании NFS-ресурса
  • Ошибка: отказ в доступе со стороны сервера
  • 3. Узкие места в производительности NFS и способы их устранения
  • Рекомендации по надежной настройке NFS
  • Часто задаваемые вопросы
  • Как проверить, установлен ли NFS в Ubuntu?
  • Можно ли смонтировать общий ресурс NFS на компьютере с Windows?
  • Почему мой NFS-монтируемый ресурс в Ubuntu доступен только для чтения?
  • Как перезапустить службу NFS в Ubuntu?
  • Как принудительно размонтировать NFS?
  • Поддерживает ли NFS шифрование?
  • Как просмотреть активные NFS-соединения?

Что такое NFS и зачем его использовать в Ubuntu?

Сетевая файловая система (NFS) — это протокол, позволяющий совместно использовать каталоги и файлы между системами Linux по сети. NFS особенно полезен, когда требуется централизованное хранилище файлов, доступное с нескольких компьютеров, что часто встречается в корпоративных средах, кластерах разработчиков или домашних лабораториях. Благодаря встроенной поддержке в Ubuntu NFS предлагает лёгкий, быстрый и простой в настройке способ управления сетевым доступом к файлам.

Понимание модели «клиент-сервер» в NFS

NFS работает по архитектуре «клиент-сервер». Сервер экспортирует (предоставляет общий доступ) каталоги, а клиент монтирует эти каталоги локально, взаимодействуя с ними так, как если бы они были частью локальной файловой системы. Такая архитектура делает NFS идеальным решением для распределенных вычислительных сред, таких как вычислительные кластеры или конвейеры CI/CD на базе Docker.

Как настроить сервер NFS в Ubuntu (установка и настройка)

Шаг 1: Установка сервера NFS в Ubuntu

Для начала установите пакет сервера NFS для ядра:

sudo apt update sudo apt install nfs-kernel-server

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

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

На клиентских машинах установите утилиты NFS-клиента:

sudo apt update sudo apt install nfs-common

Шаг 2: Создание и настройка общих каталогов на хосте

Допустим, вы хотите открыть общий доступ к /mnt/shared. Сначала создайте каталог и установите правильное владение:

sudo mkdir -p /mnt/shared sudo chown nobody:nogroup /mnt/shared

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

Шаг 3: Предоставление доступа клиентским компьютерам

Отредактируйте файл /etc/exports , чтобы определить, какие клиенты могут получить доступ к каким каталогам:

/mnt/shared 192.168.1.0/24(rw,sync,no_subtree_check)

Это позволяет всей подсети 192.168.1.x монтировать каталог с правами чтения и записи.

Шаг 4: Экспорт общего каталога через NFS

После редактирования /etc/exports перезагрузите таблицу экспорта:

sudo exportfs -a

Убедитесь, что служба NFS включена и работает:

sudo systemctl enable nfs-server sudo systemctl start nfs-server

Шаг 5: Откройте доступ через брандмауэр для трафика NFS

Используйте UFW или iptables , чтобы разрешить порты, связанные с NFS (2049 для NFSv4):

sudo ufw allow from 192.168.1.0/24 to any port nfs sudo ufw reload

Устранение распространённых проблем с монтированием NFS

1. Не удаётся получить доступ к файлам в смонтированном ресурсе NFS

Убедитесь, что каталог ресурса NFS имеет правильные права доступа. Если владельцем является nobody:nogroup, измените права по необходимости с помощью команды chown или списков доступа (ACL) для более точного управления.

2. Сбой при монтировании NFS-ресурса

Убедитесь, что сервер доступен, а каталог экспортирован. Попробуйте:

sudo showmount -e <nfs-server-ip>

Ошибка: отказ в доступе со стороны сервера

Ещё раз проверьте настройки подсети или IP-адресов в файле /etc/exports. Несоответствие приведёт к ошибке «Permission Denied» («Доступ запрещён»).

3. Узкие места в производительности NFS и способы их устранения

Производительность может снижаться из-за режима синхронизации . Используйте async для повышения скорости, но только если вы готовы принять некоторый риск потери данных в случае сбоя системы. Рассмотрите возможность настройки параметров монтирования, таких как rsize, wsize, а также использование NFSv4 для повышения производительности и уменьшения количества открытых портов.

Рекомендации по надежной настройке NFS

Для надежной настройки NFS можно руководствоваться следующими принципами:

  • Используйте статические IP-адреса или записи DNS для всех клиентов в /etc/exports.
  • Отдавайте предпочтение NFSv4 для повышения безопасности и сокращения количества используемых портов.
  • Обеспечьте безопасность вашей конфигурации с помощью правил брандмауэра и средств контроля доступа пользователей.
  • Контролируйте работу вашего NFS-сервера с помощью таких инструментов, как nfsstat и iotop.
  • Избегайте экспорта каталогов со сложной структурой прав доступа (например, /home), если вы не обеспечиваете согласованность идентификаторов пользователей между узлами.

Часто задаваемые вопросы

Как проверить, установлен ли NFS в Ubuntu?

Запустите dpkg -l | grep nfs или проверьте службы с помощью systemctl status nfs-server.

Можно ли смонтировать общий ресурс NFS на компьютере с Windows?

Да, Windows 10 Pro и более поздние версии поддерживают функции клиента NFS через дополнительную функцию «Services for NFS».

Почему мой NFS-монтируемый ресурс в Ubuntu доступен только для чтения?

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

Как перезапустить службу NFS в Ubuntu?

Используйте: sudo systemctl restart nfs-server.

Как принудительно размонтировать NFS?

Выполните: sudo umount -f /mount/point.

Поддерживает ли NFS шифрование?

Изначально — нет. Для безопасной передачи данных используйте NFS через VPN или настройте его с использованием Kerberos (NFSv4 с параметром sec=krb5p).

Как просмотреть активные NFS-соединения?

Используйте ss -tulpn | grep nfs, netstat, или проверьте с помощью nfsstat и /var/log/syslog.

Поделиться

Была ли эта статья полезной для вас?

Популярные предложения VPS

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 8192 Linux

115.5

При оплате за год

-10.8%

CPU
CPU
1 Xeon Core
RAM
RAM
1 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
300 GB
wKVM-SSD 1024 HK Windows

17

При оплате за год

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
30 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 2048 Linux

30.3

При оплате за год

-5.3%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
1 TB
wKVM-SSD 1024 Metered Windows

15.67

При оплате за год

-5.6%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
60 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 2048 Windows

13.7

При оплате за год

-20.5%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
150 GB SSD
Bandwidth
Bandwidth
10 TB
KVM-SSD 16384 Metered Linux

95

При оплате за год

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
400 GB HDD
Bandwidth
Bandwidth
Unlimited
KVM-HDD 16384 Linux

50

При оплате за год

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 2048 Windows

10.23

При оплате за год

-12%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
20 GB SSD
Bandwidth
Bandwidth
1 TB
KVM-SSD 1024 Metered Linux

8.33

При оплате за год

-7.9%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
200 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 8192 Windows

26.08

При оплате за год

Другие статьи на эту тему

cookie

Принять файлы cookie и политику конфиденциальности?

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