Arch Linux e os Deltas de Pacotes

Publicado por edps em 18/04/2012

[ Hits: 6.895 ]

Blog: https://edpsblog.wordpress.com/

 


Arch Linux e os Deltas de Pacotes



E desta vez, finalmente consegui fazer os Deltas funcionarem no Arch Linux. Já tinha conhecimento dos mesmos, mas até então, nada!

De antemão, segue os créditos aos usuários @niquelnausea do Fórum Arch Linux Brasil, e ao amigo @rootgerr, que me contou a novidade:
A chave para o sucesso, é a inserção das linhas abaixo no arquivo "/etc/pacman.d/mirrorlist":

## Delta Archlinux.fr
Server = http://delta.archlinux.fr/$repo/os/$arch


E devemos habilitar a opção UseDelta em "/etc/pacman.conf":

# Misc options
UseSyslog
UseDelta
# CheckSpace
# VerbosePkgLists

TotalDownload


E especificamente para o meu caso, desabilitar os Repositórios do ARM (Arch RollBack Machine), passando a fazer uso dos repositórios tradicionais:

[core]
# SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

[extra]
# SigLevel = PackageOptional
Include = /etc/pacman.d/mirrorlist

[community]
# SigLevel = PackageOptional
Include = /etc/pacman.d/mirrorlist


Daí por diante, bastará um:

sudo pacman -Syu

Logs

Abaixo, vejam os Logs. O primeiro é uma simulação do 'sysupgrade' sem o uso dos Deltas. Para a atualização completa, seria necessário baixar 354,87 MB de dados:

sudo pacman-color -Su

