etc/resovl.conf和resolv.conf
时间: 2024-06-16 18:05:05 浏览: 263
/etc/resolv.conf是一个配置文件,用于配置Linux系统中的DNS解析器。它指定了系统在进行域名解析时要使用的DNS服务器和搜索域。
resolv.conf文件通常包含以下几个重要的配置项:
1. nameserver:指定DNS服务器的IP地址。可以配置多个nameserver项,系统将按顺序尝试这些DNS服务器进行域名解析。
2. search:指定默认的搜索域。当用户输入一个不完整的域名时,系统会自动在搜索域中进行搜索。
3. domain:指定系统的默认域名。
4. options:指定一些附加的选项,如超时时间、是否启用DNS缓存等。
相关问题
if [ -f /etc/resolv.conf ];then sudo chattr -i /etc/resolv.conf sudo sed -i '/domain huawei.com/d' /etc/resolv.conf sudo sed -i '/search huawei.com/d' /etc/resolv.conf sudo sed -i '/10.129.0.84/d' /etc/resolv.conf sudo sed -i '/10.129.0.148/d' /etc/resolv.conf sudo sed -i '/10.144.90.20/d' /etc/resolv.conf sudo sed -i '/10.98.48.39/d' /etc/resolv.conf else sudo touch /etc/resolv.conf sudo chattr -i /etc/resolv.conf fi
这是一个用于管理 Linux 系统 `/etc/resolv.conf` 文件的脚本片段,主要用于检查、修改或创建该文件。以下是详细解析:
---
### 脚本功能分析
1. **判断文件是否存在**
```bash
if [ -f /etc/resolv.conf ]; then
```
这行代码会检测系统中是否已经存在 `/etc/resolv.conf` 文件。如果存在,则进入 `then` 分支;若不存在,则跳转至 `else` 分支。
2. **移除文件的只读属性**
```bash
sudo chattr -i /etc/resolv.conf
```
如果文件存在,首先需要解除其不可变属性 (`immutable`),以便对其进行编辑操作。`chattr -i` 表示关闭文件的不可变标志位。
3. **删除指定内容**
下面几行使用了 `sed` 工具逐条匹配并删除特定配置项:
```bash
sudo sed -i '/domain huawei.com/d' /etc/resolv.conf
sudo sed -i '/search huawei.com/d' /etc/resolv.conf
sudo sed -i '/10.129.0.84/d' /etc/resolv.conf
sudo sed -i '/10.129.0.148/d' /etc/resolv.conf
sudo sed -i '/10.144.90.20/d' /etc/resolv.conf
sudo sed -i '/10.98.48.39/d' /etc/resolv.conf
```
具体作用是通过正则表达式找到包含某些关键字(如 `domain huawei.com`, `search huawei.com` 或者特定 DNS 地址)的行,并将其从文件中删除。
4. **当文件不存在时的操作**
若未发现 `/etc/resolv.conf` 文件,则执行以下动作:
```bash
sudo touch /etc/resolv.conf
sudo chattr -i /etc/resolv.conf
```
首先用 `touch` 创建一个新文件,然后再次设置文件为不可变状态。
---
### 总结
此脚本的核心任务是对 `/etc/resolv.conf` 文件进行维护,包括清理旧有的 DNS 设置以及确保文件的存在性和安全性(防止未经授权的更改)。通常这种场景出现在需要标准化网络配置的企业环境内。
---
/etc/hosts.conf和/etc/resolv.conf区别
`/etc/hosts.conf` 文件是一个本地的文本文件,用于将主机名映射到 IP 地址。当计算机需要连接到一个主机时,它会首先查找 `/etc/hosts.conf` 文件,以确定该主机名对应的 IP 地址。如果主机名在该文件中不存在,则计算机会继续查询 DNS 服务器以获取 IP 地址。
`/etc/resolv.conf` 文件是一个用于配置 DNS 解析器的本地文件。它指定了 DNS 解析器应该使用哪些 DNS 服务器以及查询域名时应该使用哪些搜索后缀。当计算机需要解析一个域名时,它会首先查找 `/etc/resolv.conf` 文件,以确定应使用哪些 DNS 服务器进行查询。
因此,这两个文件的作用不同,但都与网络连接和域名解析有关。
阅读全文
相关推荐
















