Quando la copia remota viene sovrascritta con la copia locale, la dimensione del file è diversa?


3

Quando sovrascrivo un file remoto con una copia locale, FileZilla trasferisce e sovrascrive correttamente il file, ma noto che la nuova dimensione della copia remota è inferiore di pochi KB rispetto alla copia locale effettiva. Perché succede?

Risposte:


4

Forse questo è legato alla differenza tra "Size" e "Size on disk":

La dimensione è la dimensione effettiva del file in byte.
La dimensione su disco è la quantità effettiva di spazio occupato sul disco.

Quindi, se la dimensione del settore è 512 byte e il file è in realtà 513 byte, la dimensione sul disco sarà 1024 byte perché occupa due settori.

Poiché diversi O / S o dischi possono utilizzare dimensioni di settore diverse, se la dimensione riportata è "Dimensione su disco", le dimensioni saranno diverse.


7

il mediatore si riferisce, penso, alle diverse terminazioni tra Linux e Windows. Mentre * NIX utilizza solo un carattere (ASCII 10) per un'interruzione di riga, Windows usa 2 (ASCII 13 + ACII 10).

I programmi FTP di solito hanno una modalità "Trasferimento testo" o "Trasferimento ASCII" (rispetto alla modalità "Trasferimento binario"), che converte automaticamente questi caratteri, se necessario.

Quindi, se il tuo file ha 1000 righe, è maggiore di 1kB su Win che su sistemi * NIX.

In Filezilla puoi determinare la modalità di trasferimento tramite Transfer - & gt; Transfer Mode nella barra dei menu.

Potrebbe esserci un'altra ragione per cui posso pensare, anche se è altamente improbabile. Se si calcolano i Kilo-Byte, è possibile impostare 1kB = 1024 byte (unità SI) oppure impostare 1KiB = 1000 byte (unità IEC, notare "Ki" anziché "k"). Ciò comporterà anche dimensioni diverse, ma in tutti i casi so che le dimensioni sono calcolate uguali su entrambi i lati di una connessione.


Le modalità di trasferimento sono solitamente chiamate modalità ASCII e modalità binaria. E non c'è quasi mai un motivo per usare la modalità ASCII in questi giorni.
Joachim Sauer

1
Sono d'accordo, finché non usi il Blocco note di Windows *shiver*.
Boldewyn

2

Se il server è un sistema operativo diverso, questo sarebbe il motivo (ad es. Server = Linux, local = Windows). Oppure potrebbe essere che alcuni byte siano stati uccisi fuori dal tuo fare o dal tuo editor di testo (lo spazio bianco è gestito in modo diverso da diversi editor). Sarebbe una supposizione decente senza vedere effettivamente la differenza tra loro.


1

Ho notato questa discrepanza durante la copia di file da un sistema DOMAIN / OS unix-like a Windows, ma poiché utilizzo sempre il trasferimento binario (anche con testo file) Ho dovuto cercare altrove la spiegazione.

Ho notato che sul mio sistema, la dimensione del file originale è espressa come un numero intero di buffer: multipli di 32kB, e che quando il file viene trasferito, vengono conteggiati solo i byte effettivi del file.

Ma io uso un sistema strano e antico e penso che la spiegazione della mederità sia più probabile che sia corretta.


Ehm, la tua risposta è arrivata mentre scrivevo un'estensione alla mia. I casi sono correlati, immagino.
Boldewyn
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.