Permissões de usuário no diretório montado NFS


10

Eu tenho o oracle linux 6.7, um servidor NFS no Windows, e estou tentando montar uma pasta compartilhada no Linux.

O servidor NFS do Windows possui uma montagem compartilhada:

192.168.1.10:/OracleBK

No meu servidor oracle linux, criei uma pasta / orabackup e o usuário oracle do oinstall group é o proprietário desta pasta:

mkdir /orabackup
chown -R oracle:oinstall /orabackup
chmod -R 777 /orabackup
mount -t nfs -o rw 192.168.1.10:/OracleBK /orabackup

A linha correspondente / etc / fstab é

192.168.1.10:/OracleBK /orabackup nfs defaults 0 0

O comando para montar a pasta usada é:

mount /orabackup

Agora, a pasta "orabackup" está montada.

No entanto, o usuário oracle não pode ler e gravar e precisa de permissões de leitura e gravação neste diretório. O usuário root pode ler e escrever.

O que deve ser feito para conceder permissões completas ao usuário oracle?


4
Se for um servidor NFS no Windows, adicione à publicação o produto / software que permite fazer isso.
Rui F Ribeiro

Respostas:


11

O NFS verifica as permissões de acesso com os IDs de usuário (UIDs). O UID do usuário em sua máquina local precisa corresponder ao UID do proprietário dos arquivos que você está tentando acessar no servidor.

Eu sugeriria ir ao servidor e examinar as permissões de arquivo. A que UID (descobrir id username) eles pertencem e a quais permissões são definidas?

E se você é o único que acessa os arquivos no servidor, pode fazer o servidor fingir que todas as solicitações vêm do UID apropriado. Para isso, o NFS tem a opção all_squash. Ele diz ao servidor para mapear todas as solicitações para o usuário anônimo, especificado por anonuid, anongid.

Adicione estas opções: all_squash,anonuid=1026,anongid=100à exportação em /etc/exports.

Entretanto, esteja avisado de que isso fará com que qualquer pessoa que monta a exportação efetivamente seja o proprietário desses arquivos.


Meu servidor NFS, é o windows base e, para o NFS no windows, definimos permissões para ip od meu linux os.
Saeed.sh

1
Você deveria ter declarado na sua pergunta. Que o seu NFS era realmente o Windows.
monsune

O arquivo / etc / exportações é para o servidor nfs e no servidor nfs devemos configurá-lo. no cliente, não devemos adicionar nenhuma linha a esse arquivo .é verdade?
Sama.sh #

Verifique aqui se está solucionando seu problema: unix.stackexchange.com/questions/213837/…
monsune

@mononsune é necessário combinar UIDs ?? não vai funcionar quando apenas GIDs correspondem?
REDDY PRASAD 03/03/19

1

Você define os atributos no ponto de montagem e eles não contam muito. Você precisa fazer

chown -R oracle:oinstall /orabackup
chmod -R 777 /orabackup

novamente (como root) após a montagem /orabackup, para definir os atributos da pasta compartilhada.


1
após a montagem, quando escrevo chown -R oracle: oinstall / orabackup, esse erro é gerado: [root @ it ~] # chown -R oracle: oinstall / orabackup / chown: alterando a propriedade de `/ orabackup / ': permissão negada
saeed.sh

1
Concordo com o monsune: o fato de o seu servidor NFS ser baseado no Windows complica a questão. Você pode consultar a documentação do software do servidor NFS para ver se há alguma maneira de alterar a propriedade do diretório na caixa do Windows e / ou permitir que o usuário "root" no cliente tenha acesso total ao compartilhamento pasta?
G-Man diz 'Reinstate Monica'

O usuário root pode ler e escrever neste diretório. mas eu quero obter permissão para oracle user.
Sama.sh #

O que quero dizer é que, de acordo com o seu comentário anterior, o root não tem permissão para fazer chown. Talvez o "acesso total" tenha sido a maneira errada de expressar isso; Eu quis dizer "plenos direitos" ou "plenos privilégios".
G-Man diz 'Reinstate Monica'
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.