linux下hosts文件修改后如何生效
时间: 2024-06-11 08:04:05 浏览: 11
在 Linux 中,您可以使用以下两个命令来刷新 hosts 文件的缓存并生效:
1. 重启网络服务:
```bash
sudo service network-manager restart
```
2. 刷新 DNS 缓存:
```bash
sudo systemctl restart systemd-resolved.service
```
注意:以上命令需要使用管理员权限执行。
相关问题
linux下修改hosts并立即生效
要在 Linux 下修改 hosts 文件并立即生效,您需要按照以下步骤进行操作:
1. 打开终端并输入以下命令以编辑 hosts 文件:
```
sudo nano /etc/hosts
```
2. 在编辑器中添加或修改需要的域名和 IP 地址。每个主机名和 IP 地址应在一行上,以空格或制表符分隔。例如:
```
192.168.1.2 example.com
```
3. 保存文件并退出编辑器。如果您在 Nano 编辑器中使用的是默认键盘快捷键,可以按下 “Ctrl”+“X” 键,然后输入 “Y” 来保存文件并退出。
4. 刷新 DNS 缓存以使您的修改生效。在大多数情况下,使用以下命令可立即转换到新的 hosts 配置:
```
sudo systemctl restart NetworkManager
```
如果您的 Linux 版本没有 Systemd,则可以使用以下命令:
```
sudo /etc/init.d/networking restart
```
5. 使用 ping 命令测试您的新 hosts 配置是否正常工作。例如:
```
ping example.com
```
如果提示出现问题,请再次检查您在 hosts 文件中所做的更改。
linux修改完/etc/hosts文件后如何生效
在 Linux 中修改完 `/etc/hosts` 文件后,可以采取以下几种方法使其生效:
1. 重新启动网络服务:可以使用以下命令重启网络服务,使修改后的 `/etc/hosts` 文件立即生效。
```
sudo service networking restart
```
2. 重新启动网络管理器:如果你的系统使用网络管理器(NetworkManager),可以使用以下命令重启网络管理器,以使修改后的 `/etc/hosts` 文件生效。
```
sudo service NetworkManager restart
```
3. 清除本地 DNS 缓存:有时候 DNS 缓存可能会导致修改后的 `/etc/hosts` 文件不立即生效。你可以使用以下命令来清除本地 DNS 缓存。
- 对于 Systemd 系统:
```
sudo systemd-resolve --flush-caches
```
- 对于非 Systemd 系统:
```
sudo /etc/init.d/dns-clean restart
```
4. 重启计算机:最简单的方法就是重启计算机。重启后,修改后的 `/etc/hosts` 文件将会生效。
请注意,以上方法中的一些命令可能需要使用管理员权限(通过 `sudo`)执行。