यह एक सरल लगता है apt-get remove apache2 पूरी तरह से नहीं हटाता है apache2 जैसा कि मैं अभी भी इसे चलाते समय किसी एक प्रक्रिया पर देख सकता हूं top. कोई कैसे हटाता है apache2 पूरी तरह से अपने उबंटू सर्वर पर?
यह वास्तव में हटाया नहीं गया है:
~# which apache2/usr/sbin/apache2~# whereis apache2apache2: /usr/sbin/apache2 /etc/apache2 /usr/lib/apache2 /usr/share/apache2 /usr/share/man/man8/apache2.8.gz
लेकिन जब मैं करता हूं apt-get remove apache2 फिर से:
# apt-get remove apache2Reading package lists... DoneBuilding dependency treeReading state information... DonePackage apache2 is not installed, so not removed0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
apache2 एक मेटापैकेज है जो सिर्फ अन्य पैकेजों का चयन करता है । यदि आपने उस पैकेज को स्थापित करके अपाचे स्थापित किया है, तो आपको स्वचालित रूप से चयनित पैकेजों को साफ करने के लिए इसे चलाने की आवश्यकता है:
sudo apt autoremove
यदि वह काम नहीं करता है, तो आपने मैन्युअल रूप से आश्रितों में से एक स्थापित किया होगा । आप सभी को लक्षित कर सकते हैं apache2- अंतरिक्ष से पैकेज और बहुत सारे परमाणु:
sudo apt remove apache2.*
भविष्य के संदर्भ के लिए, यह पता लगाने के लिए कि बाइनरी किस पैकेज से है, आप इसे चला सकते हैं:
dpkg -S `which apache2`
मुझे उम्मीद है कि वापस आने के लिए apache2.2-bin (लेखन के समय) ।
नीचे दिए गए कमांड का आउटपुट आपको पैकेज के बारे में स्थापित पैकेज सॉफ़्टवेयर, संस्करण, आर्किटेक्चर और संक्षिप्त विवरण की जानकारी प्रदान करेगा । ग्रेप कमांड का उपयोग अपाचे पैकेज को खोजने के लिए किया जाता है
$ sudo dpkg --get-selections | grep apache | cut -f 1$ sudo apt-get remove --purge <package name from the previous command output>$ sudo whereis apache$ sudo rm -rf <directory/file path from the previous command output>