GNU/Linux >> Linux Esercitazione >  >> Cent OS

Il punto di montaggio NFSv4 mostra le proprietà errate come nessuno:nessuno in CentOS/RHEL

Il problema

Il montaggio di NFSv4 mostra in modo errato tutti i file con proprietà come "nessuno:nessuno “. Dal server client, la condivisione NFSv4 montata ha la proprietà per tutti i file e le directory elencati come nessuno:nessuno invece dell'utente effettivo che li possiede sul server NFSv4, o anche chi ha creato il nuovo file e directory.

Viene visualizzato anche il seguente errore in /var/log/messages:

nss_getpwnam: name ‘[email protected]’ does not map into domain 'localdomain'

Causa principale

In NFSv3 il nome utente e il nome_gruppo vengono mappati dal valore UID/GID, l'UID/GID dell'utente che crea la risorsa viene salvato sul server. Quando i server client vi accedono, i file /etc/passwd e /etc/gpasswd verranno controllati per vedere se l'id esiste e per quale utente verrà mappato. Se esiste un utente con lo stesso uid e gid, verrà mappato a quell'utente, altrimenti verrà mostrato il valore numerico.

In NFSv4 il concetto è utente@nomedominio, se non esiste una mappatura utente centralizzata, l'utente verrà mappato sull'utente predefinito nessuno o qualsiasi altro utente sia stato configurato in /etc/idmapd.conf.

Per prima cosa controlla la configurazione errata di /etc/imapd.conf file. Se apporti modifiche al file idmapd.conf, su CentOS/RHEL 6.5 e versioni successive il comando per ripulire le vecchie mappature è:

# nfsidmap -c

NFSv4 utilizza la mappatura ID per garantire che le autorizzazioni siano impostate correttamente sulle condivisioni esportate. Se i domini del server client e del server padre non corrispondono, le autorizzazioni vengono mappate su nessuno:nessuno.

La soluzione

1. Modificare /etc/idmapd.conf con il nome di dominio completo (FQDN) corretto, sia sul client che sul server di appartenenza. In questo esempio, il dominio corretto è "example.com", quindi la direttiva "Domain =" all'interno di /etc/idmapd.conf dovrebbe essere modificata in:

# vi /etc/idmapd.conf
Domain = oracle.com

2. Per rendere effettive le modifiche, riavviare il servizio rpcidmapd e rimontare il filesystem NFSv4:

# service rpcidmapd restart
# mount -o remount /nfs/mnt/point
Nota :È solo necessario riavviare il servizio rpc.idmapd sui sistemi in cui rpc.idmapd sta effettivamente eseguendo la mappatura id. Su RHEL 6.3 e NFS CLIENTS più recenti, le mappe sono memorizzate nel keyring del kernel e la mappatura id stessa viene eseguita dal programma /sbin/nfsidmap. Sui vecchi CLIENT NFS (RHEL 6.2 e precedenti) così come su tutti i SERVER NFS che eseguono RHEL, la mappatura id viene eseguita da rpc.idmapd. Assicurati che il client e il server dispongano di UID e GID corrispondenti. È un malinteso comune che gli UID e i GID possano essere diversi quando si utilizza NFSv4. Lo scopo della mappatura id è mappare id a un nome e viceversa. La mappatura degli ID non è intesa come sostituzione della gestione degli ID.

Su Red Hat Enterprise Linux 6, se le impostazioni di cui sopra sono state applicate e gli UID/GID sono abbinati su server e client e gli utenti non vengono ancora mappati su nessuno:nessuno quindi potrebbe essere necessaria una cancellazione della cache idmapd.

# nfsidmap -c
Nota :Il comando precedente è necessario solo su sistemi che utilizzano l'id mapper basato su keyring, ad es. CLIENT NFS con RHEL 6.3 e versioni successive. Su RHEL 6.2 e CLIENT NFS precedenti, nonché su tutti i SERVER NFS che eseguono RHEL, la cache viene svuotata al riavvio di rpc.idmapd. Un altro controllo, verifica se le impostazioni passwd:, shadow:e group:sono impostate correttamente nel file /etc/nsswitch.conf sia sul server principale che su quello client.

Disabilitazione mappatura ID

Per impostazione predefinita, i client e server NFS RHEL6.3 e più recenti disabilitano l'idmapping quando si utilizza l'autenticazione AUTH_SYS/UNIX abilitando le seguenti istruzioni booleane:

Server client NFS

# echo 'Y' > /sys/module/nfs/parameters/nfs4_disable_idmapping

Server padre NFS

# echo 'Y' > /sys/module/nfsd/parameters/nfs4_disable_idmapping

Risoluzione dei problemi

Se il piano di cui sopra non risolve il tuo problema, esegui i seguenti passaggi diagnostici:

1. È possibile abilitare il debug/verbosità modificando /etc/sysconfig/nfs :

# vi /etc/sysconfig/nfs
RPCIDMAPDARGS="-vvv"

2. Il seguente output viene mostrato in /var/log/messages quando il montaggio è terminato e il sistema mostra nessuno:nessuno come utente e permessi di gruppo su directory e file:

Jul 3 00:23:18 node1 rpc.idmapd[1874]: nss_getpwnam: name ‘[email protected]’ does not map into domain ‘localdomain’
Jun 3 00:26:54 node1 rpc.idmapd[1874]: nss_getpwnam: name ‘[email protected]’ does not map into domain ‘localdomain’

3. Raccogli un tcpdump del tentativo di montaggio:

# tcpdump -s0 -i {INTERFACE} host {NFS.SERVER.IP} -w /tmp/{SR_number}-$(hostname)-$(date +”%Y-%m-%d-%H-%M-%S”).pcap &


Cent OS
  1. Come installare Puppet su CentOS 8 / RHEL 8

  2. Installa ownCloud su CentOS 6 / RHEL 6

  3. Configura il server SysLog su CentOS 6 / RHEL 6

  4. Come configurare il server SysLog su CentOS 7 / RHEL 7

  5. Come configurare il server NFS su CentOS 7 / RHEL 7

Come installare il server Redis su CentOS 8 / RHEL 8

Come configurare il server NFS su CentOS 8 / RHEL 8

Come installare Zabbix Server 4.x su CentOS 6 / RHEL 6

Installa la GUI di Gnome su CentOS 7 / RHEL 7

Installa Nginx su CentOS 7 / RHEL 7

Come installare Zabbix Server 5.0/4.0 su CentOS 7/RHEL 7