NFS atau Network File System adalah protokol sistem file terdistribusi yang awalnya dikembangkan hanya oleh Sun Microsystems. Melalui NFS, Anda dapat mengizinkan sistem untuk berbagi direktori dan file dengan orang lain melalui jaringan. Dengan berbagi file NFS, pengguna dan bahkan program dapat mengakses informasi pada sistem jarak jauh hampir seolah-olah mereka berada di mesin lokal.
NFS beroperasi di lingkungan client-server di mana server bertanggung jawab untuk mengelola otentikasi, otorisasi, dan administrasi klien, serta untuk semua data yang dibagikan dalam sistem file tertentu. Setelah otorisasi, sejumlah klien dapat mengakses data bersama seolah-olah berada di penyimpanan internal mereka. Menyiapkan server NFS di sistem Ubuntu Anda sangat mudah. Anda hanya perlu melakukan beberapa instalasi dan konfigurasi yang diperlukan, baik di server maupun di mesin klien, dan Anda siap untuk pergi.
Dalam artikel ini kami akan menjelaskan langkah demi langkah cara menyiapkan server dan klien NFS yang memungkinkan Anda berbagi file dari satu sistem Ubuntu ke sistem Ubuntu lainnya.
Kami telah menjalankan perintah dan prosedur yang dijelaskan dalam artikel ini pada sistem Ubuntu 18.04 LTS dan baru-baru ini mengujinya dengan Ubuntu 20.04 baru. Karena kami menggunakan baris perintah Ubuntu, terminal, untuk melakukan semua operasi, Anda dapat membukanya dengan menggunakan tanda hubung sistem atau kombinasi tombol Ctrl+Alt+T.
Menyiapkan server host
Untuk mengatur sistem host untuk berbagi direktori, kita perlu menginstal server NFS Kernel di dalamnya, dan kemudian membuat dan mengekspor direktori yang kita inginkan untuk diakses oleh sistem klien. Harap ikuti langkah-langkah ini untuk mengatur sisi host dengan lancar:
Langkah 1:Instal Server Kernel NFS
Sebelum menginstal server NFS Kernel, kita perlu memperbarui indeks repositori sistem kita dengan indeks Internet melalui perintah apt berikut sebagai sudo:
$ sudo apt-get update
Perintah di atas memungkinkan kita menginstal versi perangkat lunak terbaru yang tersedia melalui repositori Ubuntu.
Sekarang, jalankan perintah berikut untuk menginstal NFS Kernel Server di sistem Anda:
$ sudo apt install nfs-kernel-server
Sistem akan meminta Anda dengan opsi Y/n untuk mengonfirmasi apakah Anda ingin melanjutkan penginstalan. Silakan masukkan Y lalu tekan Enter untuk melanjutkan, setelah itu perangkat lunak akan berhasil diinstal pada sistem Anda.
Langkah 2:Buat Direktori Ekspor
Direktori yang ingin kita bagi dengan sistem klien disebut direktori ekspor. Anda dapat menamainya sesuai pilihan Anda; di sini, kami membuat direktori ekspor dengan nama "folder bersama" di direktori mnt(mount) sistem kami.
Gunakan perintah berikut, dengan menentukan nama folder mount sesuai kebutuhan Anda, melalui perintah berikut sebagai root:
$ sudo mkdir -p /mnt/sharedfolder
Karena kami ingin semua klien mengakses direktori, kami akan menghapus izin terbatas dari folder ekspor melalui perintah berikut:
$ sudo chown nobody:nogroup /mnt/sharedfolder
$ sudo chmod 777 /mnt/sharedfolder
Sekarang semua pengguna dari semua grup di sistem klien akan dapat mengakses "folder bersama" kami.
Anda dapat membuat sub-folder sebanyak yang Anda inginkan dalam folder ekspor, untuk diakses oleh klien.
Langkah 3:Tetapkan akses server ke klien melalui file ekspor NFS
Setelah membuat folder ekspor, kita perlu memberikan izin kepada klien untuk mengakses mesin server host. Izin ini ditentukan melalui file ekspor yang terletak di folder /etc sistem Anda. Silakan gunakan perintah berikut untuk membuka file ini melalui editor Nano:
$ sudo nano /etc/exports
Mengedit file ini membutuhkan akses root; oleh karena itu Anda perlu menggunakan Sudo dengan perintah Anda. Anda juga dapat membuka file di salah satu editor teks favorit pribadi Anda.
Setelah Anda membuka file, Anda dapat mengizinkan akses ke:
- Satu klien dengan menambahkan baris berikut dalam file:
/mnt/sharedfolder clientIP(rw,sync,no_subtree_check)
- Beberapa klien dengan menambahkan baris berikut dalam file:
/mnt/sharedfolder client1IP(rw,sync,no_subtree_check)
/mnt/sharedfolder client2IP(rw,sync,no_subtree_check)
- Beberapa klien, dengan menentukan seluruh subnet yang dimiliki klien:
/mnt/sharedfolder subnetIP/24(rw,sync,no_subtree_check)
Dalam contoh ini, kami menentukan seluruh subnet dari semua klien yang ingin kami beri akses ke folder ekspor kami (folder bersama):
Tambahkan baris yang diperlukan ke file ekspor Anda, lalu simpan dengan menekan Ctrl+X, masukkan Y, lalu tekan Enter.
Izin "rw,sync,no_subtree_check" izin yang ditentukan dalam file ini berarti bahwa klien dapat melakukan:
- rw :operasi baca dan tulis
- sinkronisasi :tulis perubahan apa pun ke disk sebelum menerapkannya
- no_subtree_check :mencegah pemeriksaan subpohon
Langkah 4:Ekspor direktori bersama
Setelah melakukan semua konfigurasi di atas di sistem host, sekarang saatnya mengekspor direktori bersama melalui perintah berikut sebagai sudo:
$ sudo exportfs -a
Terakhir, untuk membuat semua konfigurasi berlaku, mulai ulang server Kernel NFS sebagai berikut:
$sudo systemctl restart nfs-kernel-server
Langkah 5:Buka firewall untuk klien
Langkah penting adalah memverifikasi bahwa firewall server terbuka untuk klien sehingga mereka dapat mengakses konten yang dibagikan. Perintah berikut akan mengkonfigurasi firewall untuk memberikan akses ke klien melalui NFS:
$ sudo ufw allow from [clientIP or clientSubnetIP] to any port nfs
Dalam contoh kami, kami memberikan akses ke seluruh subnet mesin klien melalui perintah berikut:
$ sudo ufw allow from 192.168.100/24 to any port nfs
Sekarang ketika Anda memeriksa status firewall Ubuntu Anda melalui perintah berikut, Anda akan dapat melihat status Tindakan sebagai "Izinkan" untuk IP klien.
$ sudo ufw status
Server host Anda sekarang siap untuk mengekspor folder bersama ke klien yang ditentukan melalui Server Kernel NFS.
Mengonfigurasi Mesin Klien
Sekarang saatnya untuk membuat beberapa konfigurasi sederhana ke mesin klien, sehingga folder bersama dari host dapat dipasang ke klien dan kemudian diakses dengan lancar.
Langkah 1:Instal NFS Common
Sebelum menginstal aplikasi NFS Common, kita perlu memperbarui indeks repositori sistem kita dengan indeks Internet melalui perintah apt berikut sebagai sudo:
$ sudo apt-get update
Perintah di atas memungkinkan kita menginstal versi perangkat lunak terbaru yang tersedia melalui repositori Ubuntu.
Sekarang, jalankan perintah berikut untuk menginstal klien NFS Common di sistem Anda:
$ sudo apt-get install nfs-common
Sistem akan meminta Anda dengan opsi Y/n untuk mengonfirmasi apakah Anda ingin melanjutkan penginstalan. Silakan masukkan Y lalu tekan Enter untuk melanjutkan, setelah itu perangkat lunak akan berhasil diinstal pada sistem Anda.
Langkah 2:Buat titik pemasangan untuk folder bersama host NFS
Sistem klien Anda memerlukan direktori tempat semua konten yang dibagikan oleh server host di folder ekspor dapat diakses. Anda dapat membuat folder ini di mana saja di sistem Anda. Kami membuat folder mount di direktori mnt mesin klien kami:
$ sudo mkdir -p /mnt/sharedfolder_client
Langkah 3:Pasang direktori bersama pada klien
Folder yang Anda buat pada langkah di atas sama seperti folder lain di sistem Anda kecuali Anda memasang direktori bersama dari host Anda ke folder yang baru dibuat ini.
Gunakan perintah berikut untuk memasang folder bersama dari host ke folder pemasangan pada klien:
$ sudo mount serverIP:/exportFolder_server /mnt/mountfolder_client
Dalam contoh kami, kami menjalankan perintah berikut untuk mengekspor "folder bersama" kami dari server ke folder mount "sharedfolder_client" pada mesin klien:
$ sudo mount 192.168.100.5:/mnt/sharedfolder /mnt/sharedfolder_client
Langkah 4:Uji koneksi
Silakan buat atau simpan file di folder ekspor server host NFS. Sekarang, buka folder mount pada mesin klien; Anda seharusnya dapat melihat file yang sama yang dibagikan dan dapat diakses di folder ini.
Kesimpulan
Menyiapkan lingkungan client-server NFS pada sistem Ubuntu adalah tugas yang mudah. Melalui artikel ini, Anda mempelajari cara menginstal paket NFS yang diperlukan di server dan klien. Anda juga mempelajari cara mengonfigurasi server NFS dan mesin klien sehingga folder dapat dibagikan dan kemudian diakses dengan lancar tanpa firewall atau kesalahan terkait izin. Sekarang Anda dapat dengan mudah berbagi konten dari satu sistem Ubuntu ke sistem lainnya menggunakan protokol NFS.