[Sysadmins] P7, OpenVZ, Samba 4.0.5

Alex Moskalenko mav на elserv.msk.su
Ср Окт 9 19:23:36 MSK 2013


Здравствуйте!

Прошу помощи у людей, использующих samba в p7, желательно в 
ovz-контейнере (чтобы уж было 100% воспроизведение ситуации).

На данный момент имеются две неприятные проблемы.

1. smbd периодически падает из-за разрушения tdb-файлов (обычно 
связанных с блокировками или сессиями). Сервер при этом в нерабочем 
состоянии, в логах сообщения типа таких:

[2013/10/09 08:54:40.870642,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/smbXsrv_tcon_global.tdb): tdb_rec_read bad magic 
0x42424242 at offset=1045544
[2013/10/09 08:58:34.330707,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/smbXsrv_session_global.tdb): tdb_rec_read bad 
magic 0x42424242 at offset=16900320

[2013/10/09 18:54:30.354238,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6719752
[2013/10/09 18:54:31.008824,  0] 
../source3/locking/share_mode_lock.c:224(share_mode_data_destructor)
   store returned NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:54:31.008926,  0] ../source3/lib/util.c:810(smb_panic_s3)
   PANIC (pid 4167): could not store share mode entry: 
NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:54:31.098584,  0] ../source3/lib/util.c:921(log_stack_trace)
   BACKTRACE: 26 stack frames:
    #0 /usr/lib64/libsmbconf.so.0(log_stack_trace+0x1a) [0x7f50a21c46ca]
    #1 /usr/lib64/libsmbconf.so.0(smb_panic_s3+0x20) [0x7f50a21c47a0]
    #2 /usr/lib64/libsamba-util.so.0(smb_panic+0x2f) [0x7f50a36ff0bf]
    #3 /usr/lib64/samba/libsmbd_base.so(+0x18faa0) [0x7f50a336daa0]
    #4 /usr/lib64/libtalloc.so.2(+0x7b49) [0x7f50a0df5b49]
    #5 /usr/lib64/libtalloc.so.2(_talloc_free+0x1d5) [0x7f50a0df15d5]
    #6 /usr/lib64/samba/libsmbd_base.so(+0x10b727) [0x7f50a32e9727]
    #7 /usr/lib64/samba/libsmbd_base.so(+0x10e1de) [0x7f50a32ec1de]
    #8 /usr/lib64/samba/libsmbd_base.so(create_file_default+0x20a) 
[0x7f50a32ed16a]
    #9 /usr/lib64/samba/libsmbd_base.so(+0x1db43b) [0x7f50a33b943b]
    #10 /usr/lib64/samba/libsmbd_base.so(smb_vfs_call_create_file+0xa5) 
[0x7f50a32f3ae5]
    #11 /usr/lib64/samba/libsmbd_base.so(reply_ntcreate_and_X+0x3c6) 
[0x7f50a32b09f6]
    #12 /usr/lib64/samba/libsmbd_base.so(+0x127ed1) [0x7f50a3305ed1]
    #13 /usr/lib64/samba/libsmbd_base.so(+0x128fa0) [0x7f50a3306fa0]
    #14 /usr/lib64/samba/libsmbd_base.so(+0x129438) [0x7f50a3307438]
    #15 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #16 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #17 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #18 /usr/lib64/samba/libsmbd_base.so(smbd_process+0xc21) 
[0x7f50a33088f1]
    #19 /usr/sbin/smbd() [0x409de4]
    #20 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #21 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #22 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #23 /usr/sbin/smbd(main+0x1385) [0x406995]
    #24 /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f50a0852ad5]
    #25 /usr/sbin/smbd() [0x406d2d]
[2013/10/09 18:54:31.099351,  0] ../source3/lib/dumpcore.c:317(dump_core)
   dumping core in /var/log/samba/cores/smbd


[2013/10/09 18:53:11.334454,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6713368
[2013/10/09 18:58:28.890778,  0] 
../source3/locking/share_mode_lock.c:224(share_mode_data_destructor)
   store returned NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:58:28.890863,  0] ../source3/lib/util.c:810(smb_panic_s3)
   PANIC (pid 4137): could not store share mode entry: 
NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:58:28.891692,  0] ../source3/lib/util.c:921(log_stack_trace)
   BACKTRACE: 26 stack frames:
    #0 /usr/lib64/libsmbconf.so.0(log_stack_trace+0x1a) [0x7f50a21c46ca]
    #1 /usr/lib64/libsmbconf.so.0(smb_panic_s3+0x20) [0x7f50a21c47a0]
    #2 /usr/lib64/libsamba-util.so.0(smb_panic+0x2f) [0x7f50a36ff0bf]
    #3 /usr/lib64/samba/libsmbd_base.so(+0x18faa0) [0x7f50a336daa0]
    #4 /usr/lib64/libtalloc.so.2(+0x7b49) [0x7f50a0df5b49]
    #5 /usr/lib64/libtalloc.so.2(_talloc_free+0x1d5) [0x7f50a0df15d5]
    #6 /usr/lib64/samba/libsmbd_base.so(+0x10b727) [0x7f50a32e9727]
    #7 /usr/lib64/samba/libsmbd_base.so(+0x10e1de) [0x7f50a32ec1de]
    #8 /usr/lib64/samba/libsmbd_base.so(create_file_default+0x20a) 
[0x7f50a32ed16a]
    #9 /usr/lib64/samba/libsmbd_base.so(+0x1db43b) [0x7f50a33b943b]
    #10 /usr/lib64/samba/libsmbd_base.so(smb_vfs_call_create_file+0xa5) 
