Як розмістити спільні файли NFS на Linux

| | 0 Comments| 4:43 AM
Categories:

Якщо ви помірно кваліфікований користувач Linux або новачок у роботі з сервером, основним способом доступу до файлів є Samba. Багато хто робить це через те, наскільки складною здається NFS. У порівнянні з чимось на кшталт Samba чи навіть FTP є багато кроків і дрібниць, які вам потрібно зробити. Той факт, що багато користувачів Linux переходять через NFS, є справжнім соромом, оскільки він має багато чудових функцій і використання. Ось чому ми вирішили усунути труднощі з налаштуванням сервера NFS. Ми розберемо, як можна розміщувати спільні файли NFS в Linux, і детально пояснимо, як можна запустити сервер.

Установка

Як правило, кожен дистрибутив Linux має однакові інструменти NFS з деякими відмінностями. Щоб все запрацювало, відкрийте термінал і встановіть у свою систему наступні пакунки. Ці пакети встановлять технологію за замовчуванням, необхідну для запуску сервера, створюють файли конфігурації за замовчуванням, а іноді навіть налаштовують інші речі.

Ubuntu

sudo apt install nfs-kernel-server

Fedora

sudo dnf install nfs-utils system-config-nfs

Arch Linux

sudo pacman -S nfs-utils

Debian

sudo apt-get install nfs-kernel-server

OpenSUSE

sudo zypper install nfs-kernel-server

Інші Linux

Файлова система NFS, клієнт і сервер не є новою технологією. В результаті ви легко зможете змусити це працювати практично в будь-якому дистрибутиві Linux. Якщо ваша операційна система не була охоплена, подумайте про пошук «nfs utils» у диспетчері пакунків або звернувшись до Wiki вашої операційної системи.

  Як використовувати та встановити FlatPak на Linux

Сервіси Systemd

Налаштування сервера NFS може відрізнятися, залежно від того, який дистрибутив Linux ви використовуєте. Наприклад, якщо ви встановлюєте пакет NFS Ubuntu або Debian, служби systemd автоматично встановлюються та налаштовуються для вас. Однак у таких випадках, як Arch Linux, SUSE або Fedora тощо, вам потрібно буде зробити це вручну. Ось як увімкнути ці служби.

Якщо ви використовуєте Arch Linux, відкрийте SUSE або Fedora (або будь-який дистрибутив Linux, який автоматично не налаштовує служби systemd для NFS), відкрийте термінал і введіть ці команди.

sudo systemctl enable rpcbind
sudo systemctl enable nfs-server 

sudo service rpcbind start 

sudo service nfs-server start

Конфігурація

Встановлюючи пакети NFS, сервер «налаштовується», але це не означає, що користувачі ще можуть отримати до нього доступ. Для цього користувачам потрібно налаштувати експорт, розташування файлів тощо. Щоб почати, отримайте кореневу оболонку в терміналі. Зробіть це за допомогою: sudo -s

Експортований файл може обробляти будь-який тип каталогу. Насправді користувачі можуть легко записати пряме розташування в папку, до якої вони хочуть поділитися, прямо у файловій системі. Проблема в тому, що це величезний ризик для безпеки. Набагато безпечніше взяти вміст одного каталогу і прив’язати його до іншого. Це гарантує, що дозволи для папок і каталогів у папці /srv/ не потрібно змінювати, щоб усе було безпечним.

  Як використовувати команду fd в Linux

Наприклад, щоб налаштувати спільний доступ NFS для папки «Зображення» користувача, виконайте такі дії:

mkdir -p /srv/nfs/pictures /home/username/Pictures/

mount --bind /home/username/Pictures/ /srv/nfs/pictures/

Використовуйте наведений вище приклад, щоб зробити стільки кріплень, скільки забажаєте. Майте на увазі, що не потрібно монтувати каталоги з домашніх папок. Замість цього використовуйте цей приклад і будьте креативними.

Вирішивши все це, запустіть ці команди, щоб кріплення закріпилися:

echo '#NFS Pictures Bind Mount' >> /etc/fstab
echo '/home/username/Pictures/ /srv/nfs/pictures/ none bind 0 0' >> /etc/fstab

Примітка: вам потрібно буде змінити команди echo, щоб вони відповідали вашим власним монтуванням.

Після налаштування монтування настав час налаштувати файл конфігурації експорту. Файл експорту дуже важливий, оскільки саме тут вам потрібно буде вказати кожен спільний файл для використання NFS.

nano /etc/exports

Усередині файлу експорту перейдіть до самого низу та напишіть наступне:

/srv/nfs/pictures/ 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)

Не соромтеся писати стільки рядків, скільки хочете. Майте на увазі, що для кожного спільного ресурсу потрібне власне монтування, запис fstab і запис /etc/exports.

  Як переключити ядра в Manjaro Linux

Примітка: збережіть файл експорту за допомогою CTRL + O

Оновлення змін

Сервер NFS запущено, файли знаходяться в потрібному місці, і все готово до використання. Залишилося лише оновити зміни, внесені до файлу експорту. Це важливий крок, оскільки сервер NFS не буде оновлювати зміни, внесені під час роботи. Внесіть зміни за допомогою: exportfs -rav

Якщо потрібно, перезапустіть процес сервера в самому systemd за допомогою команди systemctl restart.

sudo systemctl restart nfs-server.

Висновок

Мережева файлова система є корисним інструментом. З його допомогою користувачі можуть легко брати віддалені файли та каталоги та працювати з ними локально, як із фізичним жорстким диском. Це чудово, оскільки конкуруючі інструменти мережевої файлової системи не дають користувачам такої ж повсюдності та свободи.

Незважаючи на його корисність, більшість людей вважають за краще використовувати Samba. Це зрозуміло, оскільки в порівнянні з Samba, NFS може бути трохи дратівливим і втомливим для налаштування. Однак, якщо ви маєте справу зі складним процесом налаштування, це того варте набагато більше.