Estou servindo /exports/home
(diretórios home) e /exports/pkgsrc
(repositório pkgsrc do NetBSD) de um servidor NFSv3 do OpenBSD executando o OpenBSD 6.0-release para uma rede interna de hosts OpenBSD e 16.10 e um host Solaris 11.3.
Isso funciona bem para os diretórios home no Ubuntu e no OpenBSD, porque os UIDs e os GIDs dos usuários são os mesmos em ambos os sistemas.
No Solaris, tive que alterar manualmente os UIDs, já que o Solaris começa a alocar UIDs em 100 em vez de em 1000. Acho que é possível fazer isso manualmente para usuários que adicionei, mas não para outros UIDs de sistema padrão / GIDs.
Para o pkgsrc
export, eu gostaria que o mount aparecesse como root:src
no Ubuntu e root:wsrc
no OpenBSD, mas o src
group é o GID 40 no Ubuntu, enquanto o wsrc
group GID 9 no OpenBSD (9 é news
no Ubuntu). No Solaris, o GID 9 pertence ao grupo nuucp
.
É possível executar um remapeamento de (pelo menos) o GID entre o cliente e o servidor ao montar um compartilhamento NFSv3? Eu realmente não quero ter que sincronizar manualmente UIDs e GIDs que eu não adicionei a mim mesmo através de sistemas Unix heterogêneos ... Existe uma maneira mais fácil de fazer isso (tendo em mente que eu não posso simplesmente usar o NFSv4 no OpenBSD?) )?
A solução alternativa será adicionar um grupo pkgsrc
completamente novo com um GID exclusivo em todos os sistemas, mas esperarei com isso para ver se há uma solução melhor.
Isso é /etc/exports
no omni
server:
/exports/home -network=10.0.0 -mask=255.255.255.0
/exports/pkgsrc -network=10.0.0 -mask=255.255.255.0
Estas são as entradas fstab
correspondentes em um host Ubuntu:
omni:/exports/home /home nfs rsize=4096,wsize=4096,soft
omni:/exports/pkgsrc /opt/pkgsrc nfs rsize=4096,wsize=4096,soft
O diretório pkgsrc
, no servidor do OpenBSD:
$ ls -ld /exports/pkgsrc
drwxrwxr-x 52 root wsrc 2048 Feb 18 20:07 /exports/pkgsrc
e em um host Ubuntu:
$ ls -ld /opt/pkgsrc
drwxrwxr-x 52 root news 2048 Feb 18 20:07 /opt/pkgsrc
... e gostaria que news
(GID 9) fosse src
(GID 40).