
Tenho uma máquina Windows Server 2019 e uma máquina CentOS 8 na mesma rede. O servidor CentOS hospeda um webapp que usa arquivos da máquina Windows.
Para ler esses arquivos, configurei um compartilhamento Samba no lado do Windows e montei-o no lado do CentOS via mount -t cifs //myserver/share /media/windows
.
Isso funcionou, mas notei alguns problemas. Às vezes, ao tentar acessar arquivos deste compartilhamento do Samba, ele simplesmente ficava parado. Desmontar e remontar não pareceu ajudar, pois o problema simplesmente aconteceria novamente.
Decidi tentar usar o NFS em vez do Samba para compartilhar arquivos entre o Windows 2019 e o CentOS. Depois de configurar a mesma pasta, mas em vez disso como um compartilhamento NFS, e usando mount -t nfs myserver:/share /media/windows
consegui acessar os arquivos que fariam o Samba travar.
O problema que estou enfrentando é que quando crio um novo arquivo no compartilhamento NFS do lado do CentOS, as permissões estão erradas no lado do Windows e os usuários no servidor Windows não conseguem acessar os arquivos.
Analisei isso e tentei configurar o mapeamento de usuários do NFS, mas não acho que fiz certo.
Usando o PowerShell, executei:
Install-NfsMappingStore -InstanceName "NFSMappingStore" -LdapPort 10389
e viu:
Instância ADLDS criada com sucesso chamada NFSMappingStore no servidor MYSERVER, a instância está sendo executada na porta 10389 e a partição é CN=nfs,DC=nfs.
Eu então corri:
Set-NfsMappingStore -EnableLdapLookup $true -LdapNamingContext "CN=nfs,DC=nfs"
-LdapServer localhost:10389
Vendo que funcionou, tentei adicionar um usuário:
New-NfsMappedIdentity -MappingStore LDAP -Server localhost:10389
-UserIdentifier 980 -GroupIdentifier 1001
-UserName CentOsUser -PrimaryGroup "Domain Users"
Isso pareceu funcionar corretamente, então, de volta ao CentOS, montei o compartilhamento NFS como CentOsUser
usuário por meio de:
sudo -u CentOsUser -g CentOsGroup mount -t nfs myserver:/share /media/windows
Isso funcionou e consegui criar e escrever um arquivo. Mas no lado do Windows, vejo que o proprietário do arquivo (recém-criado) é, na verdade, S-1-5-88-1-980
em vez de CentOsUser
.
Eu também vejo S-1-5-88-2-1001
bem como S-1-5-88-3-420
e S-1-5-88-4
.
Por que está aparecendo S-1-5-88-1-980
? Achei que mapeei 980
para o CentOsUser
usuário? Também pensei ter mapeado 1001
para o Domain Users
grupo, então por que está aparecendo S-1-5-88-2-1001
?
Responder1
Eu tive o mesmo problema e estava lutando com ele desde um tempo de registro ...
- Agora integrei o servidor Linux com AD.
- Gerenciando todos os arquivos e permissões em nível de diretório do Windows
- o usuário do aplicativo que acessa arquivos do compartilhamento NFS do Windows é um usuário autenticado pelo AD.
O procedimento acima ainda está funcionando para mim.
Responder2
A melhor e mais fácil solução que encontrei éhttps://github.com/billziss-gh/sshfs-win, os servidores conectados aparecem como unidades de rede totalmente funcionais
Editar: Montando um compartilhamento NTFS no Linux
mkdir /mnt/win1
mount -t cifs //10.10.1.100/share -o username=myUser,password=myPassword /mnt/win1