Odpowiedzi:
Niektóre polecenia, których często używam:
aby zobaczyć zależności i odwrotne zależności:
apt-cache [--important] [--installed] [--recurse] depends $package
apt-cache rdepends $package
Aby usunąć pakiet, wszystkie napisane pakiety i wszystkie powiązane pliki konfiguracyjne:
sudo apt-get --purge --auto-remove purge $package
Aby zobaczyć rzeczywiste apt
opcje konfiguracji:
apt-config dump | less
Aby zmodyfikować opcję w wierszu polecenia
$ apt-config dump | grep -i recommend
APT::Install-Recommends "1";
$ sudo apt-get -o APT::Install-Recommends="0" install $package
To był tylko przykład podania opcji APT za pomocą wiersza poleceń, aby uniknąć instalowania zalecanych pakietów, możesz użyć:
sudo apt-get --no-install-recommends $package
Aby zobaczyć wszystkie lokalne / przestarzałe pakiety:
aptitude search ~o
Aby zobaczyć usunięte pakiety z resztkową konfiguracją:
aptitude search ~c
i je usunąć
sudo aptitude purge ~c
Aby uzyskać listę wszystkich zainstalowanych pakietów ( dpkg -l
czasami może dać dane wyjściowe z obciętymi kolumnami)
dpkg --get-selections | awk '{ print $1 }'
lub
dpkg-query -Wf '${Package}\n' # other fields available, see man page
Aby odinstalować, zmodyfikuj, a następnie ponownie złóż pakiet
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
Dwa, z których często korzystam to:
apt-get autoremove <packagename>
Który usunie pakiet i wszelkie nieużywane zależności, co jest przydatne, jeśli wypróbujesz aplikację, a następnie zdecydujesz, że jej nie potrzebujesz, i chcesz również usunąć cruft.
dpkg -S /path/to/file
Co mówi mi, z którym pakietem został zainstalowany plik.
Wreszcie jeszcze jeden ..
dpkg -l <packagename> | grep ^ii
Wyświetla listę pakietów, ale tylko te, które mają status ii, co oznacza, że są zainstalowane, więc nie będzie pokazywał rzeczy, które usunąłem.
Jeśli chcesz uzyskać nazwę pakietu dla pliku, który nie został zainstalowany ( dpkg -S
ale dla niezainstalowanych pakietów), zainstaluj apt-file
i uruchom:
apt-file search /path/to/file
which
razem z dpkg -S. np .: dla plików wykonywalnych, które występują w pakietach o różnych nazwach, takich jak:dpkg -S `which uname`
$ aptitude changelog <pkgname>
Przykład:
$ 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
również działa.
Zainstaluj apt-file, a następnie uruchom sudo apt-file update
. Możesz teraz wyszukiwać pliki w pakietach, których nawet nie zainstalowałeś.
Przydatny również, jeśli potrzebujesz informacji o pakietach w innych wersjach Ubuntu, to rmadison, który znajduje się w pakiecie devscripts. Podaj jako argument nazwę pakietu, a dowiesz się, jakie wersje tego pakietu istnieją w każdej bieżącej wersji Ubuntu i w której sekcji repozytorium znajduje się pakiet.
Przykład:
[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
teraz jest w stanie zarządzać bazą danych użytkownika, dzięki czemu nie trzeba być rootem update
.
apt-file
jest całkiem fajny. dzięki za udostępnienie.
Aby uzyskać listę poleceń, zaczyna się od „apt-”, wykonaj następujące czynności. otwórz terminal i wpisz „apt-” i naciśnij dwukrotnie klawisz TAB, aby wyświetlić listę wszystkich poleceń rozpoczynających się od „apt-”.
Przykładowe dane wyjściowe:
apt-add-repository apt-extracttemplates apt-key
apt-cache apt-file apt-mark
apt-cdrom apt-ftparchive apt-sortpkgs
apt-config apt-get
Aby uzyskać szczegółowe informacje, możesz sprawdzić stronę podręcznika tego konkretnego polecenia
na przykład: man apt-get
Lubię myśleć o trzech różnych rodzajach pakietów:
Aby wyświetlić wszystkie „pakiety systemowe”, których możesz użyć
aptitude search '(~pstandard|~pimportant|~prequired|~E)'
Lubię mieć je wszystkie zainstalowane i oznaczone jako zainstalowane ręcznie.
aptitude install '(~pstandard|~pimportant|~prequired|~E)!~i'
aptitude unmarkauto '(~pstandard|~pimportant|~prequired|~E)~i~M'
Aby wyświetlić wszystkie „pakiety użytkowników” użyj
aptitude search '~i!~M!(~pstandard|~pimportant|~prequired|~E)'
Na tej liście powinny znajdować się tylko te pakiety, o których wiesz, że chcesz. Wszystkie pozostałe pakiety są prawdopodobnie tylko zależnościami lub zaleceniami innych pakietów, możesz oznaczyć je jako zainstalowane automatycznie
aptitude markauto libsomething
Spójrz na odnośnik wyszukiwanego hasła aptitude i
co to jest pakiet podstawowy, wymagany, ważny, standardowy, opcjonalny lub dodatkowy? w celu uzyskania dodatkowych informacji.
Uaktualnij pakiety, które zostaną zachowane, ponieważ usuną inne pakiety lub ponieważ jest to aktualizacja jądra:
sudo apt-get dist-upgrade
Wyczyść pakiet i jego konfigurację.
sudo apt-get purge package
Pokaż szczegóły pakietu znane w bazie danych pakietu, w tym sekcję, wersję, zależności, opiekuna i opis.
apt-cache show package
Wyświetl listę plików w zainstalowanym pakiecie
dpkg -L pkg
Uaktualnij wszystkie pakiety
sudo apt-get upgrade