Получите установленный URL пакетов, использующий склонный

Поскольку можно знать, что мы можем использовать apt-get install --print-uris -y package-name и это показывает нам список URL, hashsum, и т.д.

Однако, если мы используем его для пакета, который уже был установлен в системе, это не работает:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
package is already the newest version (x.x-x).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Таким образом, как я могу получить список необходимого использования URL apt или другие инструменты CLI как aptitude?

PS: Я не хочу использовать packages.ubuntu.com.

1
задан 30 June 2017 в 01:33

2 ответа

Не всем установленным пакетам свяжут URL с ними, конечно. Однако Вы могли использовать apt-get dowload:

$ apt-get download --print-uris wget
'http://archive.ubuntu.com/ubuntu/pool/main/w/wget/wget_1.15-1ubuntu1.14.04.2_amd64.deb' wget_1.15-1ubuntu1.14.04.2_amd64.deb 270522 SHA256:a3f3b049ea373402236a804a5a0952c6ef9b356ba8cc19fbc1f257db6e8f3052

Это - новая версия как показано apt-cache policy, который не мог бы обязательно быть установленной версией.

2
ответ дан 3 December 2019 в 06:38

Это, кажется, достаточно добавить --reinstall флаг (по крайней мере, в моих 16,04 системах), например,

$ sudo apt-get install --print-uris wget
Reading package lists... Done
Building dependency tree
Reading state information... Done
wget is already the newest version (1.17.1-1ubuntu1.2).
wget set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 73 not upgraded.

, но

$ sudo apt-get install --reinstall --print-uris wget
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 73 not upgraded.
Need to get 298 kB of archives.
After this operation, 0 B of additional disk space will be used.
'http://ca.archive.ubuntu.com/ubuntu/pool/main/w/wget/wget_1.17.1-1ubuntu1.2_amd64.deb' wget_1.17.1-1ubuntu1.2_amd64.deb 298270 MD5Sum:09a54f8d74c78598f91c4b376f3d2f0e
<час>

ПРИМЕЧАНИЕ: это не работает, если пакет в настоящее время кэшируется:

$ sudo apt-get install --reinstall --download-only wget
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 73 not upgraded.
Need to get 298 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://ca.archive.ubuntu.com/ubuntu xenial-updates/main amd64 wget amd64 1.17.1-1ubuntu1.2 [298 kB]
Fetched 298 kB in 0s (382 kB/s)
Download complete and in download only mode

$ sudo apt-get install --reinstall --print-uris wget
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 73 not upgraded.
Need to get 0 B/298 kB of archives.
After this operation, 0 B of additional disk space will be used.

, но после очистки кэша

$ sudo apt-get clean
$ sudo apt-get install --reinstall --print-uris wget
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 73 not upgraded.
Need to get 298 kB of archives.
After this operation, 0 B of additional disk space will be used.
'http://ca.archive.ubuntu.com/ubuntu/pool/main/w/wget/wget_1.17.1-1ubuntu1.2_amd64.deb' wget_1.17.1-1ubuntu1.2_amd64.deb 298270 MD5Sum:09a54f8d74c78598f91c4b376f3d2f0e
3
ответ дан 3 December 2019 в 06:38

Другие вопросы по тегам:

Похожие вопросы: