Как определить размер пакета при использовании apt перед загрузкой?

В конце концов я собрался написать стресс-тест и инструмент сравнения для UNIX-подобных систем, а именно стресс-нг. Он содержит более 180 стресс-тестов, которые позволяют измерять пропускную способность на различных системных компонентах, из памяти, кеш-памяти, центрального процессора, системных вызовов, сети и т. Д. Установить с помощью:

sudo apt-get install stress-ng

Имеется -метрия -brief, который сообщает пропускную способность в режиме bogo ops в секунду. С помощью опции -perf вы можете получить полный набор глубоких CPU и системных показателей. Существует множество типов стрессоров, которые могут выполняться последовательно или параллельно на 1 или более процессорах, например:

stress-ng --metrics-brief --cpu 2 -t 1m

. Это будет осуществлять процессор в течение 1 минуты с двумя экземплярами стрессора процессора, работающими параллельно.

В руководстве подробно описаны все эти функции или обратитесь к странице проекта.

1
задан 6 June 2014 в 01:41

4 ответа

apt-cache show <package> или aptitude show <package> отобразит больше информации о пакете, включая его размер.

Только для размера пакета вы можете использовать:

apt-cache show <package> | grep Installed-Size

или

aptitude show <package> | grep 'Uncompressed Size'

Для пакетов .deb вы можете использовать:

dpkg-deb -I <package>.deb | grep Installed-Size
11
ответ дан 25 May 2018 в 22:00
  • 1
    Покажет ли размер зависимостей? – Tachyons 29 July 2013 в 21:37
  • 2
    @Tachyons Вопрос в следующем: " Есть ли способ получить размер пакета? ". Если вы интересуетесь размером зависимостей, вы можете использовать кнопку Ask Question , чтобы задать другой вопрос. – Radu Rădeanu 29 July 2013 в 21:42
  • 3
    Но в том числе размер депо может сделать ваш ответ эффективным. просто предложение мой друг, :) – Ten-Coin 29 July 2013 в 21:47
  • 4
    Как добавить еще один ответ, используя dpkg? – Ten-Coin 29 July 2013 в 21:50
  • 5
    @Jai dpkg-deb -I <package>.deb | grep Installed-Size – Radu Rădeanu 29 July 2013 в 23:07

Вы можете использовать режим «сухого хода», который просто претендует на загрузку и установку пакетов

$ aptitude install -sy xlockmore
The following NEW packages will be installed:
  xlockmore 
0 packages upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
Need to get 194 kB of archives. After unpacking 373 kB will be used.
Would download/install/remove packages.
5
ответ дан 25 May 2018 в 22:00
  • 1
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 2
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 3
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 4
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 5
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 6
    Пробовал, но я не вижу размера. Строка: нужно получить x архивов. После распаковки x будет использоваться. не отображается. – user 20 April 2011 в 00:08
  • 7
    Извините, это должно быть aptitude not apt-get (у меня есть псевдоним оболочки). Обновлено. Это решение имеет то преимущество, что вы действительно загружаете (не считаете уже установленные зависимости). – Adam Byrtek 20 April 2011 в 02:20

Это также правильно, но размер отображается в байтах. И это показывает размер в лучшем формате, но если пакет имеет очень маленький размер (скажем, 1 МБ), то, несмотря на echo 'n', он установит пакет (потому что в этом случае apt не запрашивает).

Итак, вы используете --no-download с --assume-no следующим образом:

sudo apt-get --no-download --assume-no install <package_name> | grep 'Need to get'

Здесь --no-download утверждает, что не загружать пакет, а --assume-no - для предположения отсутствия (n) в случай любого приглашения.

Пример:

$ sudo apt-get --no-download --assume-no install ttf-devanagari-fonts 2>/dev/null | grep 'Need to get'
Need to get 938 kB of archives.
3
ответ дан 25 May 2018 в 22:00

Вы можете попробовать следующую команду, чтобы увидеть размер архивов, которые необходимо загрузить для определенного пакета.

echo 'n' | sudo apt-get install package | awk '/^Need to get/ {print $4,$5}'

Ответ @enzotib хорош, но он показывает размер архивов, которые необходимо загрузить в другом формате, а не в mb. Но эта команда покажет размер в Mb.

Пример:

$ apt-cache --no-all-versions show chromium-browser | grep '^Size: '
Size: 41493718

$ echo 'n' | sudo apt-get install chromium-browser | awk '/^Need to get/ {print $4,$5}'
44.4 MB
0
ответ дан 25 May 2018 в 22:00
  • 1
    echo 'n' | sudo apt-get install <package> все еще запускает пакет установки, если он имеет очень маленький размер – Pandya 13 March 2016 в 08:09

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

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