
同じネットワーク上に Windows Server 2019 マシンと CentOS 8 マシンがあります。CentOS サーバーは、Windows マシンのファイルを使用する Web アプリをホストしています。
これらのファイルを読み取るために、Windows 側に Samba 共有を設定し、 経由で CentOS 側にマウントしましたmount -t cifs //myserver/share /media/windows
。
これはうまくいきましたが、いくつか問題に気づきました。この Samba 共有からファイルにアクセスしようとすると、ファイルがそのまま放置されることがあります。マウント解除して再マウントしても問題は再発するため、役に立たないようです。
Windows 2019 と CentOS 間でファイルを共有するために、Samba ではなく NFS を使用することにしました。同じフォルダーを NFS 共有として設定し、使用した後、mount -t nfs myserver:/share /media/windows
Samba がハングする原因となるファイルにアクセスできるようになりました。
私が抱えている問題は、CentOS 側から NFS 共有に新しいファイルを作成すると、Windows 側の権限が間違っており、Windows サーバー上のユーザーがファイルにアクセスできないことです。
これを調べて、NFS ユーザー マッピングを設定しようとしましたが、正しく設定できなかったようです。
PowerShell を使用して、次を実行しました:
Install-NfsMappingStore -InstanceName "NFSMappingStore" -LdapPort 10389
そして見た:
サーバー MYSERVER に NFSMappingStore という名前の ADLDS インスタンスが正常に作成されました。インスタンスはポート 10389 で実行されており、パーティションは CN=nfs、DC=nfs です。
次に私は実行しました:
Set-NfsMappingStore -EnableLdapLookup $true -LdapNamingContext "CN=nfs,DC=nfs"
-LdapServer localhost:10389
それがうまくいったので、次にユーザーを追加してみました。
New-NfsMappedIdentity -MappingStore LDAP -Server localhost:10389
-UserIdentifier 980 -GroupIdentifier 1001
-UserName CentOsUser -PrimaryGroup "Domain Users"
これは正しく動作しているようだったので、CentOS 側に戻り、次のコマンドでユーザーとして NFS 共有をマウントしましたCentOsUser
。
sudo -u CentOsUser -g CentOsGroup mount -t nfs myserver:/share /media/windows
これはうまくいき、ファイルを作成して書き込むことができました。しかし、Windows 側では、(新しく作成された) ファイルの所有者が実際にはS-1-5-88-1-980
ではなく であることがわかりますCentOsUser
。
S-1-5-88-2-1001
および も表示されますS-1-5-88-3-420
。S-1-5-88-4
なぜ表示されるのですか? ユーザーにS-1-5-88-1-980
マッピングしたと思ったのですが? グループにもマッピングしたと思ったのですが、なぜ表示されるのですか?980
CentOsUser
1001
Domain Users
S-1-5-88-2-1001
答え1
私も同じ問題を抱えていて、長い間苦労していました...
- 今、私は Linux サーバーを AD に統合しました。
- Windowsからすべてのファイルとディレクトリレベルの権限を管理する
- Windows NFS 共有からファイルにアクセスするアプリケーション ユーザーは、AD 認証ユーザーです。
上記の手順は私の場合はまだ機能しています。
答え2
私が見つけた最も簡単で最善の解決策はhttps://github.com/billziss-gh/sshfs-win接続されたサーバーは完全に機能するネットワークドライブとして表示されます
編集: Linux で NTFS 共有をマウントする
mkdir /mnt/win1
mount -t cifs //10.10.1.100/share -o username=myUser,password=myPassword /mnt/win1