我正在使用 ubuntu 服务器为电影创建备份服务器,并在其上安装了 ssh、vstpd 和 samba。
我注意到服务器上的 samba 和 vsftp 从未随服务器启动而启动。在 Windows 文件资源管理器上访问它时显示以下消息:
Windows 无法访问 \\(服务器名称)
检查名字的拼写 (...)
除非我启动 putty 并使用 ssh 登录到服务器。我甚至不需要在上面做任何事情,因为之后服务器就可以正常工作,我甚至可以从 tty 注销,它仍然可以工作。
我这里漏掉了什么?我以为 samba 和 vsftp 会在服务器启动时自动启动,而不是在用户登录时自动启动。我应该设置自动登录吗,例如这个答案(还有这个)?我试过了,但没有按预期工作。
输出systemctl smbd status
● smbd.service - LSB: start Samba SMB/CIFS daemon (smbd)
Loaded: loaded (/etc/init.d/smbd; bad; vendor preset: enabled)
Active: active (running) since Fri 2018-05-25 16:43:19 -03; 13s ago
Docs: man:systemd-sysv-generator(8)
Process: 1000 ExecStart=/etc/init.d/smbd start (code=exited, status=0/SUCCESS)
Tasks: 3
Memory: 23.2M
CPU: 233ms
CGroup: /system.slice/smbd.service
├─1012 /usr/sbin/smbd -D
├─1021 /usr/sbin/smbd -D
└─1080 /usr/sbin/smbd -D
May 25 16:43:18 NAS systemd[1]: Starting LSB: start Samba SMB/CIFS daemon (smbd)...
May 25 16:43:19 NAS smbd[1000]: * Starting SMB/CIFS daemon smbd
May 25 16:43:19 NAS smbd[1000]: ...done.
May 25 16:43:19 NAS systemd[1]: Started LSB: start Samba SMB/CIFS daemon (smbd).
我重启了服务器,等了一会儿,然后使用date; ssh SeverIp
我的 Debian 笔记本登录并快速输入了密码。上面输出的第二行日期systemctl
与登录日期仅相差 3 秒。
答案1
我有点困惑。你只需要通过 ssh 登录,它就会自动启动,还是你必须在 ssh 登录后手动启动每个服务?
通常,自动启动服务的最佳方法是使用 systemctl。首先,输入systemctl status smbd
,如果它正在运行,您应该会得到如下输出:
第二行显示已启用,这意味着它将在启动时启动。如果它没有运行,您可以通过键入 来启动它systemctl start smbd
。然后它会要求您输入密码进行身份验证,之后服务开始运行。如果它未启用,您可以键入systemctl enable smbd
以使其在系统启动时启动。当您启用它时,它会要求您输入两次密码。您可以对 vstpd 和大多数服务(包括 ssh)执行相同的操作,只需替换命令的 smbd 部分。