[0x7f50a32f3ae5]
    #11 /usr/lib64/samba/libsmbd_base.so(reply_ntcreate_and_X+0x3c6) 
[0x7f50a32b09f6]
    #12 /usr/lib64/samba/libsmbd_base.so(+0x127ed1) [0x7f50a3305ed1]
    #13 /usr/lib64/samba/libsmbd_base.so(+0x128fa0) [0x7f50a3306fa0]
    #14 /usr/lib64/samba/libsmbd_base.so(+0x129438) [0x7f50a3307438]
    #15 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #16 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #17 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #18 /usr/lib64/samba/libsmbd_base.so(smbd_process+0xc21) 
[0x7f50a33088f1]
    #19 /usr/sbin/smbd() [0x409de4]
    #20 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #21 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #22 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #23 /usr/sbin/smbd(main+0x1385) [0x406995]
    #24 /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f50a0852ad5]
    #25 /usr/sbin/smbd() [0x406d2d]
[2013/10/09 18:58:28.892421,  0] ../source3/lib/dumpcore.c:317(dump_core)
   dumping core in /var/log/samba/cores/smbd
[2013/10/09 18:58:29.061172,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072362,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072463,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072545,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072615,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072688,  0] ../lib/tdb_wrap/tdb_wrap.c:64(tdb_wrap_log)
   tdb(/var/lib/samba/locking.tdb): tdb_rec_read bad magic 0x42424242 at 
offset=6718024
[2013/10/09 18:58:29.072766,  0] 
../source3/locking/share_mode_lock.c:224(share_mode_data_destructor)
   store returned NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:58:29.072862,  0] ../source3/lib/util.c:810(smb_panic_s3)
   PANIC (pid 5036): could not store share mode entry: 
NT_STATUS_UNSUCCESSFUL
[2013/10/09 18:58:29.073787,  0] ../source3/lib/util.c:921(log_stack_trace)
   BACKTRACE: 26 stack frames:
    #0 /usr/lib64/libsmbconf.so.0(log_stack_trace+0x1a) [0x7f50a21c46ca]
    #1 /usr/lib64/libsmbconf.so.0(smb_panic_s3+0x20) [0x7f50a21c47a0]
    #2 /usr/lib64/libsamba-util.so.0(smb_panic+0x2f) [0x7f50a36ff0bf]
    #3 /usr/lib64/samba/libsmbd_base.so(+0x18faa0) [0x7f50a336daa0]
    #4 /usr/lib64/libtalloc.so.2(+0x7b49) [0x7f50a0df5b49]
    #5 /usr/lib64/libtalloc.so.2(_talloc_free+0x1d5) [0x7f50a0df15d5]
    #6 /usr/lib64/samba/libsmbd_base.so(+0x10b727) [0x7f50a32e9727]
    #7 /usr/lib64/samba/libsmbd_base.so(+0x10e1de) [0x7f50a32ec1de]
    #8 /usr/lib64/samba/libsmbd_base.so(create_file_default+0x20a) 
[0x7f50a32ed16a]
    #9 /usr/lib64/samba/libsmbd_base.so(+0x1db43b) [0x7f50a33b943b]
    #10 /usr/lib64/samba/libsmbd_base.so(smb_vfs_call_create_file+0xa5) 
[0x7f50a32f3ae5]
    #11 /usr/lib64/samba/libsmbd_base.so(reply_ntcreate_and_X+0x3c6) 
[0x7f50a32b09f6]
    #12 /usr/lib64/samba/libsmbd_base.so(+0x127ed1) [0x7f50a3305ed1]
    #13 /usr/lib64/samba/libsmbd_base.so(+0x128fa0) [0x7f50a3306fa0]
    #14 /usr/lib64/samba/libsmbd_base.so(+0x129438) [0x7f50a3307438]
    #15 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #16 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #17 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #18 /usr/lib64/samba/libsmbd_base.so(smbd_process+0xc21) 
[0x7f50a33088f1]
    #19 /usr/sbin/smbd() [0x409de4]
    #20 /usr/lib64/libsmbconf.so.0(run_events_poll+0x187) [0x7f50a21e3637]
    #21 /usr/lib64/libsmbconf.so.0(+0x448b9) [0x7f50a21e38b9]
    #22 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x9d) [0x7f50a0be4cfd]
    #23 /usr/sbin/smbd(main+0x1385) [0x406995]
    #24 /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f50a0852ad5]
    #25 /usr/sbin/smbd() [0x406d2d]
[2013/10/09 18:58:29.074735,  0] ../source3/lib/dumpcore.c:317(dump_core)
   dumping core in /var/log/samba/cores/smbd

Лечится удалением разрушенных файлов и перезапуском smbd.

2. В 4.0.5 из p7 все еще жива проблема из моего бага 
https://bugzilla.altlinux.org/show_bug.cgi?id=26182. То есть 
использование кириллицы в имени принтера (именно в имени) приводит к 
отказу подсистему печати. Лечится правкой реестра на сервере samba - 
удалением кариллицы из имени.

Прошу помощи в подтверждении и/или решении этих проблем. Проблема (1) 
жить не дает совсем, проблему (2) можно обойти, не используя кириллицу в 
имени принтера.

PS Возможно, в p7 есть смысл положить новые версии samba (4.0.5 -> 
4.0.10) и/или ядра ovz-el (alt102 -> alt104)? Ядро в целом и 
ovz-контейнер в частности вообще может влиять на поведение подсистемы 
tdb в samba?

-- 
WBR, Alex Moskalenko



Подробная информация о списке рассылки Sysadmins