Làm cách nào tôi có thể xóa hoàn toàn tất cả dấu vết của Java trên hệ thống của mình?
Tôi đã biết làm thế nào để cài đặt nó trong trường hợp tôi cần nó một lần nữa.
Làm cách nào tôi có thể xóa hoàn toàn tất cả dấu vết của Java trên hệ thống của mình?
Tôi đã biết làm thế nào để cài đặt nó trong trường hợp tôi cần nó một lần nữa.
Câu trả lời:
Xóa tất cả các gói liên quan đến Java (Sun, Oracle, OpenJDK, plugin IcedTea, GIJ):
dpkg-query -W -f='${binary:Package}\n' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e '^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.*)-j(re|dk)' -e '^java-common' | xargs sudo apt-get -y remove
sudo apt-get -y autoremove
Lọc tập tin cấu hình (cẩn thận. Lệnh này đã loại bỏ libsgutils2-2 và tập tin cấu hình hộp ảo):
dpkg -l | grep ^rc | awk '{print($2)}' | xargs sudo apt-get -y purge
Xóa cấu hình Java và thư mục bộ đệm:
sudo bash -c 'ls -d /home/*/.java' | xargs sudo rm -rf
Xóa các JVM được cài đặt thủ công:
sudo rm -rf /usr/lib/jvm/*
Xóa các mục Java, nếu vẫn còn bất kỳ, khỏi các lựa chọn thay thế :
for g in ControlPanel java java_vm javaws jcontrol jexec keytool mozilla-javaplugin.so orbd pack200 policytool rmid rmiregistry servertool tnameserv unpack200 appletviewer apt extcheck HtmlConverter idlj jar jarsigner javac javadoc javah javap jconsole jdb jhat jinfo jmap jps jrunscript jsadebugd jstack jstat jstatd native2ascii rmic schemagen serialver wsgen wsimport xjc xulrunner-1.9-javaplugin.so; do sudo update-alternatives --remove-all $g; done
Tìm kiếm các thư mục Java còn lại có thể:
sudo updatedb
sudo locate -b '\pack200'
Nếu lệnh trên tạo ra bất kỳ đầu ra nào như /path/to/jre1.6.0_34/bin/pack200
loại bỏ thư mục gốc của bin , như thế này : sudo rm -rf /path/to/jre1.6.0_34
.
grep
nó apt-get remove
, tôi nghĩ rằng nó bao gồm hầu hết các khả năng liên quan đến việc cài đặt bởi các gói deb.
sudo bash -c 'ls -d /home/*/.java' | xargs sudo rm -rf
, phản hồi từ thiết bị đầu cuối được xác định là không hợp lệ.
Để xóa hoàn toàn OpenJDK trên Ubuntu 11.10 (điều này có thể hoặc không đủ trên các phiên bản Ubuntu khác), hãy chạy:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
Nếu bạn muốn hướng dẫn loại bỏ phiên bản Java ("Mặt trời") độc quyền của Java, thì bạn sẽ phải chỉ định cách bạn đã cài đặt nó. (Nếu bạn chỉnh sửa câu hỏi của mình để chỉ ra câu hỏi này và để lại nhận xét cho câu trả lời này, tôi sẽ cố gắng thêm thông tin về cách loại bỏ câu hỏi đó.)
Bạn có thể không cần phải xóa hoàn toàn OpenJDK để giải quyết vấn đề của mình. Cài đặt các gói sun-java6. Sau đó sử dụng update-java-alternatives
để chuyển sang các gói Sun java.
Nếu bạn muốn loại bỏ hoàn toàn OpenJDK, hãy loại bỏ các gói default-jdk và / hoặc default-jre. Bạn có thể cần phải xóa một số gói java nhưng hầu hết chúng sẽ rất vui khi bạn đã cài đặt các gói Sun JDK.
Bạn có thể muốn làm theo một trong những mẹo dọn dẹp này sau khi hoàn thành việc gỡ bỏ các gói.
Để gỡ cài đặt Oracle Java 7, chỉ cần nhấn Ctrl+ Alt+ Ttrên bàn phím của bạn để mở Terminal. Khi nó mở ra, chạy lệnh bên dưới.
sudo update-alternatives --display java
Để kiểm tra thiết lập trước khi gỡ cài đặt Java.
Tiếp theo, xóa liên kết tượng trưng
(thay thế từ (phiên bản) bằng phiên bản Java của bạn. NÊN java -version
để lấy từ của bạn. Vì vậy, nếu phiên bản của bạn là 1.7.0_03, bạn sẽ type sudo update-alternatives --remove "java" "/usr/lib/jvm/jdk1.7.0_03/bin/java"
)
sudo update-alternatives --remove "java" "/usr/lib/jvm/jdk<version>/bin/java" sudo update-alternatives --remove "javac" "/usr/lib/jvm/jdk<version>/bin/javac" sudo update-alternatives --remove "javaws" "/usr/lib/jvm/jdk<version>/bin/javaws"
xác minh rằng các liên kết tượng trưng đã bị xóa
java -version javac -version which javaws
2 lệnh tiếp theo phải được gõ hoàn hảo để tránh phá hủy vĩnh viễn hệ thống của bạn .
cd /usr/lib/jvm sudo rm -rf jdk<version>
Sau đó làm
sudo update-alternatives --config java sudo update-alternatives --config javac sudo update-alternatives --config javaws
Sau đó làm
sudo vi /etc/environment
Xóa dòng bằng JAVA_HOME 1
Để gỡ cài đặt OpenJDK (nếu được cài đặt). Trước tiên hãy kiểm tra các gói OpenJDK được cài đặt.
sudo dpkg --list | grep -i jdk
Để xóa openjdk:
sudo apt-get purge openjdk*
Gỡ cài đặt các gói liên quan đến OpenJDK.
sudo apt-get purge icedtea-* openjdk-*
Kiểm tra xem tất cả các gói OpenJDK đã bị xóa.
sudo dpkg --list | grep -i jdk
1 Nguồn: akbarahmed.com
/usr/lib/jvm
thư mục quá? Theo như tôi biết thì chỉ được Java sử dụng.
Hãy thử lệnh này:
java -version
Nếu 1.6 * đến thì hãy thử:
sudo apt-get autoremove openjdk-6-jre
Nếu 1.7 * đến thì hãy thử:
sudo apt-get autoremove openjdk-7-jre
Giả sử rằng bạn không có jdk trong hệ thống của mình. Nếu bạn đã sử dụng lệnh này:
sudo apt-get autoremove openjdk-`<version>`-jdk
thay thế bằng phiên bản như chúng ta đã làm trong ví dụ trước.
dễ dàng hơn là sử dụng synap.
nhấp vào tab "phần" cuộn xuống java. chỉ cần chọn từng mục bạn nhìn thấy với hộp màu xanh lá cây và đánh dấu để loại bỏ hoàn toàn. lặp lại cho tất cả các phần java và tất cả các tệp.
Đồng ý với Eliah. Lệnh "apt-get purge" có thể loại bỏ hoàn toàn các gói đó.
Giả sử trước đây bạn đã cài đặt một bản sao của gói java-6-sun, việc theo dõi sẽ giúp loại bỏ liên kết tượng trưng bị hỏng:
sudo update-alternatives --config java
Và sau đó chọn một đường dẫn chính xác mà bạn muốn liên kết làm đường dẫn gọi Java mặc định.
Sau đó kiểm tra phiên bản Java bằng lệnh này:
java -version
Chỉ cần xóa tất cả các tệp của JDK hoặc JRE, ví dụ: nó thường được cài đặt ở vị trí này:
/usr/lib/jvm/java-7-oracle
Vì vậy, hãy xóa tất cả các tệp nằm trong thư mục "java-7-oracle" với quyền root và trích xuất các tệp JDK hoặc JRE mới nhất trong đó. Đó là bây giờ bạn sẽ có phiên bản Java mới nhất được cài đặt.
PS Tên thư mục của bạn có thể khác với java-7-oracle .
Tham khảo: Hướng dẫn cài đặt chính thức từ Oracle