:: Sincronizando a base de dados de pacotes...
--2012-04-08 21:29:04--  http://delta.archlinux.fr/core/os/i686/core.db
Resolvendo delta.archlinux.fr... 91.121.141.57
Conectando-se a delta.archlinux.fr|91.121.141.57|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 109196 (107K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/core.db.part”

100%[============================================>] 109.196     7,90K/s   em 24s     

2012-04-08 21:29:29 (4,40 KB/s) - “/var/lib/pacman/sync/core.db.part” salvo [109196/109196]

--2012-04-08 21:29:29--  http://delta.archlinux.fr/extra/os/i686/extra.db
Resolvendo delta.archlinux.fr... 91.121.141.57
Conectando-se a delta.archlinux.fr|91.121.141.57|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 1502716 (1,4M) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/extra.db.part”

100%[============================================>] 1.502.716   5,69K/s   em 4m 28s  

2012-04-08 21:33:58 (5,48 KB/s) - “/var/lib/pacman/sync/extra.db.part” salvo [1502716/1502716]

--2012-04-08 21:33:58--  http://delta.archlinux.fr/community/os/i686/community.db
Resolvendo delta.archlinux.fr... 91.121.141.57
Conectando-se a delta.archlinux.fr|91.121.141.57|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 1741183 (1,7M) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/community.db.part”

100%[============================================>] 1.741.183   4,74K/s   em 5m 59s  

2012-04-08 21:39:58 (4,74 KB/s) - “/var/lib/pacman/sync/community.db.part” salvo [1741183/1741183]

--2012-04-08 21:39:58--  http://repo.archlinux.fr/i686/archlinuxfr.db
Resolvendo repo.archlinux.fr... 91.121.141.57
Conectando-se a repo.archlinux.fr|91.121.141.57|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 33702 (33K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/archlinuxfr.db.part”

100%[============================================>] 33.702      3,92K/s   em 8,4s    

2012-04-08 21:40:13 (3,92 KB/s) - “/var/lib/pacman/sync/archlinuxfr.db.part” salvo [33702/33702]

--2012-04-08 21:40:13--  http://archstuff.vs169092.vserver.de/i686/archstuff.db
Resolvendo archstuff.vs169092.vserver.de... 62.75.169.92
Conectando-se a archstuff.vs169092.vserver.de|62.75.169.92|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 55629 (54K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/archstuff.db.part”

100%[============================================>] 55.629      4,18K/s   em 13s     

2012-04-08 21:40:27 (4,25 KB/s) - “/var/lib/pacman/sync/archstuff.db.part” salvo [55629/55629]

--2012-04-08 21:40:27--  http://repo.herecura.be/herecura-stable/i686/herecura-stable.db
Resolvendo repo.herecura.be... 46.21.173.227
Conectando-se a repo.herecura.be|46.21.173.227|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 26621 (26K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/herecura-stable.db.part”

100%[============================================>] 26.621      2,63K/s   em 9,9s    

2012-04-08 21:40:40 (2,63 KB/s) - “/var/lib/pacman/sync/herecura-stable.db.part” salvo [26621/26621]

--2012-04-08 21:40:40--  http://repo.herecura.be/herecura-stable/any/herecura-stable-any.db
Resolvendo repo.herecura.be... 46.21.173.227
Conectando-se a repo.herecura.be|46.21.173.227|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 9812 (9,6K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/herecura-stable-any.db.part”

100%[============================================>] 9.812       4,41K/s   em 11s     

2012-04-08 21:40:54 (876 B/s) - “/var/lib/pacman/sync/herecura-stable-any.db.part” salvo [9812/9812]

--2012-04-08 21:40:54--  http://huulivoide.pp.fi/Arch/arch-fonts/arch-fonts.db
Resolvendo huulivoide.pp.fi... 195.170.137.244
Conectando-se a huulivoide.pp.fi|195.170.137.244|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 139636 (136K) [application/x-gzip]
Salvando em: “/var/lib/pacman/sync/arch-fonts.db.part”

100%[============================================>] 139.636     2,18K/s   em 59s     

2012-04-08 21:41:54 (2,30 KB/s) - “/var/lib/pacman/sync/arch-fonts.db.part” salvo [139636/139636]

--2012-04-08 21:41:54--  http://repo.ayatana.info/ayatana.db
Resolvendo repo.ayatana.info... 109.74.200.166
Conectando-se a repo.ayatana.info|109.74.200.166|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 62102 (61K) [text/plain]
Salvando em: “/var/lib/pacman/sync/ayatana.db.part”

100%[============================================>] 62.102      3,91K/s   em 47s     

2012-04-08 21:42:46 (1,30 KB/s) - “/var/lib/pacman/sync/ayatana.db.part” salvo [62102/62102]

--2012-04-08 21:42:46--  http://xyne.archlinux.ca/repos/xyne-any/xyne-any.db
Resolvendo xyne.archlinux.ca... 69.89.25.172
Conectando-se a xyne.archlinux.ca|69.89.25.172|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 15368 (15K) [text/plain]
Salvando em: “/var/lib/pacman/sync/xyne-any.db.part”

100%[============================================>] 15.368      1,25K/s   em 12s     

2012-04-08 21:43:00 (1,25 KB/s) - “/var/lib/pacman/sync/xyne-any.db.part” salvo [15368/15368]

--2012-04-08 21:43:00--  http://repo-ck.com/i686/repo-ck.db
Resolvendo repo-ck.com... 97.74.158.128
Conectando-se a repo-ck.com|97.74.158.128|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 12462 (12K) [text/plain]
Salvando em: “/var/lib/pacman/sync/repo-ck.db.part”

100%[============================================>] 12.462      5,31K/s   em 2,3s    

2012-04-08 21:43:03 (5,31 KB/s) - “/var/lib/pacman/sync/repo-ck.db.part” salvo [12462/12462]

--2012-04-08 21:43:03--  http://pkgbuild.com/~heftig/repo/i686/heftig.db
Resolvendo pkgbuild.com... 176.9.18.112, 2a01:4f8:150:1261::2
Conectando-se a pkgbuild.com|176.9.18.112|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 2717 (2,7K) [text/plain]
Salvando em: “/var/lib/pacman/sync/heftig.db.part”

100%[============================================>] 2.717       5,11K/s   em 0,5s    

2012-04-08 21:43:12 (5,11 KB/s) - “/var/lib/pacman/sync/heftig.db.part” salvo [2717/2717]

--2012-04-08 21:43:12--  http://dl.dropbox.com/u/11734958/i686/pfkernel.db
Resolvendo dl.dropbox.com... 107.22.172.16, 174.129.254.86, 23.21.242.170, ...
Conectando-se a dl.dropbox.com|107.22.172.16|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 11565 (11K) [application/octet-stream]
Salvando em: “/var/lib/pacman/sync/pfkernel.db.part”

100%[============================================>] 11.565      3,01K/s   em 3,7s    

2012-04-08 21:43:17 (3,01 KB/s) - “/var/lib/pacman/sync/pfkernel.db.part” salvo [11565/11565]

:: Iniciando atualização completa do sistema...
:: Substituir gnupg2 por core/gnupg? [S/n] s
atenção: mesa: ignorando atualização do pacote (8.0.1-2 => 8.0.2-1)
atenção: tint2-svn: local (648-1) é mais novo que archlinuxfr (646-1)
resolvendo dependências...
atenção: dependência cíclica detectada:
atenção: util-linux será instalado antes de sua dependência udev
procurando por conflitos inter-relacionados...

Alvos (122): audacious-3.2.2-1  audacious-plugins-3.2.2-1  aurora-13.0a2-0.20120407
             automake-1.11.4-1  avahi-0.6.31-2  bash-completion-1.99-2
             binutils-2.22-5  bluez-4.99-2  boost-libs-1.49.0-1.1
             chromium-18.0.1025.151-3  coreutils-8.16-2  curl-7.25.0-1
             dhcpcd-5.5.6-1  dirmngr-1.1.0-4  expat-2.1.0-1  feh-2.5-1  fftw-3.3.1-1
             filesystem-2012.2-4  flashplugin-11.2.202.228-1  fontsproto-2.1.2-1
             freetype2-2.4.9-2  garcon-0.1.11-1  gawk-4.0.1-1  gcc-4.7.0-3
             gcc-libs-4.7.0-3  git-1.7.10-1  glibc-2.15-10  gnome-doc-utils-0.20.10-1
             gnupg-2.0.19-1  gnupg2-2.0.18-1 [removal]  gnutls-3.0.18-1
             gpgme-1.3.1-4  grub2-bios-1:2.00beta3-1  grub2-common-1:2.00beta3-1
             gtk2-xfce-engine-2.99.2-1  gtk3-xfce-engine-2.99.2-1
             imagemagick-6.7.6.2-1  initscripts-2012.03.2-1  intltool-0.50.2-1
             kbproto-1.0.6-1  kde-l10n-pt_br-4.8.2-1  kdebase-dolphin-4.8.2-1
             kdebase-kdialog-4.8.2-1  kdebase-lib-4.8.2-1  kdebase-runtime-4.8.2-1
             kdelibs-4.8.2-1  kdemultimedia-kioslave-4.8.2-1  kmod-7-2  krb5-1.10.1-2
             libarchive-3.0.4-1  libburn-1.2.2-1  libdrm-2.4.33-1  libgpod-0.8.2-4
             libiodbc-3.52.8-1  libisoburn-1.2.2-1  libisofs-1.2.2-1
             libldap-2.4.30-1  libltdl-2.4.2-5  libmtp-1.1.2-2  libnotify-0.7.5-1
             libpng-1.5.10-1  libtool-2.4.2-5  libupnp-1.6.16-1  libxaw-1.0.10-1
             linux-3.3.1-1  linux-api-headers-3.3-1  linux-headers-3.3.1-1
             lirc-utils-1:0.9.0-15  lm_sensors-3.3.2-2  man-pages-3.38-1
             mercurial-2.1.2-1  mkinitcpio-0.8.6-2  mpg123-1.13.7-1
             notification-daemon-0.7.4-1  nvidia-295.33-2  nvidia-utils-295.33-1
             openssl-1.0.1-2  opera-11.62-1  oxygen-icons-4.8.2-1  p11-kit-0.12-1
             pcmciautils-018-4  pkgtools-24-1  pycups-1.9.61-1  qt-4.8.1-1
             raptor-2.0.7-1  recordproto-1.14.2-1  ristretto-0.3.6-1
             ruby-1.9.3_p125-4  scrnsaverproto-1.2.2-1  soundconverter-2.0.2-1
             syslinux-4.05-4  syslog-ng-3.3.4-5  system-config-printer-common-1.3.9-2
             system-config-printer-gnome-1.3.9-2  taglib-1.7.1-1
             thunar-volman-0.6.1-1  ttf-liberation-1.07.2-1  tumbler-0.1.24-1
             tzdata-2012c-1  udev-181-9  udisks-1.0.4-3  usb_modeswitch-1.2.2-2
             util-linux-2.21.1-2  virtualbox-4.1.12-1  virtualbox-additions-4.1.12-1
             virtualbox-modules-4.1.12-2  wine-1.5.1-1  xarchiver-0.5.2-5
             xcb-proto-1.7.1-1  xextproto-7.2.1-1  xfce4-power-manager-1.0.11-1
             xorg-luit-1.1.1-1  xorg-server-1.12.0.901-1
             xorg-server-common-1.12.0.901-1  xorg-setxkbmap-1.3.0-1
             xorg-xauth-1.0.7-1  xorg-xgamma-1.0.5-1  xorg-xhost-1.0.5-1
             xorg-xkbcomp-1.2.4-1  xorg-xmodmap-1.0.6-1  xz-5.0.3-2
             youtube-dl-2012.02.27-1

Tamanho Total Download:    234,37 MiB
Tamanho Total Instalado:   1209,02 MiB
Alteração no Tamanho:      -17,07 MiB

Prosseguir com a instalação? [S/n]


- Exemplificando

Vejam a economia (3,29MB), na atualização do navegador Opera:
Enquanto que da forma tradicional, seriam necessários 10,9MB: http://www.archlinux.org - Opera

Referências


Dica publicada em meu
Blog.

Outras dicas deste autor

Instalação da nova versão do editor NANO no Linux

repacman - reempacote um programa no Arch Linux

ImageShack Uploader

Convertendo arquivos PDF para TXT

SpaceFM, um excelente Gerenciador de Arquivos

Leitura recomendada

Entrevista com Martin Michlmayr do Projeto Debian

Convertendo pacotes .deb (Debian) para .xbps (Void Linux)

Criando pequenos pacotes TGZ

Ativando NumLock automaticamente do login do Ubuntu

eject - Comando para abrir/fechar drive de disco

  

Comentários
[1] Comentário enviado por albfneto em 18/04/2012 - 22:04h

sistema Delta funciona em varias distros: Gentoo, Sabayon, OpenSUSE (zypper) etc...

[2] Comentário enviado por removido em 18/04/2012 - 22:09h

No Gentoo, Debian e Fedora eu sabia e já fiz|faço uso, no Arch era meio que uma lenda, tipo não sabia onde estava o repositórios dos deltas, com essa dica do @niquelnausea ficou mamão-com-açucar.

Ontem mesmo no meu Debian SID haviam 160MB de downloads para um upgrade completo, com o uso dos deltas se eu baixei 30MB foi muito:

http://gnu2all.blogspot.com.br/2012/04/screenshot-debian-sid.html

[3] Comentário enviado por levi linux em 19/04/2012 - 12:16h

Parabéns. Excelente tutorial, bastante útil. Favoritado.

[4] Comentário enviado por removido em 19/04/2012 - 16:04h

Valeu Levi, thanks brother!

[5] Comentário enviado por removido em 20/06/2012 - 23:37h

Olá, Edinaldo

Eu procurei sobre esses pacotes delta no wiki do arch linux e pelo google e não encontrei uma definição para esse tipos de pacotes.
O que acontece é que fiquei interessado na economia de espaço e gostaria saber o que de fato esses deltas são.

Obrigado

[6] Comentário enviado por removido em 21/06/2012 - 19:36h

@Seninha;

a melhor explicação possível está na própria Arch Wiki:

https://wiki.archlinux.org/index.php/Deltup

de fato reduz bastante o download de pacotes, principalmente para quem usa KDE, Gnome, LibreOffice.

* mas também... a criação dos novos pacotes e a instalação dos mesmos demora bastante! nem se compara aos deltas do Debian ou Fedora.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts