[问题] CentOS 3个ifcfg-eth* 同步的机制?

楼主: fishtw (游戏惨业工作者)   2017-11-16 15:13:40
各位好,目前我使用的环境是CentOS release 6.9 (Final)
系统上目前有3个ifcfg-eth0
分别是
/etc/sysconfig/networking/profiles/default/ifcfg-eth0
/etc/sysconfig/networking/devices/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth0
前两档案主要是源自system-config-network
现在发现我若是透过system-config-network 或是 用vim去修改3个中任一设定
回到shell以后3个档案都会被同步成相同的内容
若是用sed去变更,则3个就不会再被同步
请问这中间同步的机制是怎么运作呢??
用vim 随机改3个中任一个
[[email protected] etc]# FILE=$(find /etc/sysconfig -type f -name "ifcfg-eth0" |
shuf -n 1); grep -q ONBOOT=yes ${FILE} &&
STRING="%s/ONBOOT=yes/ONBOOT=no/g|wq" ||
STRING="%s/ONBOOT=no/ONBOOT=yes/g|wq"; vim -c ${STRING} ${FILE}; find
/etc/sysconfig -type f -name "ifcfg-eth0"
-ls
678526 4 -rw-r
作者: galic (嘎利)   2017-11-16 15:22:00
你有没有注意到 他们一开始inode number都一样 ref count都是3 所以是hard link 然后 sed 会破坏hard/soft link因为sed的实作是 先写到暂存 然后覆蓋原始档案
作者: jamselee (jamselee)   2017-11-19 17:08:00
推高手

Links booklink

Contact Us: admin [ a t ] ucptt.com