配置链路聚合中极小错误——失之毫厘谬以千里
Posted 肀肀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置链路聚合中极小错误——失之毫厘谬以千里相关的知识,希望对你有一定的参考价值。
敲了以下命令配置team的链路聚合,
nmcli con add type team con-name team0 ifname team0 config "{"runner":{"name":"activebackup"}}"
nmcli con modify team0 ipv4.addresses 192.168.10.2/24 ipv4.method ma
nmcli con add type team-slave con-name team0-eth1 ifname eth1 master team0
nmcli con add type team-slave con-name team0-eth2 ifname eth2 master team0
奈何奇怪的事总是发生?
[[email protected] ~]# teamdctl team0 state
Device "team0" does not exist
总是告诉我没有这个设备,什么情况呢?查询各种资料,又不停的重复做,上述命令都成功执行,却总是提示没有这个设备?苦思悯想,奈何也发现不了。不得已用图形配成功,然后我发现了一个奇怪的事,之前我命令配的此句{"runner":{"name":"activebackup"}}在图形化中显示这样{runner:{name:activebackup}}。仿佛突然间获得了上帝的青睐,灵机一动,顿时发现错误之所在,肯定是此句有毛病"{"runner":{"name":"activebackup"}}"
翻书越度娘,答案明朗。
原来是 " " 和‘ ‘的区别!!
" " 这个叫双引号,意思是保留其中的变量属性,不进行转义处理。人话就是双引号里面有变量,就把这个变量给翻译成这个变量所代表的值。
‘ ‘ 这个叫单引号,意思是转义其中所有变量为单纯的字符串。人话就是如果单引号里面有变量,就不翻译这个变量的值。
可是这些解释和上述有关吗?这个双引号里又没有变量,里面只是夹杂着双引号,所以你只能理解里面夹杂的双引号被删除,所谓同性相斥吧!
所以你想打出里面的单引号,只能异性相吸呢!‘{"runner":{"name":"activebackup"}}‘ 可以这样打出,就完美呢!
或者你不怕麻烦的话,用\这个可以把任何符号变成其真实模样"{\"runner\":{\"name\":\"activebackup\"}}" 这样也OK。
好啦,实践我的猜想!
[[email protected] ~]# teamdctl team0 state
setup:
runner: activebackup
ports:
eth2
link watches:
link summary: up
instance[link_watch_0]:
name: ethtool
link: up
runner:
active port: eth2
总算找到我的设备呢!浪费了我一下午。。。。。。
不由感叹,真是失之毫厘,谬以千里啊!
任何细微差错在服务器上都不能通过。
以上是关于配置链路聚合中极小错误——失之毫厘谬以千里的主要内容,如果未能解决你的问题,请参考以下文章