AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 16177
Accepted
Takkat
Takkat
Asked: 2010-12-05 08:57:40 +0800 CST2010-12-05 08:57:40 +0800 CST 2010-12-05 08:57:40 +0800 CST

是什么让“smbd”在启动时停止运行?

  • 772

最近,当客户端“突然”无法访问所有共享时,我在我的 samba 服务器(Ubuntu 10.04 LTS am64)上遇到了一个奇怪的问题。跟踪错误显示smbd未在启动时启动。从系统日志:

[...]
Dec  4 12:28:45 takkat-home dhclient: 
Dec  4 12:28:45 takkat-home NetworkManager: <info>  DHCP: device eth0 state changed (null) -> preinit
Dec  4 12:28:45 takkat-home init: smbd main process (1027) terminated with status 255
Dec  4 12:28:45 takkat-home init: smbd main process ended, respawning
Dec  4 12:28:45 takkat-home dhclient: Listening on LPF/eth0/00:24:1d:25:40:e4
Dec  4 12:28:45 takkat-home dhclient: Sending on   LPF/eth0/00:24:1d:25:40:e4
Dec  4 12:28:45 takkat-home dhclient: Sending on   Socket/fallback
Dec  4 12:28:45 takkat-home avahi-daemon[917]: No service file found in /etc/avahi/services.
Dec  4 12:28:45 takkat-home init: smbd main process (1045) terminated with status 255
Dec  4 12:28:45 takkat-home init: smbd main process ended, respawning
Dec  4 12:28:45 takkat-home init: smbd main process (1050) terminated with status 255
Dec  4 12:28:45 takkat-home init: smbd main process ended, respawning
[...]

和 smbd.log:

[...]
[2010/12/04 12:28:45,  0] smbd/server.c:1069(main)
  smbd version 3.4.7 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2010/12/04 12:28:45,  0] printing/print_cups.c:103(cups_connect)
  Unable to connect to CUPS server localhost:631 - Connection refused
[2010/12/04 12:28:45,  0] printing/print_cups.c:103(cups_connect)
  Unable to connect to CUPS server localhost:631 - Connection refused
[2010/12/04 12:28:45,  0] smbd/server.c:1115(main)
  standard input is not a socket, assuming -D option
[2010/12/04 12:28:45,  0] passdb/pdb_interface.c:253(guest_user_info)
  guest_user_info: Unable to locate guest account [guest]!
[2010/12/04 12:28:45,  0] smbd/server.c:1201(main)
  ERROR: failed to setup guest info.
[2010/12/04 12:28:45,  0] smbd/server.c:1069(main)
  smbd version 3.4.7 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[...]

很明显,smbd 崩溃了。

在此之前,我没有对 samba 配置进行任何更改,除了安全更新之外没有安装任何东西,也没有创建或删除任何新用户。今天,我通过简单的运行将所有东西都修复并像往常一样顺利运行

sudo smbd restart

启动时的崩溃消失了,共享再次可供客户端使用。

不过,我不知道是什么过程导致了这种行为,我担心将来如何避免这种情况。任何关于什么进程可以对 smbd 崩溃负责的想法将不胜感激。另外,我很想知道重新启动 smbd 可能会修复什么,以及这是否是个好主意。

10.04 configuration boot samba
  • 6 6 个回答
  • 13551 Views

