Oracle 官方文檔明確警告: 安裝完成後,在 Oracle 軟體運行期間,絕不可手動刪除或設置 cron 任務清理
/tmp/.oracle或/var/tmp/.oracle目錄及其檔案。後果:Oracle 軟體會遇到間歇性 hang,Oracle Clusterware 安裝失敗並報錯
CRS-0184: Cannot communicate with the CRS daemon。
| 路徑 | 用途 | 關鍵檔案 |
|---|---|---|
| /tmp/.oracle | Oracle 進程間通訊 (IPC) 暫存檔、鎖檔、Socket 檔 | s# |
| /var/tmp/.oracle | 持久化程度較高的 Clusterware 通訊檔案 | OCR 鏡像、CRS 進程通訊端點 |
# 需 root 權限執行 # 1. 重建 /var/tmp/.oracle 目錄結構 /bin/mkdir -p /var/tmp/.oracle # 2. 設定 /var/tmp 權限 (sticky bit + 全權限) /bin/chmod 01777 /var/tmp/ /bin/chown root /var/tmp/ # 3. 設定 .oracle 子目錄權限 /bin/chmod 01777 /var/tmp/.oracle /bin/chown root /var/tmp/.oracle # 4. 同樣處理 /tmp/.oracle(如也被刪除) /bin/mkdir -p /tmp/.oracle /bin/chmod 01777 /tmp/ /bin/chown root /tmp/ /bin/chmod 01777 /tmp/.oracle /bin/chown root /tmp/.oracle
1 (最高位):Sticky Bit - 只有檔案擁有者、目錄擁有者或 root 可刪除目錄內檔案777:所有用戶可讀寫執行# 檢查目錄存在與權限 ls -ld /tmp/.oracle /var/tmp/.oracle # 輸出應包含 drwxrwxrwt (t 代表 sticky bit) # 觀察 CRS 自動重建檔案 watch -n 2 'ls -la /tmp/.oracle/ /var/tmp/.oracle/' # 檢查 CRS 狀態 crsctl check crs crsctl status resource -t
chattr +i 鎖定目錄屬性防誤刪(需評估對 CRS 重建的影響)