De inicio yo también pense lo mismo, "mmm... diff está orientado a
compar archivos de texto", pero después de leer un poco la
documentacón, concluí que tiene cierta características que lo hacen
mejor para archivos pero puede identificar perfectamente las
diferencias en archivos binarios. De hecho diff considera primero los
archivos como "datos" (binarios) y no texto.

Un prueba rápida:
[rmt...@amartir01 ~]$ cp /bin/mount tmp/
[rmt...@amartir01 ~]$ diff /bin/mount tmp/mount
[rmt...@amartir01 ~]$ echo "adding garbage" >>tmp/mount
[rmt...@amartir01 ~]$ diff /bin/mount tmp/mount
Binary files /bin/mount and tmp/mount differ

Aunque concuerdo contigo, le tengo más fe a md5sum :P


Saludos,
Rodolfo Martínez



2009/12/3 Fjor <ssf...@gmail.com>:
> Considerando que el diff esta orientado a comparar archivos de texto y no
> binarios (imagenes, ejecutables, etc), no le tengo mucha confianza para
> verificar copias, ademas de que me cae gordo que me de el hexadecimal
> de la diferencia.
>
> Yo prefiero generar los md5 de los archivos a una lista y comparar las listas:
>
>  cd micarpetaorigen
>  find . -type f -exec md5sum "{}" > /md5s-origen.txt
>
>  cd micarpetadestino
>  find . -type f -exec md5sum "{}" > /md5s-destino.txt
>
>  diff --side-by-side --suppress-common-lines  /md5s-origen.txt
> /md5s-destino.txt
>
> Lo cual muestra solo los archivos con diferencias. Con el md5 hay garantia de
> deteccion de igualdad, aparte de que esta tecnica te permite comparar arboles
> completos de directorios, siempre y cuando tengan la misma estructura.
>
> Por otra parte, se puede hacer la comparacion con exactamente las mismas
> instrucciones en Windows instalando el cygwin (aunque existe un md5sum para
> Windows, ciertamente no tiene un find tan comodo para sacar listas de archivos
> y aplicarles un comando a todos!). Descargalo de http://www.cygwin.com, y en
> lo sucesivo podras usar un bash en windows. Lo unico enfadoso es el usar
> la notacion /cygdrive/c para el disco c:, pero incluso eso se puede configurar
> para que sea simplemente /c, /d, etc.
>
> Saludos!
> Fjor
>
> 2009/12/2 Miguel Cardenas <warlock...@yahoo.com>:
>> Holas
>>
>> Ayer termine de hacerle todos los tests al usb externo, todo dio normal y 
>> sin errores:
>>
>> - full format (no el rapido) ntfs en windows
>> - seagate manager tools (windows) : test drive
>> - tuneup disk doctor (windows, standard y avanzado)
>> - mkfs.ext3 -c -c (verificar read y write antes de hacer filesystem)
>> - mkfs.reiserfs
>> - ya no hace ruidos ni hay jaloneos internos en la unidad
>>
>> Todas las pruebas, formatos y acciones realizadas muestran que esta normal y 
>> en optimas condiciones... esta vez solo trabaje en la desktop (por aquello 
>> de la posibilidad del usb malo del la laptop, que lo dudo) y en apariencia 
>> todo es normal y perfecto, hasta que...
>>
>> Hasta que en linux empiezo a copiarle archivos sobre una particion ext3, la 
>> copia finaliza exitosamente, pero al ejecutar "diff -r /origen/prueba 
>> /mnt/seagate/prueba" resulta que reporta que varios archivos (mas de la 
>> mitad) difieren. Ojo, probe con unos 20 archivos de 350Mb cada uno. Al 
>> parecer el problema no es con archivos chicos, sino los grandes que toman 
>> largo tiempo de escritura.
>>
>> Posteriormente cambie a reiserfs y realice la misma prueba. El resultado fue 
>> mejor, pero de los mismos 20 archivos 7 resultaron con diferencias.
>>
>> Para fotos o videos esto es digamos imperceptible si los cambios son 
>> minimos, pero en el caso de imagenes ISO o respaldos hechos con clonezilla o 
>> archivos largos comprimidos pues si seria una verdadera tragedia.
>>
>> Solo me queda realizar pruebas desde windows, segun la lectura y escritura 
>> es correcta pero en linux con archivos largos tuerce el rabo aunque ahora ya 
>> no hace ruidos. Quiero probar la integridad de archivos trabajando desde 
>> windows, pero alguien de ustedes conoce una utileria para comparar archivos 
>> en windows? sorry por la pregunta pero yo no uso windows y desconozco lo que 
>> hay...
>>
>> Ah, y respecto al titulo de este mensaje, ahorita leyendo la documentacion 
>> de instalacion del debian (actualmente hay slackware) vi una seccion de 
>> "Large Disk Support", algo sobre discos de mas de 137Gb, LVM, etc. Entendi 
>> que los discos IDE necesitan un manejo especial, pero que los scsi (segun el 
>> usb externo jala como scsi) no es necesario. Creen que pueda haber algo de 
>> esto en mi problema? Ojo, yo solo hice una particion normal EXT3 con el 100% 
>> de espacio del disco... esta vez la hice con el 50% de espacio y no se puso 
>> tan necio (o sera que el filesystem anterior ya andaba muy fregado)... creen 
>> que pueda haber algo de esto? como puedo saber y se puede hacer algo en dado 
>> caso? Igual la cajetie al hacer la particion o configurar el kernel y que 
>> linux ve el disco de forma distorsionada...
>>
>> Saludos y gracias
>
>
>
> --
> Caminar y caminar por la vereda del saber...
> ... de vez en cuando, mirar una estrella.
>
> Francisco de Jesús Orozco Ruiz
> Administración de Redes e Internet
> Centro de Enseñanza Técnica Industrial - GDL
>

Responder a