Yanıtlar:
Sık kullandığım bazı komutlar:
bağımlılıkları ve ters bağımlılıkları görmek için:
apt-cache [--important] [--installed] [--recurse] depends $package
apt-cache rdepends $package
Bir paketi, tüm otomatik kaldırma paketlerini ve ilgili tüm yapılandırma dosyalarını kaldırmak için:
sudo apt-get --purge --auto-remove purge $package
Gerçek apt
yapılandırma seçeneklerini görmek için :
apt-config dump | less
Komut satırındaki bir seçeneği değiştirmek için
$ apt-config dump | grep -i recommend
APT::Install-Recommends "1";
$ sudo apt-get -o APT::Install-Recommends="0" install $package
Bu sadece ve önerilen paketleri yüklemekten kaçınmak için komut satırından APT seçeneklerini belirleme örneğiydi:
sudo apt-get --no-install-recommends $package
Tüm yerel / eski paketleri görmek için:
aptitude search ~o
Artık yapılandırmaya sahip kaldırılmış paketleri görmek için:
aptitude search ~c
ve onları kaldırmak için
sudo aptitude purge ~c
Kurulu tüm paketlerin bir listesini almak için ( dpkg -l
bazen kesik sütun çıktısı verebilir)
dpkg --get-selections | awk '{ print $1 }'
veya
dpkg-query -Wf '${Package}\n' # other fields available, see man page
Sökmek için, bir paketi değiştirin ve yeniden monte edin
dpkg-deb -x file.deb ./dir
cd dir
dpkg-deb -e ../file.deb
# apply your modification, then...
cd ..
dpkg-deb -b dir file-new.deb
Çok kullandığım iki şey: -
apt-get autoremove <packagename>
Bu, paketi ve kullanılmayan bağımlılıkları kaldıracak, bu da bir uygulamayı denemeniz, sonra ihtiyacınız olmadığına karar vermeniz ve rüzgârın da kaldırılmasını istiyorsanız faydalı olacaktır.
dpkg -S /path/to/file
Bu da bana hangi paketin kurulduğunu söyler.
Sonunda bir tane daha ..
dpkg -l <packagename> | grep ^ii
Paketleri listeler, ancak yalnızca yüklü oldukları anlamına gelen ii durumuna sahip olanları listeler, bu yüzden kaldırdığım şeyleri göstermez.
Kurulu dpkg -S
olmayan ( ancak kurulu olmayan paketler için) bir dosyanın paket adını almak istiyorsanız , kurun apt-file
ve çalıştırın:
apt-file search /path/to/file
which
Dpkg -S ile birlikte kullanmanın yararlı olduğunu düşünüyorum . örneğin: Farklı adlara sahip paketler halinde yaşayan yürütülebilir dosyalar için, örneğin:dpkg -S `which uname`
$ aptitude changelog <pkgname>
Misal:
$ aptitude changelog sudo
sudo (1.7.0-1ubuntu2.4) karmic-security; urgency=low
* SECURITY UPDATE: properly handle multiple PATH variables when using
secure_path in env.c
- Adapted http://www.sudo.ws/repos/sudo/raw-rev/a09c6812eaec
- CVE-2010-1646
...
apt-get changelog sudo
çalışıyor.
Apt dosyasını yükleyin ve çalıştırın sudo apt-file update
. Artık yüklemediğiniz paketlerde dosya arayabilirsiniz.
Ayrıca Ubuntu'nun diğer sürümlerindeki paketler hakkında bilgi sahibi olmanız gerekiyorsa, devscripts paketinde bulunan rmadison'dur. Bağımsız değişken olarak bir paket adı sağlayın ve bu paketin mevcut her Ubuntu sürümünde hangi sürümlerinin bulunduğunu ve paketin hangi depo bölümünde olduğunu söyleyecektir.
Misal:
[bnrubin@server:~/]$ rmadison cowsay
cowsay | 3.03-8 | dapper/universe | source, all
cowsay | 3.03-9 | hardy/universe | source, all
cowsay | 3.03-9.2 | jaunty/universe | source, all
cowsay | 3.03-9.2 | karmic/universe | source, all
cowsay | 3.03-9.2 | lucid/universe | source, all
cowsay | 3.03+dfsg1-2 | maverick/universe | source, all
cowsay | 3.03+dfsg1-2 | natty/universe | source, all
apt-file
artık bir kullanıcının veritabanını yönetebilir, böylece root olmanıza gerek kalmaz update
.
apt-file
oldukça güzel. paylaşım için teşekkürler.
Liste komutlarını almak için 'apt-' ile başlar. bir terminal açın ve 'apt-' yazın ve SEKME tuşuna iki kez basın, bu tüm komutları 'apt-' ile başlayan listeler.
Örnek çıktı:
apt-add-repository apt-extracttemplates apt-key
apt-cache apt-file apt-mark
apt-cdrom apt-ftparchive apt-sortpkgs
apt-config apt-get
Ayrıntılı bilgi almak için belirli bir komutun kılavuz sayfasını kontrol edebilirsiniz.
Örneğin: man apt-get
Üç farklı paket düşünmeyi seviyorum:
Tüm "sistem paketlerini" göstermek için
aptitude search '(~pstandard|~pimportant|~prequired|~E)'
Hepsini kurmayı ve manuel olarak yüklendi olarak işaretlemeyi seviyorum.
aptitude install '(~pstandard|~pimportant|~prequired|~E)!~i'
aptitude unmarkauto '(~pstandard|~pimportant|~prequired|~E)~i~M'
Tüm "kullanıcı paketlerini" göstermek için
aptitude search '~i!~M!(~pstandard|~pimportant|~prequired|~E)'
Bu listede yalnızca istediğinizi bildiğiniz paketler olmalıdır. Diğer tüm paketler muhtemelen sadece diğer paketlerin bağımlılığı veya önerisidir, bunları otomatik olarak yüklendi olarak işaretleyebilirsiniz
aptitude markauto libsomething
Bir göz atın yetenek en Arama Terimi Referans ve
bir Temel, Gerekli, Önemli, Standart, İsteğe Bağlı veya Ekstra paket nedir? arka plan bilgileri için.
Diğer paketleri kaldıracakları veya bir çekirdek yükseltmesi olduğu için saklanacak paketleri yükseltin:
sudo apt-get dist-upgrade
Bir paketi ve yapılandırmasını temizleme.
sudo apt-get purge package
Bir paketin paket veritabanında bilindiği gibi bölüm, sürüm, bağımlılıklar, sürdürücü ve açıklama gibi ayrıntılarını göster
apt-cache show package
Yüklü bir paketteki dosyaları listeleme
dpkg -L pkg
Tüm paketleri yükseltin
sudo apt-get upgrade
dpkg -i --force-architecture something.i386.deb
AMD64'e bazı i386 debs yüklemek için.