Нашел. Решение заключается в добавлении:
allow-query {
any;
};
EDIT: Решение Rui F Ribeiro работает, но мне нужно создать публичный сервер. Если вы хотите избежать проблем с безопасностью, смотрите комментарии.
dpkg -l
всегда будет выдавать правильный список установленных (или удаленных, но все еще настроенных) пакетов. Фактически он использует dpkg-query
для выполнения своей работы и ссылается на содержимое / var / lib / dpkg / status
, которое является ссылкой для установленных пакетов. .
apt
использует ту же информацию, но до недавнего времени не предоставлял простой способ составления списка пакетов; apt list
теперь делает это, и вы получите те же результаты, что и dpkg -l
(в другом формате).
dpkg
можно использовать для вывода списка всех пакетов . Если все программное обеспечение в системе установлено с помощью пакетов, в нем будет указано все программное обеспечение; но если какое-либо программное обеспечение было установлено вручную, без пакета, то оно не узнает об этом.
Вы можете использовать apt
с параметрами ( man apt-cache
, man apt
..) для получения необходимой информации
dpkg
следует рассматривать как системный инструмент (бэкэнд), аapt
- как инструмент, более близкий к пользователю, который преодолевает ограничения первого. Эти инструменты работают вместе, каждый со своими особенностями и приспособлен к конкретным задачам.
например, g 1: вы можете просмотреть список установленных пакетов в вашей системе с помощью dpkg
или apt
:
apt list --installed
dpkg -l
например, g 2: чтобы узнать зависимости, которые вы можете использовать apt-rdepends
или apt-cache showpkg
...
apt-rdepends <package_name>
apt-cache showpkg <package_name>