在 FreeBSD 裝了 squid 後記得調整 shutdown timeout 的長度

有裝過 squid 的應該多多少少會有印象,
每次 restart squid 的時候如果有人在使用就會等 30 秒才會停掉。
關機或重開時更是會卡在 squid 等不到 30 秒就被強制中斷關機程序,
其它 daemons 會被逕行終止造成系統變成不正常關機狀態。

造成這個問題的設定有兩個。
一個是 /usr/local/etc/squid/squid.conf 的 shutdown_lifetime,
它的預設值是 30 seconds。
而最重要的另一個設定就是 /etc/rc.conf 的 rcshutdown_timeout,
它的預設值恰巧跟 squid 一樣是 30 秒。
很顯然停止其它 services 需要的時間不可能是 0 秒,
所以常常輪到等待 squid 終止的途中整個關機程序就被強制中斷掉了。

我的解法很簡單,
就是直接加大 /etc/rc.conf 裡 rcshutdown_timeout 的值:

畢竟關機等久一點是沒差,
重點還是穩定就好。