Программа сжатия, показывающая степень сжатия в реальном времени

Псевдонимы использовались для разрешения множественных адресов до появления IPv6. Множественные адреса являются ключевой частью IPv6, поэтому псевдонимы теперь устарели.

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

Вы должны быть в состоянии буквально заменить eth0:1 на eth0 в вашей конфигурации, и это будет работать. (Существует также более ручная альтернатива с использованием скриптовых крючков).

https://wiki.debian.org/NetworkConfiguration#iproute2_method


Критика: очевидно, в ваших адресах отсутствует часть U в UL.


Пример работы /etc/network/interfaces:

auto lo
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet static
address aaa.aaa.aaa.aaa
netmask 255.255.255.0
broadcast aaa.aaa.aaa.255
gateway aaa.aaa.aaa.254
dns-nameservers aaa.aaa.aaa.254
post-up /etc/firewallup.sh

auto eth0
iface eth0 inet6 static
address fc00::6666
netmask 64
autoconf 1

3
09.05.2017, 18:47
1 ответ

Обычный способ сделать это — использовать что-то вроде pvдля контроля как входного, так и выходного размера программы сжатия.Например:

$ pv -cpterba -N in /dev/urandom | gzip | pv -cpterba -N out > /dev/null 
      out:  956MiB 0:00:42 [23.1MiB/s] [22.8MiB/s] [                           <=>        ]
       in:  956MiB 0:00:42 [23.1MiB/s] [22.8MiB/s] [                           <=>        ]

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

Если вместо этого мы попробуем файл, который очень хорошо сжимается:

$ pv -cpterba -N in /dev/zero | gzip | pv -cpterba -N out > /dev/null 
      out: 2.62MiB 0:00:25 [ 109KiB/s] [ 107KiB/s] [                   <=>                ]
       in: 2.65GiB 0:00:25 [ 110MiB/s] [ 108MiB/s] [                   <=>                ]

Выходной размер — 2,62 МБ, входной — 2,65 ГБ — на 3 порядка больше.

В качестве дополнительного преимущества, если использовать его в обычном файле, pvдаст вам ETA:

$ pv -cpterba -N in debian-8.2.0-amd64-DVD-1.iso | gzip | pv -cpterba -N out > /dev/null 
      out:  578MiB 0:00:27 [22.1MiB/s] [21.4MiB/s] [                  <=>                 ]
       in:  595MiB 0:00:27 [22.1MiB/s] [  22MiB/s] [==>                   ] 15% ETA 0:02:25

Образ Jessie DVD в основном представляет собой сжатые файлы, поэтому он не так хорошо сжимается, но на его создание уйдет еще две с половиной минуты.

Вы также можете использовать pv -dдля мониторинга уже -запущенного процесса — если вы примените это к работающему компрессору, он сообщит вам, где он находится во входном и выходном файле, снова позволяя вам быстро увидеть соотношение:

$ pv -pterba -d "$(pidof gzip)"
   3:/var/tmp/mp3s.tar:  911MiB 0:00:44 [  20MiB/s] [19.9MiB/s] [>         ]  9% ETA 0:07:35
   4:/var/tmp/mp3s.tar.gz:  906MiB 0:00:44 [  20MiB/s] [19.8MiB/s] [                <=>   ] 

Tar-файлы MP3 также плохо сжимаются.

Примечание:Многие компрессоры работают на поблочной основе -за -. Вот почему вы можете увидеть такие вещи, как резкое увеличение скорости передачи, а затем нулевое значение, повторите. Вам нужно дать компрессору немного поработать, прежде чем вы сможете получить реальное представление об ожидаемом соотношении. Имейте в виду, что сразу после всплеска он, вероятно, читается в блоке, но еще не записывает сжатую версию, но если вы уже ждали 10 блоков, это не более 10% ошибки.

(Параметры pv, которые я использую:-pдля включения индикатора выполнения; -tдля включения прошедшего времени; -eдля включения ETA; -rдля отображения скорости передачи; -bдля включения счетчика байтов; -cдля создания нескольких pvs в трубопроводе; -Nдля установки меток ).

4
27.01.2020, 21:18

Теги

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