目的:

用户可以自定义/etc/resolv.conf内容,且不被系统修改。

常规方法1:

/etc/sysconfig/network-scripts/ifcfg-eth0 网卡配置文件中增加PEERDNS=no

注意:云平台受cloud-init 管理网卡,制作镜像后创建新机器会被重置

# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=dhcp
DEVICE=eth0
NM_CONTROLLED=no
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
PEERDNS=no

常规方法2:

创建dhcp 配置文件 /etc/dhcp/dhclient-enter-hooks 写入空函数

#!/bin/sh
make_resolv_conf(){
:
}

chmod +x /etc/dhcp/dhclient-enter-hooks

常规方法3:

类似2,直接修改dhcp脚本:/usr/sbin/dhclient-script将里面的make_resolv_conf函数置空同上

然并卵..............

案例1:

方法2.方法3 仅配置 /etc/dhcp/dhclient-enter-hooks无效。重启系统后/etc/resolv.conf 并没有保持住,反而被置空

 查看是否有备份文件/etc/resolv.conf.save

[root@localhost ~]# ls -l /etc/resolv.conf*
-rw-r--r-- 1 root root 1 Dec 18 17:10 /etc/resolv.conf
-rw-r--r-- 1 root root 1 Dec 18 17:13 /etc/resolv.conf.save
[root@localhost ~]# cat /etc/resolv.conf.save [root@localhost ~]#

解决:

  删除/etc/resolv.conf.save

原因解析:

/etc/resolv.conf.save 为备份文件,当dhcp脚本make_resolv_conf 为空时,直接从.save文件进行复制,导致配置无效。

案例2:

  https://www.cnblogs.com/xulingjie/p/9227799.html

  每次重启服务器后,/etc/resolv.conf文件就被自动还原了,最后发现是被Network Manager修改了。

查看Network Manager服务状态

systemctl status  NetworkManager

停止Network Manager服务

systemctl stop  NetworkManager

关闭Network Manager开机启动

systemctl disable  NetworkManager

CentOS7.6 鲜为人知的/etc/resolv.conf 之 /etc/resolv.conf.save (保持/etc/resolv.conf不被修改:/etc/dhcp/dhclient-enter-hooks 无效之/etc/resolv.conf被清空的特殊案例)的更多相关文章

  1. Centos7.5搭建ELK-6.5.0日志分析平台

    Centos7.5搭建ELK-6.5.0日志分析平台 1. 简介 工作工程中,不论是开发还是运维,都会遇到各种各样的日志,主要包括系统日志.应用程序日志和安全日志,对于开发人员来说,查看日志,可以实时 ...

  2. iOS 9之适配ATS(转载)

    iOS 9系统已经出来了,而网络方面的ATS(App Transport Security)特性可以说每个人都要经历.而我这篇博客,就是结合我最近几天的经历,来谈谈从服务器到iOS客户端对ATS的适配 ...

  3. coredns CrashLoopBackOff 报错

    1.kubectl logs -f coredns-99b9bb8bd-47mvf -n kube-system .:53 2018/09/22 07:39:37 [INFO] CoreDNS-1.2 ...

  4. Python并发编程-Redis

    Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Remote Dictionary Server(Redis)是一个基于 key-value ...

  5. 在linux服务器上装svn版本管理,自动部署代码到项目

    在linux服务器上装svn版本管理,自动部署代码到项目 http://bbs.aliyun.com/read/9715.html?spm=5176.7114037.1996646101.1.W3zw ...

  6. 阿里云上部署了zabbix,突然无法收到报警邮件的解决办法

    在阿里云上部署了zabbix,一直能正常接收到zbx发来的报警邮件(报警邮箱是163的),不知是什么原因,突然无法接收到报警邮件了. 但在服务器上手动执行echo "hello"| ...

  7. Linux yum 安装 Nginx

    搭建 Nginx 静态服务器 安装 Nginx 使用 yum 安装 Nginx: yum install nginx -y 修改 /etc/nginx/conf.d/default.conf,去除对 ...

  8. 在linux服务器上装svn版本管理,自动部署代码到web项目

    在linux服务器上装svn版本管理,自动部署代码到项目 1.安装svn服务器端  yum install subversion   从镜像下载安装svn服务器端 中间会提示是否ok,输入y,确认  ...

  9. jenkins + maven + nexus + [ svn 或 GitLab 或 GitHub ]

    目录 介绍 DevOps平台四大模块 针对DevOps开源项目 Jenkins 介绍 Maven 介绍 maven的核心概念介绍 SVN介绍 Nexus介绍 Maven私服的 个特性: 流程图 环境搭 ...

随机推荐

  1. vue闪现问题,出现{{xxx}}解决方法

  2. idea中解决整合SSM加载不到dataSource;

    idea在搭建maven的ssm项目中注入dataSource报错解决方案: 在整合ssm时候,发现 dataSource加载不到,并报错:解决办法为:file–>project structu ...

  3. Atcoder Grand Contest 002 F - Leftmost Ball(dp)

    Atcoder 题面传送门 & 洛谷题面传送门 这道 Cu 的 AGC F 竟然被我自己想出来了!!!((( 首先考虑什么样的序列会被统计入答案.稍微手玩几组数据即可发现,一个颜色序列 \(c ...

  4. 【转】群体研究套路:开心果denovo+重测序+转录组+群体进化+选择位点

    转自公众号Eric生信小班.学习群体遗传套路 中科院昆明动物园吴东东研究团队联合国外研究团队2019年在Genome Biology发表题为Whole genomes and transcriptom ...

  5. [R]在dplyr函数的基础上编写函数-(3)tidyeval

    dplyr的优点很明显,数据框操作简洁,如filter(df, x == 1, y == 2, z == 3)等于df[df$x == 1 & df$y ==2 & df$z == 3 ...

  6. perl 子函数传入多个数组

    perl中的引用和C中的指针一样,用"\"标识,引用后可使用符号"->"取值.解引用则在对应的数据类型前加$,@ 或%. 这里这里用两数组求和做示例,引用 ...

  7. nginx负均

    Nginx负载均衡详解 上一篇中我说啦nginx有哪些中负载均衡算法.这一结我就给如果操作配置的给大家做详细说明下. 首先给大家说下upstream这个配置的,这个配置是写一组被代理的服务器地址,然后 ...

  8. Excel-同个工作簿中,多个工作表中有格式一致的表格,做汇总透视合并信息

    12.同个工作簿中,多个工作表中有格式一致的表格,做汇总透视合并信息 在工作簿中新建一个工作表-汇总表->按Alt+D+P调出数据透视表和数据透视图向导->选择"多重合并计算数据 ...

  9. 简易kmeans-c++版本

    typedef double dtype; 主要接口: void Kmeans(const vector<vector<dtype> > &d,int k,string ...

  10. MYSQL(3)

    加载C盘下的目录 全表查询 查询部分字段 查询总数 条件过滤 and or 包含 范围检查 between and 否定结果not 匹配任意字符    like 以什么开始^   rlike 以什么结 ...