sudo vi /ect/network/interfaces 显示一个空文件

sudo vi /ect/network/interfaces 显示一个空文件

我一直在尝试运行我的 Ubuntu 服务器,我发现我需要将 IP 设为静态,所以我尝试使用sudo vi /ect/network/interfaces以下命令执行此操作,结果出现了

在此处输入图片描述

然后我按 D 然后出现

在此处输入图片描述

我尝试了sudo vi /etc/resolv.conf

编辑其他文件并且它做了完全相同的事情它只是转到第二部分并使用不同的文件名......

然后我进入 webmin 并尝试编辑该文件/ect/network/interfaces(仅限此文件),我可以在 webmin 中编辑它。那么有人有关于如何修复此问题的任何信息/解决方案吗?我在装有 Windows 10 的台式机上运行,​​这是在虚拟机上运行的 16.04


当我输入 sudo vi /etc/resolv.conf 时发生了以下情况 在此处输入图片描述

答案1

您的命令包含拼写错误。您输入的是ect

sudo vi /ect/network/interfaces

你的意思是etc

sudo vi /etc/network/interfaces

因此尝试在不存在的目录vi内进行编辑,这样您就会收到提示。ect[New DIRECTORY]

您的第二条命令应该有效(没有拼写错误),但通常它/etc/resolv.conf是一个指向您不应手动编辑的文件的符号链接。您应该已经在屏幕上看到了这一点,可能和的值nameserver不同search

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
search lan

您说您最终得到了“第二部分”,它只是一个vi带有空文件的普通屏幕。也许有其他程序编辑了该文件并将其留空?

无论如何,纠正你的错别字,编辑/etc/network/interfaces(复制/粘贴文件的全名以避免错别字),一切都应该没问题。

答案2

您需要编辑 /etc/network/interfaces。我只使用 nano,因此通常命令如下

sudo nano /etc/network/interfaces

这是一个示例配置。

auto eth0
iface eth0 inet static
address 10.0.0.100
netmask 255.255.255.0
gateway 10.0.0.1
dns-nameservers 8.8.8.8 8.8.4.4

要使更改生效,您可以运行以下命令

sudo ifdown [interface]; sudo ifup [interface]

相关内容