我有一个简单的任务:设置一个 ToD 服务器......它不是 NTP。它在端口 37 上运行。它似乎与 inetd 或 xinetd 捆绑在一起。
应安装在 Debian 或 CentOS 上。或者 FreeBSD(pfsense 路由器)。
有关如何进行的任何提示?我被卡住后的两个起始链接:
如果有一种方法来测试 ToD 服务器是否正在运行,也非常感谢。我有很多服务器在运行,但不知道是否有任何服务器已经运行了 ToD 服务
原因:我将使用 CMTS 和电缆调制解调器使用称为 DOCSIS 3 的标准设置通过同轴电缆宽带的解决方案。为此,电缆调制解调器需要从 ToD 服务器(时间)接收时间。
更新/解决方案
时间是RFC 868,几乎不再使用,因为 NTP 和其他更好。但是某些系统需要旧的 RFC 868 端口 37 时间 - 例如,使用 CMTS 的同轴电缆上的互联网和电缆调制解调器需要一个工作时间服务器(在 DOCSIS 文档中称为时间服务器 = ToD 服务器)。可以为 Debian 安装的 xinetd 包括一个时间服务器。它只需要在 etc/xinetd.d/time 中启用(对于 TCP 和/或 UDP 禁用=否)
在 pfSense 2.4 上,我安装了自定义 xinetd 服务。我附加了必要的行列表/etc/services,并写了一节/var/etc/xinetd.conf。重新加载xinetd后,服务运行成功。
但是,/var/etc/xinetd.conf一段时间后文件会自动覆盖,我写的节被删除,服务正在重新加载,因此我的自定义 xinetd 服务消失了。
如何使对 xinetd 配置的更改持久化?
愚蠢的问题...我无法让 xinetd 在我的 Linux 机器(CENTOS 4.8)上启动。
我已经通过 yum 删除它并重新安装它。当我尝试启动、停止等时,我完全没有收到任何错误。
[root@server ~]# service xinetd stop
[root@server ~]# service xinetd start
[root@server ~]# service xinetd restart
Run Code Online (Sandbox Code Playgroud)
我希望从系统中看到一些标准状态(例如“服务已启动 - [确定]”我也没有在 /var/log/messages 中看到任何日志条目
我尝试使用 -d 选项运行 init 脚本,但没有。没有错误。没有服务启动的确认消息。没有什么。
有任何想法吗?
[更新] - 根据建议,这是 cat /etc/init.d/xinetd 的输出
#!/bin/bash
#
# xinetd This starts and stops xinetd.
#
# chkconfig: 345 56 50
# description: xinetd is a powerful replacement for inetd. \
# xinetd has access control mechanisms, extensive \
# logging capabilities, the ability to …Run Code Online (Sandbox Code Playgroud) 我在xinetd 中使用percona-clustercheck(随 Percona 的 XtraDB Cluster 软件包一起提供),并且在尝试 curl clustercheck 服务时遇到错误。
/usr/bin/clustercheck:
#!/bin/bash
#
# Script to make a proxy (ie HAProxy) capable of monitoring Percona XtraDB Cluster nodes properly
#
# Author: Olaf van Zandwijk <olaf.vanzandwijk@nedap.com>
# Documentation and download: https://github.com/olafz/percona-clustercheck
#
# Based on the original script from Unai Rodriguez
#
MYSQL_USERNAME="clustercheckuser"
MYSQL_PASSWORD="clustercheckpassword!"
ERR_FILE="/dev/null"
AVAILABLE_WHEN_DONOR=0
#
# Perform the query to check the wsrep_local_state
#
WSREP_STATUS=`mysql --user=${MYSQL_USERNAME} --password=${MYSQL_PASSWORD} -e "SHOW STATUS LIKE 'wsrep_local_state';" 2>${ERR_FILE} …Run Code Online (Sandbox Code Playgroud) 我希望通过任意端口执行 xinetd 启动的脚本。但是,经过一些测试后,我似乎需要在 /etc/services 上为 xinetd 显式定义服务和端口以启用该服务。
xinetd 中是否有一个选项,我可以在其中禁用对 /etc/services 的查找或指定一个备用文件来查找服务/端口?