我這里主要是因為windows轉碼造成的:將可執行的check_nginx.sh檢測腳本內容復制到U盤,然后插入內網windows,將內容用nodepad++打開,復制,粘貼到服務器的check_nginx.sh里面,關閉nginx無法觸發腳本,VIP也不漂移,手動執行check_nginx.sh,終於報錯了:在Linux中執行.sh腳本,異常/bin/sh^M: bad interpreter: No such file or directory。
我這里的解決方案:
1、直接將可執行的check_nginx.sh上傳到服務器,並賦予執行權限755,重啟keepalived和相應的服務,確保正常運行再進行重測。
2、Notepad++ :編輯 -> 文檔格式轉換 -> 轉換為 UNIX 格式。
3、還有別的一些方案,詳情自行搜索——在Linux中執行.sh腳本,異常/bin/sh^M: bad interpreter: No such file or directory。
