सवाल क्यों `dpkg -l | grep पैकेज` शुद्ध होने के बाद एक पैकेज दिखा रहा है


भंडार से स्थापित एक पैकेज (पूर्व: टोर) को अनइंस्टॉल करने के लिए किसी का उपयोग करना चाहिए

sudo apt-get remove tor

मैंने यह किया लेकिन dpkg -l | grep tor पैकेज के खिलाफ कुछ दिखाया। अगला मैं कोशिश करता हूँ

sudo apt-get purge tor

लेकिन जब मैं जांच करता हूं dpkg -l | grep tor मुझे मिला,

reza@reza-N43JM:/$ dpkg -l tor    
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
un  tor            <none>         (no description available)

मुझे लगता है कि जब मैं किसी भी पैकेज को अनइंस्टॉल करता हूं तो मुझे कुछ भी नहीं मिलना चाहिए dpkg -l सूची। क्या यह सच है? या apt-get remove या purge एक और काम करता है लेकिन अनइंस्टॉल नहीं करता है?


4
2018-03-28 14:53


मूल




जवाब:


पहले ध्यान दें दो पत्र के उत्पादन के dpkg -l tor जो कहते हैं un

u: Unknown (an unknown state)
n: Not- The package is not currently installed

कभी कभी dpkg संदर्भों के लिए ऐसी प्रविष्टियां रखती है। उन समस्याग्रस्त प्रविष्टियों को हटाने के लिए, टर्मिनल में चलाएं,

sudo dpkg --clear-avail

से man dpkg

--clear-avail
          Erase  the  existing  information  about   what   packages   are
          available.

4
2018-03-28 15:36



का उपयोग करते हुए sudo dpkg --clear-avail मेरे लिए काम नहीं करता है - wsw
मेरे लिए भी नहीं। (उबंटू 16.04 एलटीएस) - HeinrichStack


ऐसा लगता है कि @Souravc का समाधान का केवल एक हिस्सा है।

(नोट: मैं इसे डेबियन पर कर रहा हूं, मुझे लगता है कि इसे ज्यादातर उबुबतु पर भी लागू होना चाहिए।)

/ var / lib / dpkg / स्थिति और / var / lib / dpkg / संकुल के बारे में उपलब्ध होल्ड जानकारी जो या तो स्थापित करने के लिए उपलब्ध हैं (किस तरह से उपयुक्त है), स्थापित है या बस बचे हुए कॉन्फ़िगरेशन फ़ाइलें हैं। यदि इनमें से एक पैकेज (कहो, bar) Depends: पैकेज पर foo, परंतु foo स्वयं पहले ही सूचीबद्ध नहीं है (यह तब तक नहीं होना चाहिए जब तक आप केवल आधिकारिक स्थिर डेबियन / उबंटू रिपोज़ का उपयोग न करें) dpkg -l tor उनका जिक्र करेंगे।

grep-status (कोई रूट जरूरी नहीं है) एक साफ आदेश है जो आपको यह पता लगाने में मदद कर सकता है कि कौन सा पैकेज अपराधी है:

$ grep-status foo
Package: bar
Depends: foo
...
$ dpkg -s bar
$ dpkg -L bar
...

अब आप उदाहरण का उपयोग कर पैकेज को अनइंस्टॉल या पुर्ज कर सकते हैं .:

# dpkg -r bar
# dpkg -P bar

0
2017-08-19 02:23