尝试使用编辑 /etc/network/interfaces 的脚本重置本地 IP 地址

jon*_*rry 3 networking linux

我正在尝试编写一个设置本地 IP 地址的脚本。这是我到目前为止:

#!/bin/sh
echo -n \
"# interfaces(5) file used by ifup(8) and ifdown(8)\n"\
"auto lo\n"\
"iface lo inet loopback\n"\
"auto eth0\n"\
"iface eth0 inet static\n"\
"  address 192.168.2.130\n"\
"  netmask 255.255.255.0\n"\
"  gateway 192.168.2.1\n"\
"  dns-nameservers 8.8.8.8\n"\
> /etc/network/interfaces
/sbin/ifup eth0
Run Code Online (Sandbox Code Playgroud)

该文件/etc/network/interfaces看起来格式合理,但该ifup命令导致以下错误:

RTNETLINK answers: File exists
Failed to bring up eth0.
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

Ytv*_*wlD 6

我认为这是由 eth0 已经连接引起的。

您可能想先运行/sbin/ifdown eth0