6 个回答

  • Voted
  1. William Ledoux
    2013-12-04T01:09:59+08:002013-12-04T01:09:59+08:00

    请注意,如果您有多个网卡,samba 甚至可能不会尝试启动(在 sys.log 中没有 smbd 的痕迹),因为它会等待错误的网络接口启动。

    1. 检查ifconfig以找到您要使用的接口。
    2. 然后检查/etc/samba/smb.confsamba 是否使用正确的界面
    3. 然后检查是否/etc/config/smbd.conf在启动 samba 之前等待正确的界面启动。例如,下面的行只会在 eth0 接口启动时启动 smbd:

    start on (local-filesystems and net-device-up IFACE=eth0 and started udev-finish)

    • 3
  2. Allan
    2010-12-05T13:39:41+08:002010-12-05T13:39:41+08:00

    我快速浏览了网络,它看起来像是权限问题或时间问题。例如我运行docky,通常它在登录后弹出一条通知,提示compiz未启用并且某些功能不会启用,但是当它实际出现时compiz已经有时间启动并且docky很好。如果 compiz 尚未启动,Docky 有能力回退到更基本的形式。然而,AWN(前卫窗口导航器)不会这样做,并且如果 compiz 不存在,即使它设法在以后的“日期”让它变得懒惰,也不会加载。尽管我所有的闲聊都是关于视觉 gui 元素的,但该理论也应该适用于服务程序。

    希望这有助于或至少给你一个想法。

    • 1
  3. Best Answer
    kwiksand
    2010-12-12T01:23:47+08:002010-12-12T01:23:47+08:00

    如果确实是时间问题,则可能意味着 smbd 启动前所需的某些事情(我猜是网络服务)没有及时发生。事实上,您可以在启动后启动它,这意味着您可能只需将它设置为非常低的启动优先级(即在最后,因为它似乎不依赖于任何其他服务)。

    您可以使用 update-rc.d 脚本来执行此操作。

    对于一些背景知识,检查 /etc/rc2.d(或 /etc/rc2.d 到 /etc/rc5.d 中的任何一个),它们是设置为在系统进入运行级别 2 - 5 时自动启动的服务(对于本练习,我们假设它们是相同的)。您可能会注意到有一个S20smbd表示自动启动 smbd(链接到启动脚本/etc/init.d/smbd),优先级为 20,其中优先级低的东西首先启动,直到运行级别目录中的所有内容已处理。

    通常,用户级启动将使用 99 的低优先级(最后启动),因此从 update-rc.d 文档中,我们将使用 98:

    • update-rc.d smbd 默认值 98 02

    这只是意味着将默认运行级别 (2-5) 的 smbd 的自动启动更新为优先级 98,因此它几乎将是最后启动的事情(取决于您的系统设置方式)。

    • 1
  4. tommaso
    2011-05-11T12:55:20+08:002011-05-11T12:55:20+08:00

    Ubuntu 11.04 (natty, amd64) 上还有一个问题。从引导日志:

    不要通过 /etc/init.d 调用初始化脚本,而是使用 service(8) 实用程序,例如 service S20smbd start

    由于您尝试调用的脚本已转换为 Upstart 作业,您还可以使用 start(8) 实用程序,例如 start S20smbd start: Unknown job: S20smbd

    因此,似乎 smbd 尝试以“S20smbd”启动,因此“服务”无法识别它。再次,系统启动后重新启动 smbd 可以修复它。

    我无法弄清楚新贵脚本中的问题出在哪里。任何帮助将不胜感激,谢谢。

    • 1
  5. Alek Silver
    2012-03-03T07:15:55+08:002012-03-03T07:15:55+08:00

    我遇到了同样的问题。我在阅读关于在公司服务器上安装 sendmail 的操作指南时找到了解决方案。

    通过在终端中键入以下内容来安装软件包sysv-rc-conf和sysvinit-utils。

    sudo apt-get install sysv-rc-conf sysvinit-utils
    

    然后你输入这个来配置你的系统(Ubuntu 10.04)在启动时加载nmbd :

    sudo sysv-rc-conf nmbd on
    
    • 1
  6. starblue
    2012-05-22T06:26:55+08:002012-05-22T06:26:55+08:00

    我认为这个问题是由于dhclient异步启动网络接口和其他需要网络接口的服务之间的竞争。

    很长一段时间以来,我的 Debian 系统偶尔都没有启动 Samba,而现在 mysqld(MythTV 后端需要)基本上也发生了同样的情况,这最终促使我更深入地研究它。

    如果 DHCPACK 及时到达并且 dhclient 在 Samba / mysql 启动之前调出接口,则一切正常,否则服务无法启动:

    mysqld: 120520 11:38:02 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
    
    May 20 12:50:38 piano smbd[1763]:   WARNING: no network interfaces found 
    

    我已经通过在其 init 脚本中启动 network-manager 后添加 15 秒延迟的丑陋 hack 来修复它,并在启动顺序中在 network-manager 之后移动两个 init 脚本。

    更好的方法是为网络接口添加适当的依赖项,但这似乎不适用于sysvinit.

    我认为其他解决方案风险太大(例如使用upstart)。

    • 1

相关问题

  • 如何完全删除 Ruby + Rails + Gems?

  • 保持多个工作站同步

  • 从 8.04 LTS 升级到 10.04 LTS 的体验?

  • 删除在线状态菜单,但保留注销菜单?

  • 什么可能会阻止 xrandr 屏幕之间的鼠标移动?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve