[samba-jp:23143] DebianでSambaを多重起動時に、4個目のSambaを起動すると全てのSambaが動かなくなる。

shinke1987 samba @ shinke1987.net
2021年 8月 18日 (水) 21:44:04 JST


初めて投稿します。
shinke1987と申します。
長文です、すいません。
もし良ければ一緒に考えて頂けないでしょうか?

【 目的 】
スタンドアロンのSambaを10個多重起動して、
誰でも読み書きできる共有フォルダを作成する。
10個のSambaは各LANポートに紐付けられる。
(LANポートは10個あり、1個のLANポートに1個のSambaが接続待ちをする)
LANポート①〜⑤はSSD1を読み書き、LANポート⑥〜⑩はSSD2を読み書き。

【 問題の概要 】
Debian(10.10)でSamba(4.14.6 最新安定版)を多重起動しています。
3個目までは無事に多重起動できるのですが、4個目を起動すると
1〜3個目の起動していたSambaも動かなくなります。
その時4個目のプロセスは確認できません。
※ 【 問題の詳細 】を下に記載しています。

【 環境 】
2TBのSSDが2台、LANポート10個を載せたPC。
OS:Debian(10.10)
Samba:4.14.6
LANポートそれぞれに違うIPアドレスを設定し、
pingを使用して通信できることを確認済み。
(192.168.1.80 〜 192.168.1.89)

【 Sambaインストール手順と設定内容等 】
Samba公式サイトのスクリプトを利用して、
必要なライブラリ等をaptを利用してインストールしました。
スクリプトのURLは下記です。
https://git.samba.org/?p=samba.git;a=blob_plain;f=bootstrap/generated-dists/debian10/bootstrap.sh;hb=v4-14-test

configureは下記の内容で実行しました。
./configure --without-winbind --without-ldap --disable-iprint  
--without-pam --without-dnsupdate --without-ad-dc --without-ads
その後$ make, $ sudo make installを実行し、通常のSambaは起動できました。

それからconfファイルを次の10個用意しました。
TempFileSrv1.conf
TempFileSrv2.conf
TempFileSrv3.conf
TempFileSrv4.conf
TempFileSrv5.conf
TempFileSrv6.conf
TempFileSrv7.conf
TempFileSrv8.conf
TempFileSrv9.conf
TempFileSrv10.conf

内容の抜粋は下記の通りです。
(長文になりすぎないように抜粋しています)
========== ここから ==========
[global]
netbios name = TempFileSrv1
lock directory = /var/lock/TempFileSrv1
pid directory = /var/run/TempFileSrv1
interfaces = 192.168.1.80/24 eno1
bind interfaces only = yes
socket address = 192.168.1.80
private dir = /usr/local/samba/private1
workgroup = WORKGROUP1
log file = /var/log/samba/log.TempFileSrv1.%m
obey pam restrictions = no
unix password sync = no
[TempFileSrv1(SSD1)]
path = /srv/SSD1/SSD1
writable = yes
guest ok = yes
guest only = no
========== ここまで ==========

bind interfaces onlyと
obey pam restrictionsと
unix password syncと
writableと
guest okと
guest only以外は、それぞれに対応するものに変更しています。
(対応する末尾の数値を変更したり、IPアドレスを対応するものにしたり、
対応するフォルダを作成・変更したり、pathを【 目的 】に書いてある通りに設 
定したり。)

【 起動 】
$ sudo /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv1.conf
$ sudo /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv2.conf
$ sudo /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv3.conf
$ sudo /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv4.conf

【 問題の詳細 】
【 問題の概要 】に書いている、「動かなくなる」というのはWindowsから
1個目から3個目の共有フォルダへアクセスすると、(「ファイル名を指定して実 
行」から「\\IPアドレス」を入力してアクセス)
「指定されたネットワーク名は使用できません」と表示されることを指します。

3個目までを起動した状態だと、
1個目〜3個目までのSambaの共有フォルダをWindowsから確認できます。
smbd3個分のプロセスが確認できます。

4個目を起動した後、
$ ps aux | grep smbd
で確認すると、4個目のプロセスが確認できません。
3個目までのプロセスはこの時点でも確認できます。

/var/lockフォルダにも対応するファイルが4個存在します。
/var/runフォルダにも対応するファイルが4個存在します。

TempFileSrv[数値]というnetbios名のSambaが10個ありますが、
それぞれを1個ずつ起動した場合は問題無く起動し、
Windowsから共有フォルダが確認できます。
ですが、どの順番で、どのSambaを選択しても、
必ず4個目でSambaが動かなくなります。

この時の4個目のSambaのログ(log level = 10)の抜粋は下記の通りです。
========== ログここから ==========
[2021/08/18 20:18:16.444727, 10, pid=999, effective(0, 0), real(0, 0)]  
../../source3/smbd/smbXsrv_version.c:251(smbXsrv_version
_global_init)
[2021/08/18 20:18:16.444731,  1, pid=999, effective(0, 0), real(0, 0),  
class=rpc_parse] ../../librpc/ndr/ndr.c:429(ndr_print_de
bug)
        &global_blob: struct smbXsrv_version_globalB
           version                  : SMBXSRV_VERSION_0 (0)
           seqnum                   : 0x00000001 (1)
           info                     : union smbXsrv_version_globalU(case 0)
           info0                    : *
               info0: struct smbXsrv_version_global0
                   db_rec                   : NULL
                   num_nodes                : 0x00000001 (1)
                   nodes: ARRAY(1)
                       nodes: struct smbXsrv_version_node0
                           server_id: struct server_id
                               pid                      :  
0x00000000000003e7 (999)
                               task_id                  : 0x00000000 (0)
                               vnn                      : 0xffffffff  
(4294967295)
                               unique_id                :  
0xe84c84af2ba1a972 (-1707844270794102414)
                           min_version              : SMBXSRV_VERSION_0 (0)
                           max_version              : SMBXSRV_VERSION_0 (0)
                           current_version          : SMBXSRV_VERSION_0 (0)
