一、引言

最近在学习 《Unix网络编程 卷1:套接字联网 API》。在编译其第一份代码 daytimetcpcli.c 的时候,发现作者使用到了 daytime 服务。比如下面这行代码:

servaddr.sin_port   = htons(13);    /* daytime server */

根据网上搜索相关信息得知,13 就是 xinet 内置的 daytime 服务的运行端口,其作用是,当有客户端请求 13 端口,daytime 服务则返回一串表示系统时间的字符串,比如:

25 JUN 2019 05:30:36 CST

因为我自己电脑上使用的是 Manjaro 系统(同 ArchLinux),因此在开启 xinetd daytime 服务上遇到了一些与其他系统(Ubuntu、Centos)不同的问题,比如说:

> 我安装完 xinetd 之后,在 /etc/xinetd.d 目录下根本就没有 daytime 文件。

接下来,我就把我解决这个问题的方法记录下来,以供网友们参考。

二、解决

根据网上的教程,安装完 xinetd 之后,到 /etc/xinetd.d 文件夹下编辑下 daytime 文件内容,将 disable 设置为 no 即可。

但是,等我安装完之后,根本就没发现有 daytime 文件。

不过天无绝人之路,我在另一个虚拟机 Ubuntu 环境下安装了 xinetd,然后在 /etc/xinetd.d 中找到 daytime 文件,然后将其复制到 Manjaro 的对应韦志中,新建一个 daytime 文件,修改了下 disable 的值为 no,重启了下 xinetd 服务,竟然就成功了!

这里我说的有点快,我简单总结下步骤:

1. 安装 xinetd

$ sudo pacman -S xinetd

2. 编辑 daytime

$ cd /etc/xinetd.d
$ sudo vim daytime

粘贴以下内容:

# description: An internal xinetd service which gets the current system time
# then prints it out in a format like this: "Wed Nov 13 22:30:27 EST 2002".
# This is the tcp version.
service daytime
{disable         = notype            = INTERNALid              = daytime-streamsocket_type     = streamprotocol        = tcpuser            = rootwait            = no
}
# This is the udp version.
service daytime
{disable         = notype            = INTERNALid              = daytime-dgramsocket_type     = dgramprotocol        = udpuser            = rootwait            = yes
}

3. 重启 xinetd.service

$ systemctl enable xinetd.service
$ systemctl restart xinetd.service

可以通过下面这个命令来查看是否开启 xinetd 服务

$ systemctl list-unit-files

4. 验证 daytime 服务
这样,运行《Unix网络编程 卷1:套接字联网 API》的 daytimetcpcli.c 代码,即可看到运行结果:

$ ./daytimetcpcli 127.0.0.1
25 JUN 2019 05:30:36 CST

至此,这个问题算是解决了:)

希望这篇博客能够给你带来一些帮助。

04.配置unp.h头文件出现开启 xinetd daytime 服务时 /etc/xinetd.d下 没有daytime 文件的解决办法相关推荐

  1. 《UNIX网络编程》配置unp.h头文件

    0x00 前言 文章中的文字可能存在语法错误以及标点错误,请谅解: 如果在文章中发现代码错误或其它问题请告知,感谢! 系统版本:Ubuntu 14.04_64 最后更新:2022-03-23 0x01 ...

  2. Unix——《Unix网络编程》配置unp.h头文件

    <Unix网络编程 卷1>unp.h 头文件及其编译问题 本书源码下载地址 http://www.unpbook.com 解压tar -zxvf unpv13e.tar.gz 其实各个编译 ...

  3. UNIX网络编程之旅-配置unp.h头文件环境

    最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#include "unp.h"  相当有个性并且也很便捷 于是我把第三版的源代码编译实现了这个过程 ...

  4. [转载]配置unp.h头文件环境

    原文:http://blog.csdn.net/wd4084/article/details/6452574 最近在学习Unix网络编程(UNP),书中steven在处理网络编程时只用了一个#incl ...

  5. Ubuntu16.04系统下汉字显示为方框解决办法

    Ubuntu16.04系统下汉字显示为方框解决办法 问题详情 打开Ubuntu系统,发现中文变方框了 问题分析 之前中文显示好好的,突然就中文变方框了.原先以为是语言的问题,后面换成了别的中文样式,发 ...

  6. 安全狗php站点404,开启安全狗响应内容保护导致404返回200状态码的解决办法

    开启安全狗响应内容保护导致404返回200状态码的解决办法 2020-04-08 开启安全狗响应内容保护导致404状态码返回200的解决办法 今天无意中对www.tbadc.com的404错识做了一个 ...

  7. Unix网络编程之-------unp.h头文件详细配置-1

    unix网络编程unp.h最详细全面配置说明 今天开始学习Unix网络编程这本大神之作了,由于之前在学习另外一本杰作Unix环境高级编程,遇到过第一个程序编译报错的情况,知道这是大神自己写的头文件在我 ...

  8. 远程ubuntu 20.04的nvidia驱动自动更新,机器重启后,ToDesk或者向日葵等远程连接黑屏,解决办法:为远程设备添加虚拟显示器

    0 避坑提醒 第4部分的解决办法,很多网友反映,会导致物理显示器不能用!请仔细阅读文章里的解决办法. 请仔细阅读第5部分的特别注意事项,虚拟显示器会和物理显示器冲突.让虚拟显示器和物理显示器同时工作的 ...

  9. Android Studio开启虚拟机报错!emulator: ERROR: x86 emulation currently requires hardware acceleration!解决办法梳理

    1.如果确认电脑没有开启Intel Virtualization Technology,那么先进BIOS里开启,然后再进行如下步骤,如果不确认,进入第二步. 2.到Android SDK的安装路径下, ...

最新文章

  1. Tornado、Bottle以及Flask
  2. Intel® oneAPI Toolkit编译VASP
  3. exists的用法 python_10 个 Python 开发技巧
  4. 一年有几个月几个季度_胎教几个月开始 注意事项有哪些?
  5. 打印管理 php,window_强化Windows Server 2008下的打印管理,  打印管理从来都是Windows Se - phpStudy...
  6. SpringBoot集成Flowable
  7. select2,利用ajax高效查询大数据列表(可搜索、可分页)
  8. g++是什么_路由器信号分为2.4G和5G,有什么区别?怎么选?
  9. mathtype 公式分节隐藏
  10. 【电路设计】AD17使用及PCB绘制总结
  11. 网站分析工具深度讲解之访问来源统计(一)
  12. React:一、初识react
  13. 用python画卡通人物的画法_教你绘制扁平化风格的卡通人物肖像
  14. Visual Assist X 10.9 builds 2333 with patch.7z
  15. omf多路径 oracle_Oracle OMF 功能详解
  16. uniapp 选择元素,操作元素属性
  17. 红帽linux安装docker,在CentOS7.6、红帽7.6系统中安装Docker:只需3条命令
  18. 渲染效果图哪家好?2022最新实测(三)
  19. 2022年数维杯国际赛C题 如何利用大脑结构诊断阿尔茨海默氏病
  20. java+subject+login_Java Subject類代碼示例

热门文章

  1. 使用Cerebro管理ES集群
  2. 【每日蓝桥】12、一三年省赛Java组真题“振兴中华”
  3. php设置时区的两种方法
  4. 关于程序员的职业规划分析
  5. php网页地图上自定义,如何添加在线自定义地图
  6. 真实收益DeFi崛起 这些DeFi协议已采用它
  7. 【mysql】 Windows下使用DOS命令进入MySQL数据库
  8. 基于JAVASEOUL设计师品牌代购商城计算机毕业设计源码+系统+lw文档+部署
  9. 服务器输出音频文件,云服务器音频输出
  10. 技术人修炼之道阅读笔记(七)系统性思维方法