NFS eller Network File System är ett distribuerat filprotokoll som låter dig dela en fil eller till och med en hel katalog med andra över ett nätverk. Det skapar en server-klientmiljö, där en klientmaskin kan komma åt data som delas av NFS-servern som om de var lokalt monterade.
I den här handledningen kommer vi att gå igenom detaljerade installationsinstruktioner för att konfigurera NFS Server på CentOS. Steg-för-steg-guiden kommer att täcka hur du ställer in NFS-servern på serversidan såväl som på klientsidan. Låt oss börja.
Konfigurera NFS-server på CentOS
Vår testmiljö
NFS-serverns IP-adress: 10.0.2.15 NFS-klientens IP-adress: 10.0.2.16
För att börja, här är en steg-för-steg-guide för att ställa in NFS-servern på ditt CentOS 8-system.
Steg 1: Installera NFS-servern
Först måste vi installera nfs-utils på vårt system. Det är NFS-serverpaketet som fungerar som NFS-demon. För att installera det måste du ange följande kommando i terminalen:
$ sudo dnf installera nfs-utils -y
Vi kör en ren installation av CentOS 8 och nfs-utils är redan installerat på vårt system. Det kan också vara detsamma på din maskin. Om inte, kommer paketet att installeras, varefter vi går vidare till nästa steg.
Nu när du har nfs-utils installerat på ditt system måste du starta nfs-server-tjänsten, konfigurera den så att den startar automatiskt vid systemstart och slutligen verifiera dess status för att kontrollera om allt fungerar som avsett.
För att göra detta måste du ange följande kommandon i din terminal:
$ sudo systemctl starta nfs-server.tjänsten $ sudo systemctl aktiverar nfs-server.tjänsten $ sudo systemctl status nfs-server.service
Utgången ska likna, som visas i bilden nedan:
De aktiva sign betyder att NFS-servern fungerar perfekt. Du bör notera att alla tillhörande tjänster som är nödvändiga för att köra en NFS-server eller montering av NFS-aktier också aktiveras via ovanstående kommando. Dessa tjänster inkluderar nfsd, nfs-idmapd, rpcbind, rpc.monterad, låst, RPC.statd, rpc.rquotad och rpc.idmapd.
Om du är intresserad är här adressen för NFS-serverkonfigurationsfilerna:
- / etc / nfs.conf - Det här är huvudkonfigurationsfilen för NFS-demonen och verktygen.
- / etc / nfsmount.conf - Detta är konfigurationsfilen för NFS-montering.
Steg 2: Skapa och exportera ett NFS-filsystem
Nu när du har ställt in din NFS-server är det dags att skapa ett delat filsystem på servern som kommer att vara tillgänglig från klientsystemet. För denna handledning skapar vi katalogen / mnt / nfs_share / docs med följande kommando:
$ sudo mkdir -p / mnt / nfs_share / docs
Därefter konfigurerar vi katalogägarskapet med följande kommando för att undvika filbegränsningar på den delade NFS-katalogen:
$ sudo chown -R ingen: / mnt / nfs_share / docs
Detta gör det möjligt för klientsystemet att skapa filer i den delade katalogen utan att ha några tillståndsproblem. Om du vill aktivera alla behörigheter - läs, skriv och kör till den delade NFS-mappen kan du också göra det med följande kommando:
$ sudo chmod -R 777 / mnt / nfs_share / docs
För att ändringarna ska kunna ske måste du starta om NFS-demonen med det här kommandot:
$ sudo systemctl startar om nfs-utils.service
Det är dags att exportera det så att klientsystemet kan få tillgång till det. För att göra detta måste vi redigera filen / etc / export. När du redigerar filen kan du bara ge åtkomst till en enskild klient, eller flera klienter, liksom hela undernätet.
Om du vill ge åtkomst till hela undernätet måste du använda följande syntax:
/ mnt / nfs_share / docs undernät (rw, sync, no_all_squash, root_squash)
Här “undernät”Måste ersättas med systemets undernät. Annars kan du ange flera klienter åt gången, på en separat rad med den här syntaxen:
/ mnt / nfs_share / docs client_IP_1 (rw, sync, no_all_squash, root_squash)
/ mnt / nfs_share / docs client_IP_1 (rw, sync, no_all_squash, root_squash)
Här är en titt på de andra parametrarna som används i kommandot och vad de betyder:
- rw - Denna parameter ger läs- och skrivbehörighet till den delade NFS-filen / mappen.
- sync - Denna parameter kräver att ändringarna på disken görs först innan de tillämpas.
- no_all_squash - Denna parameter kartlägger alla UID: er och GID: er från klientförfrågningarna som är identiska med UIDS och GID: er på NFS-servern.
- root_squash - Parametern mappar förfrågningar från rotanvändaren på klientsidan till ett anonymt UID / GID.
Med vår inställning ger vi åtkomst till vår klientmaskin med IP 10.0.2.16. För att göra detta måste du först öppna filen / etc / exports med det här kommandot.
$ sudo vi / etc / export
Därefter måste du lägga till följande rad inuti filen:
/ mnt / nfs_share / docs 10.0.2.16 (rw, sync, no_all_squash, root_squash)
När du är klar sparar du och avslutar filen. Bekräfta nu med hjälp av kattkommandot att posten registrerades. För att göra detta, ange följande kommando i din terminal:
katt / etc / export
Du bör se något som liknar följande bild:
Nu är det dags att vi exporterar den ovan skapade mappen så att den blir tillgänglig för klientsystem. För att göra detta måste vi använda följande kommando:
$ sudo exportfs -arv
Här betyder alternativet -a det alla kataloger kommer att exporteras. Alternativet -r kommer återexport alla kataloger. Och slutligen kommer alternativet -v att visa en detaljerad utdata.
Men bara för att vara säker på att exportlistan är okej, kör vi också det här kommandot:
$ sudo exportfs -s
Och det är allt! Vi har framgångsrikt skapat och exporterat våra delade NFS-filer. Nu är det dags att gå vidare till nästa steg.
Steg 3: Ställ in brandväggsregler för NFS-servern
Vår NFS-serverinställning är klar. Det enda som återstår att göra är att konfigurera brandväggsreglerna så att de tillåter NFS-tjänster.
Detta inkluderar följande tre tjänster - nfs, rpc-bind och mountd. Och för att tillåta dessa tjänster genom brandväggen måste vi ange följande kommandon i terminalen:
$ sudo firewall-cmd --permanent --add-service = nfs $ sudo firewall-cmd --permanent --add-service = rpc-bind $ sudo firewall-cmd --permanent --add-service = mountd
När du är klar, se till att ladda om brandväggen så att ändringarna träder i kraft. För att ladda om brandväggen, använd detta kommando:
$ sudo firewall-cmd --reload
Med konfigurerad brandvägg är det dags att konfigurera NFS-klientsystemet.
Så här ställer du in NFS-klientsystemet på CentOS 8
Här är ett steg för steg-förfarande för hur du ställer in NFS-klientsystemet på CentOS 8.
Steg 1: Installera NFS-klientpaket
Först måste vi installera nödvändiga paket för att komma åt NFS-delningsmappen som finns på NFS-servern. För att göra detta, ange följande kommando i terminalen:
$ sudo dnf installera nfs-utils nfs4-acl-tools -y
Därefter visar vi den monterade NFS-delade mappen på servern med det här kommandot:
$ showmount -e 10.0.2.15
Steg 2: Montera fjärranslutna NFS-delning på servern
Vi måste skapa en katalog som vi använder för att montera NFS-resursen. Använd följande kommando för att göra detta:
$ sudo mkdir p / mnt / client_share
För att montera den fjärranslutna NFS-katalogen som finns på det lokala klientsystemet måste vi använda följande kommando.
$ sudo mount -t nfs 10.0.2.15: / mnt / nfs_shares / docs / mnt / client_share
Var 10.0.2.15 är NFS-serverns IP-adress. För att verifiera att NFS-fjärrdelningen har monterats kan du använda följande kommando:
$ sudo mount | grep -i nfs
Slutligen, för att göra monteringsandelen stabil även efter en omstart måste vi redigera filen / etc / fstab och sedan lägga till följande post:
192.168.2.102: / mnt / nfs_shares / docs / mnt / client_share nfs standard 0 0
När du är klar sparar du och stänger filen så är du klar.
Steg 3: Testa NFS Server & Client Setup
Efter att ha gått igenom alla ovanstående steg har vi framgångsrikt konfigurerat en klient-serveranslutning med NFS. Vi måste dock kontrollera om installationen fungerar innan vi kan kalla det en dag.
För att göra detta måste vi först skapa en testfil i NFS-serverns delarkatalog och sedan kontrollera om den finns i klientens NFS-monterade katalog. Så låt oss först skapa testfilen i NFS-serverkatalogen med följande kommando:
$ sudo touch / mnt / nfs_shares / docs / server_nfs_file.Text
Gå vidare till klientsidan och ange detta kommando i terminalen för att kontrollera om testfilen är tillgänglig.
$ ls -l / mnt / client_share /
Om du ser filen betyder det att NFS-anslutningen fungerar korrekt.
Slutsats
Det var vår djupgående guide om hur man ställer in NFS-servern på CentOS 8. Vi hoppas att du tyckte att den här guiden var till nytta och att den hjälpte dig att dela filer och kataloger med dina klientsystem. Du kanske är intresserad av att konfigurera en FTP-server på din CentOS-maskin.