あまり考えずに既存のSamba 4.4.x環境を最新のSamba 4.7.xにアップデートをした。
ようは、configure;make;make install。
が・・・「Updating Samba」を見ると、Samba 4.5.0で「replPropertyMetaData」の取り扱いが変わったので修正しなければならない、という記載が・・・
修正が必要かどうかは「samba-tool dbcheck –cross-ncs」で確認出来る、とのこと
問題なければ、下記の出力・・・
# samba-tool dbcheck --cross-ncs Checking 3602 objects Checked 3602 objects (0 errors) #
問題がある場合は下記の様な形でエラーが報告されます。
ちなみに、エラーのテキスト出力が6.5MBありました・・・
# samba-tool dbcheck --cross-ncs --fix --yes Checking 3602 objects CN=MHS-OR-Address,CN=Schema,CN=Configuration,DC=adosakana,DC=local: 0x0009030e CN=MHS-OR-Address,CN=Schema,CN=Configuration,DC=adosakana,DC=local: 0x00090177 <略> Checked 3602 objects (3467 errors) #
「samba-tool dbcheck –cross-ncs –fix –yes」を実行することで修正されました。
また、4.0以前のバージョンからアップデートした場合にSYSVOLの修復を行うために「samba-tool ntacl sysvolreset」を実行するという記述があったので、試しにSYSVOLのチェック「samba-tool ntacl sysvolcheck」を実行してみると、下記のエラーが発生。
# samba-tool ntacl sysvolcheck ERROR(<class 'samba.provision.ProvisioningError'>): uncaught exception - ProvisioningError: DB ACL on GPO directory /usr/local/samba/var/locks/sysvol/adosakana.local/Policies/{20AA5877-2399-4CBC-8BA4-7F23D8810774} O:DAG:DAD:PAI(A;OICI;0x001f01ff;;;DA)(A;OICI;0x001f01ff;;;EA)(A;OICIIO;0x001f01ff;;;CO)(A;OICI;0x001f01ff;;;DA)(A;OICI;0x001f01ff;;;SY)(A;OICI;0x001200a9;;;AU)(A;OICI;0x001200a9;;;ED) does not match expected value O:DAG:DAD:P(A;OICI;0x001f01ff;;;DA)(A;OICI;0x001f01ff;;;EA)(A;OICIIO;0x001f01ff;;;CO)(A;OICI;0x001f01ff;;;DA)(A;OICI;0x001f01ff;;;SY)(A;OICI;0x001200a9;;;AU)(A;OICI;0x001200a9;;;ED) from GPO object File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/__init__.py", line 176, in _run return self.run(*args, **kwargs) File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/ntacl.py", line 270, in run lp) File "/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py", line 1723, in checksysvolacl direct_db_access) File "/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py", line 1674, in check_gpos_acl domainsid, direct_db_access) File "/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py", line 1621, in check_dir_acl raise ProvisioningError('%s ACL on GPO directory %s %s does not match expected value %s from GPO object' % (acl_type(direct_db_access), path, fsacl_sddl, acl)) #
「samba-tool ntacl sysvolreset」を実行して修正。
# samba-tool ntacl sysvolreset # samba-tool ntacl sysvolcheck #