Используя aptitude, для поиска установленных пакетов за пределами стабильной ветки вы можете использовать:
aptitude search "?narrow(?installed,?not(?archive(stable)))"
Чтобы увидеть версии, а также имена пакетов (и вместо описаний), вы можете использовать команду с параметром формата (для краткости -F
), как показано ниже.
aptitude search -F "%p %V %v" "?narrow(?installed,?not(?archive(stable)))"
Для большего количества форматов, пожалуйста, посмотрите на страницу руководства (здесь документация с опциями.).
Это работает, например, в Debian, если вы установили пакеты вне Squeeze (например, apt-get install -t sid package-name
.
Вы можете посмотреть, откуда установленный пакет, с помощью apt-cache policy
Использование выглядит следующим образом:
apt-cache policy <package-name>
Например, мой пакет python-numpy выдает следующий вывод:
$ LANG=C apt-cache policy python-numpy
python-numpy:
Installed: 1:1.6.2-1
Candidate: 1:1.6.2-1.2
Version table:
1:1.7.0-1 0
1 http://ftp.es.debian.org/debian/ experimental/main amd64 Packages
1:1.6.2-1.2 0
500 http://ftp.es.debian.org/debian/ sid/main amd64 Packages
*** 1:1.6.2-1 0
100 /var/lib/dpkg/status
1:1.4.1-5 0
990 http://ftp.es.debian.org/debian/ squeeze/main amd64 Packages
990 http://ftp.de.debian.org/debian/ squeeze/main amd64 Packages
Это означает, что я на одну версию позади текущей ветки sid/main, поэтому у меня установлена старая версия sid. Я вижу, что у меня нет стабильного, потому что это все еще 1.4.1-5
, и я в настоящее время на 1.6.2-1
.
На момент отправки этот пакет уже был обновлен:)