关于named服务启动失败的解决方法
前言:
相信很多刚接触Linux的人,都有配置过bind域名解析系统吧,但是大部分人都是自学配置该服务,而去照着书上敲或者视频等资料敲的时候都能成功允许该服务。但是当脱离这些资源自己去配置时,经常会因为配置问题而出现以下报错信息:
看到这里人是不是崩溃了,对于英语水平较低,或者不会看日志的你,现在估计一头雾水的去重复重复检查配置,待配置文件全部都检查过后,依然找不到问题所在,有时候因为你的不注意多输入一个标点符号都会造成服务启动失败。以前我也经常碰到这种情况,只能去网上查找资料,可是当你不断的重复对比配置文件时发现配置根本就没有错,就是起不来服务。这时我们就应该想有没有类似于编程语言IDE那种输入错误语法会检查出相应错误语法的方法呢,答案是有的那就是named-checkconf和named-checkzone。
下面将介绍两种语句的用法
named-checkconf用法
#使用named-checkconf命令可以对named配置文件进行语法检查。需要指定要检查的配置文件的名称,如果没有指定则默认为/etc/named.conf文件。
语法格式: named-checkconf [参数] [配置文件]
常用参数:
-b 显示情况摘要并退出
-z 执行named.conf配置文件中找到的所有主要区域的测试负载
-t 将现有目录切换至指定目录以便处理配置文件中的已包括伪命令
named-checkzone用法
#检查数据区域文件
named-checkzone
常用参数:
-q 安静模式
-d 启用调试
-c <类别> 指定区域的类别
下面介绍使用这两个方法检查配置
使用named-checkconf
以上检查出主配置文件/etc/name.conf中的12行附件出现错误语法为“;”。
打开主配置文件发现错误的标点,将它去掉。
使用named-checkzone
对区域文件/var/named/192.168.1.arpa进行有效性检查和转换:
以上检查区域文件没有问题
启动服务