
私は何年も前から、Samba Active Directory のドメインで Samba 4.3.11 と Windows 10 に関する問題を抱えています。
Windows 10 上のユーザーは、Windows 10 クライアントをシャットダウンまたは再起動した後でも、Samba サーバー (smbstatus -b) にログオンしている状態として表示されます。
代わりにログオフのみを実行すると、約 10 秒後に smbstatus リストから正しく消えます。
Samba サーバーのプロトコルを NT1 (SMB1) に制限した場合にのみ、Windows のシャットダウン後に Samba サーバーから正しくユーザーがログオフされます。
現在、samba 4.13.13 を使用して新しいドメインを構築していますが、同じ問題が再び発生します。
私は、古い smb プロトコルを使い続けるよりも、最終的にもっと良い解決策を見つけたいと思っています。
ヒントがあればよろしくお願いします!
答え1
これは Windows の機能です。再起動後、以前のユーザーがログオンし、実行されていたアプリケーションが再起動されます。
答え2
まだ本当の解決策ではありませんが、問題を回避するためのハックがあります:
- ソケットオプション = TCP_NODELAY SO_KEEPALIVE TCP_KEEPIDLE=30 TCP_KEEPCNT=3 TCP_KEEPINTVL=3 - 非アクティブなsmbdを約40秒後に終了します - そして
- 拒否 oplock ファイル = /NTUSER.DAT/ntuser.dat/NTUSER.POL/ntuser.pol/NTUSER.INI/ntuser.ini/ - ホーム共有宣言内
ソケット オプションは次の興味深いスレッドから取得されます。クライアントが切断した後、Samba がファイル ロックを保持するのを防ぐにはどうすればよいでしょうか?
同じアイデアは、2011 年に Samba の第一人者たちによる議論から生まれました。https://lists.samba.org/archive/samba-technical/2011-July/078633.html
同様の問題と回答を探していて、この投稿に偶然出会った人にとって、これが役立つことを願っています。