CentOS 6 系列默認安裝 java-1.5.0-gcj 等 OpenJDK 變體,版本極老 (1.5/1.6) 且缺乏安全更新,部署企業級 Java 應用前必須徹底清理。本文提供最小風險卸載流程。
# 1. 查看 Java 版本
java -version
# 預期輸出:java version "1.5.0" / gij (GNU libgcj) version 4.4.7
# 2. 精確定位 RPM 包名
rpm -qa | grep -i gcj
# 輸出示例:java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64
# 僅卸載 gcj 相關包,保留其他可能依賴 java 的系統包 (如 jpackage-utils)
rpm -e --nodeps java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64
# 若同時存在 openjdk 也一併清理
rpm -qa | grep -i openjdk
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
# 具體包名以實際輸出為準
java -version
# 預期:bash: java: command not found
rpm -qa | grep -i java
# 僅殘留無關包 (如 tzdata-java, python-javapackages 等)
system-config-* 圖形配置工具) 失效。純命令行服務器無影響。/usr/lib/jvm/ 下的手動鏈接或用戶手動下載的 JDK,需人工檢查。alternatives --config java 切換優先級,但不推薦,因安全漏洞無法修補。/etc/profile 環境變量指向新 JDK。java 路徑,統一改為 $JAVA_HOME/bin/java。卸載舊 JDK 是 Java 應用容器化、現代化的第一步。徹底清理,避免版本衝突與安全債務。
OpenSSL 與 Keytool 跨語言 SSL 雙向認證實戰:Java ↔ C++ 證書鏈構建全流程
Linux rsync 遠端同步備份完整指南:六大工作模式、核心參數表、實戰範例
Linux 社區文化觀察:從新手村到精英殿堂的互助生態與傳道者精神
Linux 高併發 Socket 調優全攻略:文件描述符、端口範圍、連接追蹤、內核參數與 I/O 模型五大維度優化
Linux 文件編碼轉換實戰:enca、convmv、iconv 完全指南
Linux 字符設備驅動開發全流程:file_operations、cdev 註冊與用戶空間交互