Como dice el título, cuando subo un archivo (en mi caso, un jar cifrado) a través de FTP en mi servidor (que ejecuta Ubuntu 20.04) e intento descargarlo, algunos bytes del jar parecen cambiar (al igual que la suma de comprobación relativa sha). ).
¿Alguien sabe por qué sucede esto y cómo "solucionarlo"?
Detalles del archivo original:
Detalles del archivo descargado:
Bytes del archivo original:
Bytes de archivos descargados:
Actualizar: aparentemente esto sucede sólo si subo un archivo con extensión jar. Intenté cambiar el nombre del archivo de "Test_original.jar" a "Test_original" (sin extensión) y cargarlo, el sha256 es el mismo que mi archivo en el escritorio.
Actualización parte 2: Aparentemente en el servidor la copia coincide con la original, así que supongo que algo salió mal durante la descarga/el servidor procesando el archivo cuando llega una solicitud de descarga (?)
Respuesta1
Lo más probable es que hayas utilizado una máquina con Windows en el proceso y hayas olvidado utilizar la binary
opción FTP.
Dado que Windows usa finales de línea diferentes ( \r\n
) que el resto del mundo, el valor predeterminado es traducir todo \n
lo que no tenga el prefijo a \r
a \r\n
. Esto tiene poco sentido con archivos de texto, pero es destructivo para archivos binarios.
Cómo evitarlo depende del cliente FTP que utilice: para el cliente de línea de comando, simplemente escriba binary
después de iniciar sesión; para un cliente GUI, busque la configuración correspondiente.