如何为ip link命令转义特殊字符设备名称

时间:2018-03-27 15:25:45

标签: linux escaping mtu

我需要更改2台设备的mtu,如下所示。

这项工作很好:

ip link set dev ethdc1e2470 mtu 9000 

......但是这个:

ip link set dev ethdc1e2470-emu mtu 9000

...给出:

  

RTNETLINK答案:参数无效)

我认为此错误是由设备名称中的破折号(-)引起的。所以我尝试使用\转义它,但这也不起作用:

$ ip link set dev ethdc1e2470\-emu mtu 9000
RTNETLINK answers: Invalid argument

$ ip link set dev ethdc1e2470\\-emu mtu 9000
Cannot find device "ethdc1e2470\-emu"

你能帮我找出正确的逃脱吗?

更改不是选项的设备名称,这些是openvswitch自动生成的设备名称。

1 个答案:

答案 0 :(得分:0)

实际上,openvswitch的仿真接口似乎不支持大于1500的MTU。

如果我使用ifconfig命令,它会给出更合理的错误,我可以设置mtu< 1500就好了。

ifconfig eth58fd8938-emu mtu 9000 up
SIOCSIFMTU: Invalid argument

所以它不是真正的设备名称问题。感谢@jos提供了有用的评论

如果有其他人遇到这个问题那么

如果我在XEN DomU配置中将网卡模型从默认的rtl8139切换到e1000,那么结果仿真接口可以成功设置MTU 9000。

然而,Xen stubdomain设备模型不允许设置MTU> 1500无论是rtl8139还是e1000