Como classificar atualizações com base na data de lançamento no teste do Debian?

3

Sou um usuário do Linux, que é baseado no teste debian. O teste Debian é uma distribuição de lançamento. A natureza de teste desta distro faz com que algumas atualizações de pacotes sejam problemáticas. Eu estou procurando uma maneira de classificar pacotes por data de lançamento. Eu quero instalar atualizações após um dia de montagem liberado para garantir que haja um bug mínimo. Eu já estou familiarizado com um bom programa chamado apt-listbugs que me mostra um bug reportado antes de instalar um pacote que me ajuda a encontrar bugs relatados.

Resumindo: Como posso classificar atualizações com base na data de lançamento do teste do Debian?

    
por user9224 21.07.2011 / 11:25

2 respostas

1

Acho que você pode fazer uma atualização apenas com donwload:

sudo apt-get --download-only dist-upgrade

verifique os timestamps dos arquivos em /var/cache/apt/archives , eles não são, como você pode imaginar, o timestamp de download, mas os timestamps dos mesmos arquivos .deb no servidor.

Portanto, remova os arquivos que são muito novos (com a ajuda de find , sugiro) e faça uma atualização sem download, que usará os arquivos restantes no diretório anterior:

sudo apt-get --no-download dist-upgrade

Como alternativa, você pode obter os carimbos de data / hora dos pacotes atualizáveis do arquivo ls-lR.gz que reside no servidor, embora também baixe esse arquivo para 6-7MB. Aqui está um script para obter a lista ordenada

#!/bin/bash

server_list_url="http://ftp.debian.org/debian/ls-lR.gz"
server_list="${server_list_url##*/}"
LANG=en

# get urls of upgradable packages
apt-get --print-uris --yes dist-upgrade |
  awk -F \' '/(ht|f)tp/ { print $2 }' |
  sed -r 's/^.*\///' >local_list

if [[ -s local_list ]]; then

  wget -qN "$server_list_url"

  # sort older packages by time (8th fiels is year)
  zgrep -F -f local_list "$server_list" |
    awk '$8 !~ /:/' |
    sort -k8,8n -k6,6M -k7,7n -k9

  # sort newer packages by time (8th field is hour:min)
  zgrep -F -f local_list "$server_list" |
    awk '$8 ~ /:/' |
    sort -k6,6M -k7,7n -k8,8 -k9
else
  echo "No package to upgrade" >&2
fi
    
por 21.07.2011 / 14:43
0

Não tenho certeza se entendi sua pergunta, mas você pode usar wajig para um propósito semelhante. É o comando upgrade que cria arquivos DEB de seus pacotes atualmente instalados (usa dpkg-repack ) que estão prestes a ser atualizados. Isso acontece antes do upgrade ocorrer. Aqui está o que o comando parece:

wajig --backup=/path/to/dir upgrade

Os pacotes resultantes são colocados dentro de um diretório (em " / caminho / para / dir ) cujo nome é a data e hora atuais.

    
por 21.07.2011 / 12:16