Посібник з підключення NFS в Ubuntu: повне покрокове керівництво з налаштування
10:58, 20.08.2026
Що таке 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. Невідповідність призведе до повідомлення «Доступ заборонено».
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.