У Вас есть порт 1937, указанный в Вашей клиентской конфигурации, но порт 1194, указанный, чтобы сервер послушал на в Вашей конфигурации сервера. Однако Ваш журнал сервера показывает, что слушает на порте 1937, по крайней мере в то время, когда Вы взяли тот журнал. Кроме этого, ничто не смотрит неправильно мне.
Это верные взгляды как Вы получаете хорошие соединения TCP между клиентом и сервером. Для исключения любых проблем PKI я запустил бы со статической ключевой конфигурации и, после того как это работает, движение к конфигурации с открытым ключом.
Простой:
grep ^Package: /var/lib/apt/lists/ppa.launchpad.net_*_Packages
Или более гибкий:
grep-dctrl -sPackage . /var/lib/apt/lists/ppa.launchpad.net_*_Packages
Для запросов знатока использовать apt-cache policy
и aptitude
как описано здесь:
aptitude search '~O LP-PPA-gstreamer-developers'
Старый поток, но подумал, что это может помочь. Используйте awk, сортировку и uniq, чтобы захватить только пакеты и запретить контрольные суммы повторного использования пакетов.
grep ^Package /var/lib/apt/lists/<repo you are interested in>* | awk '{print $2}' | sort | uniq
Просто для развлечения или если вы не доверяете кешам, вы можете запросить объявленные пакеты источника, ну, ну, из самого источника. Репозитории - это в значительной степени веб-сайты, либо HTTP, либо FTP.
В вашей системе есть исходные URL-адреса, по которым вы можете запрашивать конкретные архитектуры и параметры двоичного кода / источника. Затем вы можете запросить списки пакетов конкретной архитектуры.
Например, я использую отличный медиаплеер jRiver MediaCenter на Pop! _OS. Чтобы запросить их стабильный репозиторий , который я настроил, сначала найдите URL:
$ cat /etc/apt/sources.list.d/mediacenter26.list
#MC
deb [arch=i386,amd64,armhf] http://dist.jriver.com/stable/mediacenter/ jessie main
Затем выберите расположение в списке для интересующей вас архитектуры. Обратите внимание, что URL-адрес формируется по шаблону
:
$ curl -s http://dist.jriver.com/stable/mediacenter/dists/jessie/Release |
> grep "amd64/Packages$" |
> cut -d" " -f 4 |
> sort -u
main/binary-amd64/Packages
Наконец, добавьте путь к списку архитектуры к распространению и извлеките имена пакетов из списков сигнатур :
$ curl -s http://dist.jriver.com/stable/mediacenter/dists/jessie/main/binary-amd64/Packages |
> grep "^Package: " |
> cut -d" " -f2 |
> sort -u
mediacenter21
mediacenter22
mediacenter23
mediacenter24
mediacenter25
Естественно, настройте или удалите фильтры grep
| cut
| sort
на свой вкус. Удалите параметр -s
(без звука) из curl
, чтобы при необходимости просмотреть диагностику.
... или используйте диспетчер пакетов Synaptic .
Для моего варианта использования мне нужен список пакетов из нескольких репозиториев, соответствующих тот же дистрибутив, в частности Jessie. На этом хосте настроено несколько репозиториев jessie, репозиторий Dell linux и архивы Debian для некоторых зависимостей.
Я закончил с этим, кхм, однострочным:
for p in $(dpkg -l | awk '/ii/{ print $2 }'); do for i in $(apt-cache policy "$p" | awk '/Installed/{ print $2}'); do apt-cache policy "$p" | grep -A1 '\*\*\*\ '$i'' | if grep -q jessie; then echo $p; fi; done; done
Довольно уродливо, так как нам нужно запустить apt-cache дважды: один раз, чтобы получить установленную версию пакета, и второй раз, чтобы сопоставить эту установленную версию с целевое репо, которое в этом случае может быть удобно сопоставлено просто "jessie".
Если вы удалите 'grep -q', вы также получите вывод соответствующей строки репо для подтверждения, или иначе. Вы можете адаптировать этот синтаксис сопоставления к регулярному выражению для сопоставления в нескольких репозиториях.