Temizleme ve dpkg -P arasındaki fark?


9

Üretim sunucusundan phpmyadmin kaldırmak zorunda kaldı ve bunun için googled ve bunu kullandım:

sudo dpkg -P phpmyadmin

Bu iyi çalıştı, ancak Ubuntu'daki herkes bunun yerine bir temizlik kullanıyor gibi görünüyor

sudo apt-get purge phpmyadmin 

Yanlış bir şey yaptım mı? Bilmem gereken herhangi bir sonuç (sonuçta benim üretim sunucum) phpmyadmin tüm bit gerçekten dpkg -P ile kaldırıldı mı?


Dpkg'ın man sayfasında "-P, - purge package" yazıyor, bu yüzden -P 'tasfiye' anlamına geliyor, bu yüzden düşündüğüm gibi aynı şey olmalı. Şahsen 'apt-get tasfiye' kullanıyorum
hytromo

Yanıtlar:


5

dpkgve apt-getyazılım yüklemenin 2 farklı yoludur. Temelde apt-get, aptitude ve sinaptik, debian'ın dpkg paket yönetim programının üzerine inşa edilmiştir. Hepsi aynı temel işlevi - paket yönetimini gerçekleştirir, ancak bazı ekstra özelliklere sahiptir. Apt-get'in ekstra özelliklerinden biri de bağımlılıkları kuracağı ve dpkg yüklemediğidir.

-P / purge ile ilgili olarak ...

-Pİçinde dpkgyollarla --purgeve Ayarlar 'ı ve yapılandırma dosyaları dahil olmak üzere her şeyi kaldırır. Kılavuzdan:

-r, --remove, -P, --purge package...|-a|--pending

          Remove  an  installed  package. -r or --remove remove everything
          except conffiles. This may avoid having to reconfigure the pack‐
          age  if  it  is  reinstalled later. (Conffiles are configuration
          files that are listed in the DEBIAN/conffiles control file).  -P
          or  --purge  removes  everything,  including conffiles. If -a or
          --pending is given instead of a package name, then all  packages
          unpacked,   but   marked   to  be  removed  or  purged  in  file
          /var/lib/dpkg/status, are removed or purged, respectively. Note:
          some  configuration  files might be unknown to dpkg because they
          are created and handled  separately  through  the  configuration
          scripts. In that case, dpkg won't remove them by itself, but the
          package's postrm script (which is called by dpkg), has  to  take
          care of their removal during purge. Of course, this only applies
          to files in system directories, not configuration files  written
          to individual users' home directories.

          Removing of a package consists of the following steps:

          1. Run prerm script

          2. Remove the installed files

          3. Run postrm script

Aynı için de geçerli purgeiçinde apt-get.

 remove
       remove is identical to install except that packages are removed
       instead of installed. Note the removing a package leaves its
       configuration files in system. If a plus sign is appended to the
       package name (with no intervening space), the identified package
       will be installed instead of removed.


 purge
       purge is identical to remove except that packages are removed and
       purged (any configuration files are deleted too).

Temel olarak aynı seçenektir. Dikkat: bağımlılıkların giderilmesi dpkg ile gerçekleşmez. apt-get bağımlılıkları kaldırır

Lekensteyn'in yorumundan gelen belgeler:


+1 de benzer bir cevap yazmak üzereydi. Belgeler: debian.org/doc/manuals/debian-faq/ch-pkgtools.en.html . Bağımlılık konusu vurgulanmalıdır. Örnek: kaldırma php5işlemi de phpmyadminkaldırılacaktır (başka bir PHP SAPI olmadığı varsayılarak). aptbunun üstesinden gelebilir, dpkgkendi başına yapamaz.
Lekensteyn

Mükemmel lekensteyn. Hala bakıyordum (çünkü bağımlılıklar bir şey beni rahatsız ediyordu). Added it in :) Daha fazla varsa cevabımı düzenlemek için çekinmeyin: D
Rinzwind

İyi :) Birisi dpkgdoğrudan kullandıktan sonra bağımlılık sorununu sudo apt-get install -fdpkg
vurursa

Tavsiyeniz için herkese teşekkürler. Peki sudo apt-get install -f phpmyadminbenim durumumda bağımlılıkların silindiğinden emin olmak için mi yapıyorum? Bağımlılıklar paylaşılırsa ne olur?
Houman

@Kave manuel olarak yüklenmeyen Bağımlılıklar, kurulu hiçbir pakete bağımlı olmadığında kaldırılacaktır.
nanofarad
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.