1 |
On 10/17/06, Bruno Laturner <renrutal@×××××.com> wrote: |
2 |
> On 10/17/06, Pablo NatuNobilis <natunobilis@××××××××.org> wrote: |
3 |
> > Uau. Algo realmente estava estranho. Eu já tinha refeito um sync, mas o |
4 |
> > problema persistia. |
5 |
> > Mesmo assim, resolvi olhar o ebuild. E qual não foi minha surpresa ao |
6 |
> > ver que o conteúdo do ebuild não era texto, e sim binário. |
7 |
> > Esquisitíssimo. |
8 |
> > |
9 |
> > Apaguei todos os ebuilds de xf86-input-{keyboard,mouse} e |
10 |
> > xf86-driver-nv, refiz o sync, e fui conferir os ebuilds deles. Agora |
11 |
> > sim, eram texto e parecia tudo bem. |
12 |
> > Dei o emerge normalmente, e dessa vez o resultado foi correto. Já está |
13 |
> > tudo funcionando novamente. |
14 |
> > |
15 |
> > Mas a parte curiosíssima é: ao dar emerge num pacote, são verificadas |
16 |
> > várias somas (MD5, RMD160, SHA256 e SHA1) pra ver a integridade do |
17 |
> > ebuild. O processo de instalação dos pacotes estragados ia normalmente |
18 |
> > até o fim em todas as minhas tentativas. |
19 |
> > |
20 |
|
21 |
Realmente é estranho... Não consigo achar uma explicação lógica... |
22 |
|
23 |
> > Agora essa é a minha dúvida, embora o problema já tenha sido resolvido: |
24 |
> > Como pode a verificação de integridade não acusar erro algum, quando o |
25 |
> > ebuild está claramente estragado? |
26 |
> > |
27 |
> |
28 |
> Esse claramente estragado é relativo, para o computador _tudo_ é |
29 |
> binário. Assim, todos os verificadores de integridade de arquivos |
30 |
> checam se a ordem dos zeros e uns está certa, não se o conteúdo está |
31 |
> sendo visualizado corretamente. |
32 |
|
33 |
O Bruno está certo, mas ainda assim isso não quer dizer nada, pois a |
34 |
diferença básica entre um arquivo texto e um arquivo binário está no |
35 |
interpretador do mesmo, que pode ou não levar em conta o bit mais |
36 |
significativo do byte lido, que é ignorado pelo padrão ASCII (texto |
37 |
puro). Como ebuilds são texto, esse bit seria ignorado, mas ainda |
38 |
assim seria computado para efeitos de checksum. |
39 |
|
40 |
> |
41 |
> Pro computador, nada estaria estragado, mas pra você o texto estaria |
42 |
> fora de ordem, a placa de som tocaria ruidos, o dispositivo de vídeo |
43 |
> apresentaria uma imagem estranha, a página web não carregaria, o |
44 |
> executável nem rodaria, etc, até que se encontrasse o formato certo p/ |
45 |
> interpretar a mídia. |
46 |
> |
47 |
|
48 |
Aí é que está, o checksum dando correto, o arquivo estaria correto, é |
49 |
simples assim. Mesmo que UM bit não significativo estivesse incorreto |
50 |
o checksum daria errado e consequentemente não tentaria instalar pela |
51 |
ebuild corrompida. A explicação mais próxima que consigo pensar é um |
52 |
problema de I/O, que seria algo mais profundo ao sistema operacional |
53 |
para isso acontecer. Não importa o interpretador, o checksum deveria |
54 |
evitar esse tipo de coisa exatamente por não se importar com o tipo de |
55 |
arquivo. |
56 |
|
57 |
MUITO estranho.... |
58 |
|
59 |
-- |
60 |
Daniel da Veiga |
61 |
Computer Operator - RS - Brazil |
62 |
-----BEGIN GEEK CODE BLOCK----- |
63 |
Version: 3.1 |
64 |
GCM/IT/P/O d-? s:- a? C++$ UBLA++ P+ L++ E--- W+++$ N o+ K- w O M- V- |
65 |
PS PE Y PGP- t+ 5 X+++ R+* tv b+ DI+++ D+ G+ e h+ r+ y++ |
66 |
------END GEEK CODE BLOCK------ |
67 |
|
68 |
-- |
69 |
gentoo-user-br@g.o mailing list |