Страница 1 из 1

Непонятное поведение шары самбы

Добавлено: 2010-11-16 14:11:52
Azomorph
Добрый день!
ситуация такая:
Статика на нашем сайте раздается при помощи nginx на FreeBSD 8.0 RC-1, но материал периодически правится и пополняется, для чего была поднята самба (версия 3.3.13) и заведена в AD, ну и соответственно шара с прозрачной авторизацией для пользователей AD. В один не слишком прекрасный день raid на контроллере домена приказал долго жить. Спешно был на другом сервере поднят другой контроллер с точно таким же названием, после чего самба была переведена в новый домен. Но после перевода пошли странности. На шару получается только с двух компов зайти можно, на остальных выдается сообщение The semaphore timeout period has expired.
В логах при этом пишется следующее:

Код: Выделить всё

Nov 16 13:30:03 content smbd[85081]: [2010/11/16 13:30:03,  0] lib/util_sock.c:write_data(1136)
Nov 16 13:30:03 content smbd[85081]: [2010/11/16 13:30:03,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:03 content smbd[85081]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:03 content smbd[85081]:   write_data: write failure in writing to client 0.0.0.0. Error Socket is not connected
Nov 16 13:30:03 content smbd[85081]: [2010/11/16 13:30:03,  0] smbd/process.c:srv_send_smb(74)
Nov 16 13:30:03 content smbd[85081]:   Error writing 4 bytes to client. -1. (Socket is not connected)
Nov 16 13:30:03 content smbd[85081]: [2010/11/16 13:30:03,  0] lib/util_sock.c:read_socket_with_timeout(939)
Nov 16 13:30:03 content smbd[85081]: [2010/11/16 13:30:03,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:03 content smbd[85081]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:03 content smbd[85081]:   read_socket_with_timeout: client 0.0.0.0 read error = Socket is not connected.
Nov 16 13:30:12 content smbd[85082]: [2010/11/16 13:30:12,  0] lib/util_sock.c:write_data(1136)
Nov 16 13:30:12 content smbd[85082]: [2010/11/16 13:30:12,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:12 content smbd[85082]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:12 content smbd[85082]:   write_data: write failure in writing to client 0.0.0.0. Error Socket is not connected
Nov 16 13:30:12 content smbd[85082]: [2010/11/16 13:30:12,  0] smbd/process.c:srv_send_smb(74)
Nov 16 13:30:12 content smbd[85082]:   Error writing 4 bytes to client. -1. (Socket is not connected)
Nov 16 13:30:12 content smbd[85082]: [2010/11/16 13:30:12,  0] lib/util_sock.c:read_socket_with_timeout(939)
Nov 16 13:30:12 content smbd[85082]: [2010/11/16 13:30:12,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:12 content smbd[85082]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:12 content smbd[85082]:   read_socket_with_timeout: client 0.0.0.0 read error = Socket is not connected.
Nov 16 13:30:23 content smbd[85085]: [2010/11/16 13:30:23,  0] lib/util_sock.c:write_data(1136)
Nov 16 13:30:23 content smbd[85085]: [2010/11/16 13:30:23,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:23 content smbd[85085]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:23 content smbd[85085]:   write_data: write failure in writing to client 0.0.0.0. Error Socket is not connected
Nov 16 13:30:23 content smbd[85085]: [2010/11/16 13:30:23,  0] smbd/process.c:srv_send_smb(74)
Nov 16 13:30:23 content smbd[85085]:   Error writing 4 bytes to client. -1. (Socket is not connected)
Nov 16 13:30:23 content smbd[85085]: [2010/11/16 13:30:23,  0] lib/util_sock.c:read_socket_with_timeout(939)
Nov 16 13:30:23 content smbd[85085]: [2010/11/16 13:30:23,  0] lib/util_sock.c:get_peer_addr_internal(1676)
Nov 16 13:30:23 content smbd[85085]:   getpeername failed. Error was Socket is not connected
Nov 16 13:30:23 content smbd[85085]:   read_socket_with_timeout: client 0.0.0.0 read error = Socket is not connected.
конфиг самбы таков:

Код: Выделить всё

[global]
   workgroup = RIU
   server string = Samba Server %v
   security = ADS
   hosts allow = 194.186.226. 127.
   log file = /var/log/samba/log.%m
   max log size = 50
   password server = 194.186.226.31
   realm = RIU.LOCAL
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
   local master = no
   os level = 10
   domain master = no
   preferred master = no
   dns proxy = no
   nt acl support = yes
   inherit acls = yes
   map acl inherit = no
   admin users = RIU\admin, "@RIU\Domain Admins"
   auth methods = winbind
   map to guest = Bad User
   acl group control = yes
   client NTLMv2 auth = yes
   idmap uid = 10000-20000
   idmap gid = 10000-20000
   winbind use default domain = yes
   winbind enum users = yes
   winbind enum groups = yes
   winbind expand groups = 30
   case sensitive = no
   guest account = nobody
   guest ok = yes
   create mask = 0777
   directory mask = 0777

[tmp]
   comment = Temporary file space
   path = /tmp
   read only = no
   create mask = 0666
   create mode = 666
   directory mode = 666
   directory mask = 0777
   guest ok = yes

[content]
    comment = Content
    path = /usr/local/www/nginx-dist
    inherit permissions = yes
    inherit acls = yes
    inherit owner = yes
    read only = no
    guest ok = yes
nsswitch.conf:

Код: Выделить всё

group: files winbind
group_compat: nis
hosts: files dns winbind
networks: files
passwd: files winbind
passwd_compat: nis
shells: files
protocols: files
rpc: files
kinit, klist заходит без проблем, net ads join - тоже без проблем, wbinfo -u и wbinfo -g - в свою очередь корректно отображают список пользователей и групп.

Вот как это можно победить?

Re: Непонятное поведение шары самбы

Добавлено: 2010-11-16 17:05:50
Гость
лог ниочем не говорит. увелич дебаг , заходиш с проблемного клиенского компа и потом выкладываеш лог именно для него.

Re: Непонятное поведение шары самбы

Добавлено: 2010-11-17 10:42:22
Azomorph
увеличил логирования до уровня: level log = 10 ads:20 auth:10 winbind:10

c моей рабочей машины заходит без проблем, с других компов ругается на таймаут семафора, в логах это:

Код: Выделить всё

[2010/11/17 10:36:49,  5] smbd/reply.c:reply_special(544)
  init msg_type=0x81 msg_flags=0x0
[2010/11/17 10:36:49,  0] lib/util_sock.c:write_data(1136)
[2010/11/17 10:36:49,  0] lib/util_sock.c:get_peer_addr_internal(1676)
  getpeername failed. Error was Socket is not connected
  write_data: write failure in writing to client 0.0.0.0. Error Socket is not connected
[2010/11/17 10:36:49,  0] smbd/process.c:srv_send_smb(74)
  Error writing 4 bytes to client. -1. (Socket is not connected)
[2010/11/17 10:36:49,  0] lib/util_sock.c:read_socket_with_timeout(939)
[2010/11/17 10:36:49,  0] lib/util_sock.c:get_peer_addr_internal(1676)
  getpeername failed. Error was Socket is not connected
  read_socket_with_timeout: client 0.0.0.0 read error = Socket is not connected.
[2010/11/17 10:36:49, 10] smbd/process.c:receive_smb_raw_talloc(280)
  receive_smb_raw: NT_STATUS_ACCESS_DENIED
[2010/11/17 10:36:49,  3] smbd/process.c:smbd_process(1964)
  receive_message_or_smb failed: NT_STATUS_ACCESS_DENIED, exiting
[2010/11/17 10:36:49,  5] lib/gencache.c:gencache_shutdown(93)
  Closing cache file
[2010/11/17 10:36:49,  5] libsmb/namecache.c:namecache_shutdown(81)
  namecache_shutdown: netbios namecache closed successfully.
[2010/11/17 10:36:49,  3] smbd/sec_ctx.c:set_sec_ctx(324)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2010/11/17 10:36:49,  5] auth/token_util.c:debug_nt_user_token(522)
  NT user token: (NULL)
[2010/11/17 10:36:49,  5] auth/token_util.c:debug_unix_user_token(548)
  UNIX token of user 0
  Primary group is 0 and contains 0 supplementary groups
[2010/11/17 10:36:49,  5] smbd/uid.c:change_to_root_user(370)
  change_to_root_user: now uid=(0,0) gid=(0,0)
[2010/11/17 10:36:49,  3] smbd/connection.c:yield_connection(31)
  Yielding connection to.
[2010/11/17 10:36:49, 10] lib/dbwrap_tdb.c:db_tdb_fetch_locked(100)
  Locking key 915B0100FFFFFFFF0000
[2010/11/17 10:36:49, 10] lib/dbwrap_tdb.c:db_tdb_fetch_locked(129)
  Allocated locked data 0x0x20c267b0
[2010/11/17 10:36:49,  3] smbd/connection.c:yield_connection(42)
  deleting connection record returned NT_STATUS_NOT_FOUND
[2010/11/17 10:36:49, 10] lib/dbwrap_tdb.c:db_tdb_record_destr(42)
  Unlocking key 915B0100FFFFFFFF0000
[2010/11/17 10:36:49,  3] smbd/server.c:exit_server_common(980)
  Server exit (normal exit)
вот теперь интересует этот флаг: NT_STATUS_ACCESS_DENIED

при том, что со своей машины и с других захожу под одной и той же учеткой, но на моей пускает, на других нет....