[2021/08/18 20:18:16.445200,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:172(smb_panic_log)
   ===============================================================
[2021/08/18 20:18:16.445209,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:176(smb_panic_log)
   INTERNAL ERROR: Signal 7: バスエラー in pid 999 (4.14.6)
[2021/08/18 20:18:16.445215,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:181(smb_panic_log)
   If you are running a recent Samba version, and if you think this  
problem is not yet fixed in the latest versions, please consider  
reporting this bug, see https://wiki.samba.org/index.php/Bug_Reporting
[2021/08/18 20:18:16.445221,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:182(smb_panic_log)
   ===============================================================
[2021/08/18 20:18:16.445225,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:184(smb_panic_log)
   PANIC (pid 999): Signal 7: バスエラー in 4.14.6
[2021/08/18 20:18:16.445310,  0, pid=999, effective(0, 0), real(0, 0)]  
../../lib/util/fault.c:245(log_stack_trace)
   BACKTRACE:
    #0 log_stack_trace + 0x37 [ip=0x7fec84f1770e] [sp=0x7ffe099a7e60]
    #1 smb_panic_log + 0x1b1 [ip=0x7fec84f1768a] [sp=0x7ffe099a8770]
    #2 smb_panic + 0x18 [ip=0x7fec84f176a5] [sp=0x7ffe099a8790]
    #3 fault_report + 0x8d [ip=0x7fec84f171bd] [sp=0x7ffe099a87b0]
    #4 sig_fault + 0x15 [ip=0x7fec84f171d2] [sp=0x7ffe099a8860]
    #5 funlockfile + 0x50 [ip=0x7fec8461b730] [sp=0x7ffe099a8880]
    #6 pthread_mutex_init + 0x59 [ip=0x7fec84612ee9] [sp=0x7ffe099a8f30]
    #7 tdb_mutex_init + 0xfc [ip=0x7fec83dd44bc] [sp=0x7ffe099a8f70]
    #8 tdb_new_database + 0x297 [ip=0x7fec83dcca5c] [sp=0x7ffe099a8fc0]
    #9 tdb_open_ex + 0x969 [ip=0x7fec83dcd708] [sp=0x7ffe099a9010]
    #10 tdb_wrap_private_open + 0xd3 [ip=0x7fec837c1617] [sp=0x7ffe099a91e0]
    #11 tdb_wrap_open + 0xee [ip=0x7fec837c17f5] [sp=0x7ffe099a9250]
    #12 db_open_tdb + 0x1af [ip=0x7fec83de62be] [sp=0x7ffe099a9290]
    #13 dbwrap_local_open + 0x4b [ip=0x7fec83de6616] [sp=0x7ffe099a9370]
    #14 db_open + 0x465 [ip=0x7fec84a57e42] [sp=0x7ffe099a93c0]
    #15 locking_init_internal + 0xa7 [ip=0x7fec84d24497] [sp=0x7ffe099a9440]
    #16 locking_init + 0xe [ip=0x7fec84d245fd] [sp=0x7ffe099a9490]
    #17 main + 0x1028 [ip=0x5598f92aa708] [sp=0x7ffe099a94a0]
    #18 __libc_start_main + 0xeb [ip=0x7fec8446c09b] [sp=0x7ffe099a9870]
    #19 _start + 0x2a [ip=0x5598f92a108a] [sp=0x7ffe099a9930]
[2021/08/18 20:18:16.454287,  0, pid=999, effective(0, 0), real(0, 0)]  
../../source3/lib/util.c:839(smb_panic_s3)
   smb_panic(): calling panic action [/usr/share/samba/panic-action 999]
sh: 1: /usr/share/samba/panic-action: not found
[2021/08/18 20:18:16.455347,  0, pid=999, effective(0, 0), real(0, 0)]  
../../source3/lib/util.c:847(smb_panic_s3)
   smb_panic(): action returned status 127
[2021/08/18 20:18:16.455366,  0, pid=999, effective(0, 0), real(0, 0)]  
../../source3/lib/dumpcore.c:315(dump_core)
   dumping core in /usr/local/samba/var/cores/smbd
========== ログここまで ==========

※ /usr/local/samba/var/cores/smbdフォルダにはログファイルはありませんで 
した。


【 試したこと① 】
confファイルの[global]に、次の1行を追加して、対応するフォルダを用意した。
passdb backend = tdbsam:/usr/local/samba/private1/passdb1.tdb
※ 数値はそれぞれ変更しています。(例:TempFileSrv3.confなら、private3 
フォルダ、passdb3.tdbファイル。)
結果:Internal Error Signal 7: バスエラー、と表示され変わらなかった。

【 試したこと② 】
もう1つのSambaを別の場所に(configureのprefixを指定することで)
インストールして4個目のみ違うSambaを実行してみた。
# /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv1.conf
# /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv2.conf
# /usr/local/samba/sbin/smbd -D -s /etc/samba/TempFileSrv3.conf
# /usr/local/samba2/sbin/smbd -D -s /etc/samba/TempFileSrv4.conf
とやって起動してみたけど、
結果:Internal Error Signal 7: バスエラー、と表示され変わらなかった。

【 最後に 】
ログを見ると、Internal Error Signal 7: バスエラー
と表示されていますが、検索してみても何が悪いのかわかりません。
他に試すことも思いつかず、手詰まりの状態です。
DebianのaptからインストールできるSamba(4.9.5-Debian)でも同じでした。
これを試してみて、ここを確認してみて、この情報出してみて、等あれば教えて 
頂けないでしょうか?
教えて君で申し訳ないのですが、もしよろしければ一緒に考えて・教えて頂ける 
と助かります。

※ 下記ページを読むとソースコード読めよ!って書かれてますが、
   やっぱりそれぐらいやらないとダメなのかな…。解決しなかったら考えよう…。
  http://www.samba.gr.jp/project/translation/Samba3-HOWTO/cfgsmarts.html


samba-jp メーリングリストの案内