1. 程式人生 > >sed -i遇到的坑

sed -i遇到的坑

sed -i會將軟連結變成檔案

  • 首先檢視下grub.conf檔案,是一個軟連結,指向../boot/grub/grub.conf 

  • 使用sed -i修改下grub.conf中的內容 

  • 再檢視grub.conf檔案。發現grub.conf由軟連結變成了檔案。 

問題

  • 當你想修改核心引數,將crashkernel=auto修改為crashkernel=512M,並新增elevator=deadline引數。如果使用sed -i這種方式,會將/etc/grub.conf由軟連結變為檔案,重啟機器之後,會發現引數修改並不生效。

原因

  • 作業系統在重啟的過程中,載入的是../boot/grub/grub.conf檔案。所以,當使用sed -i之後,/etc/grub.conf由連結變成了檔案,導致../boot/grub/grub.conf中並沒有產生對應的修改,因此導致引數修改不生效。

解決

  • 不要使用sed -i這種方式修改,使用vim手動修改。