Le modifiche del server NFS nel file / etc / exports richiedono il riavvio del servizio?


30

Ho un server NFSv4 (su RHELv6.4) e client NFS su (CentOSv6.4). Diciamo in /etc/exports:

/shares/website1      <ip-client-1>(rw,sync,no_subtree_check,no_root_squash)
/shares/website2      <ip-client-2>(rw,sync,no_subtree_check,no_root_squash)

Quindi ogni volta che ho apportato alcune modifiche (diciamo SOLO le modifiche per client-2), ad esempio:

/shares/website1      <ip-client-1>(rw,sync,no_subtree_check,no_root_squash)
/shares/xxxxxxxx      <ip-client-2>(rw,sync,no_subtree_check,no_root_squash)

Allora io sempre service nfs restart. E poi alla fine .. il mount-point su nonclient-1 ha risposto (Impossibile aprire i suoi file, ecc . ) . (Perché? A causa di RIAVVIO?)

Ma come descritto, ho modificato la linea client-2solo per . Tutto per il client-1è ancora intatto.

Quindi le mie domande qui sono:

  • Ogni volta che modifico il /etc/exports, dovrei restartil servizio o cosa?
  • Se io service nfs restart, perché alla fine il Mount-Point su altri client è interessato? (Per quei computer client senza modifiche apportate /etc/exportsper loro.)

Ciò significa che, ogni volta che apporterò le modifiche /etc/exportse restartil servizio, dovrò andare a MONTARE nuovamente le directory su OGNI CLIENTE nell'elenco di esportazione, per far funzionare nuovamente i mount point.

Qualche idea, per favore?


1
Dopo aver modificato /etc/exports, provare con, come root, exportfs -ra. Vedi man exportfsper i dettagli.
Giovanni 1024,

Quindi non avrei nfs restartpiù bisogno ?
夏 期 劇場

Risposte:


53

Non è necessario riavviare NFS ogni volta che si modifica /etc/exports. Tutto ciò che serve è emettere il comando appropriato dopo aver modificato il /etc/exportsfile:

$ exportfs -ra

Estratto dalla documentazione ufficiale di Red Hat intitolata: 21.7. Il file di configurazione / etc / exports .

estratto

Se eseguito manualmente, il comando / usr / sbin / exportfs consente all'utente root di esportare o annullare l'esportazione selettivamente delle directory senza riavviare il servizio NFS. Quando vengono fornite le opzioni appropriate, il comando / usr / sbin / exportfs scrive i file system esportati in / var / lib / nfs / xtab. Poiché rpc.mountd si riferisce al file xtab quando si decidono i privilegi di accesso a un file system, le modifiche all'elenco dei file system esportati hanno effetto immediato.

Leggi anche la exportfspagina man per maggiori dettagli, in particolare la sezione "DESCRIPTION" che spiega tutto questo e altro.

DESCRIZIONE Un server NFS mantiene una tabella di file system fisici locali accessibili ai client NFS. Ogni file system in questa tabella viene chiamato abbreviato file system o export.

  The exportfs command maintains the current table of exports for the NFS 
    server.  The master export table is kept in  a  file  named
    /var/lib/nfs/etab.  This file is read by rpc.mountd when a client sends 
    an NFS MOUNT request.

  Normally  the  master  export  table  is  initialized  with the contents 
    of /etc/exports and files under /etc/exports.d by invoking exportfs -a.  
    However, a system administrator can choose to add or delete exports 
    without modifying  /etc/exports  or  files  under /etc/exports.d by 
    using the exportfs command.

Anche prendere nota delle opzioni che stiamo usando, -ra:

   -a     Export or unexport all directories.
   -r     Reexport all directories, synchronizing /var/lib/nfs/etab with 
          /etc/exports and files  under  /etc/exports.d.   This  option
          removes  entries  in  /var/lib/nfs/etab which have been deleted 
          from /etc/exports or files under /etc/exports.d, and removes
          any entries from the kernel export table which are no longer
          valid.

C'è qualche vantaggio con -raanziché solo -r?
Mvorisek,

@Mvorisek - è esplicito.
slm
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.