Cosè un file system union in Unix? Qual è il file system utilizzato in Windows? In che modo è diverso luno dallaltro? Quali sono i vantaggi / svantaggi rispetto agli altri?


Migliore risposta

Quattro domande … e nessuna risposta è necessariamente breve.

“Che cosè un file system union in Unix? “

Un filesystem union è una struttura che permette ai filesystem di operare insieme a strati. Normalmente solo il livello superiore è di lettura / scrittura. Se un file deve essere letto, la valutazione della chiamata di sistema aperta cerca il file prima nel livello superiore. Se manca, guarda il livello successivo. Se manca … fino allultimo strato. Un filesystem union non fa altro che passare le operazioni sui file ad un altro filesystem (o gestire il “white out” discusso di seguito).

Una delle caratteristiche importanti è che è possibile avere lunione monta per copiare i file nel livello superiore quando sono aperti per la scrittura. E questo include la copia delle directory nel livello superiore per rispecchiare ciò che viene utilizzato negli altri.

Il risultato finale è che lunione mount mostra il contenuto di tutti i filesystem così impilati. E sembrano tutti avere la stessa struttura di directory.

Il problema che questo introduce è cosa succede quando un file (o una directory) viene cancellato? Poiché solo il livello superiore è scrivibile, ciò richiede una qualche forma di “white out” che blocca luso di directory / file cancellati anche se quelle stesse directory / file esistono ancora nei livelli inferiori dellunione. Questo introduce ulteriori problemi (come le race condition …) nel tentativo di mantenere lintegrità del filesystem e le operazioni atomiche su di esso.

In qualche modo, questo è simile a un file system di checkpoint. La differenza principale è che i filesystem che comprendono il mount union possono risiedere su partizioni differenti.

Uno dei grandi vantaggi di un filesystem union è che consente allamministratore di migrare un filesystem dalla memoria esistente (che potrebbe essere raggiungendo il suo limite) a un nuovo filesystem che è molto più grande, pur rimanendo online e attivo.

Questo è uno degli approcci che ho usato per migrare da un filesystem da 9 TB con 50 milioni di file a un nuovo filesystem di 16 TB di dimensione.

“Qual è il file system utilizzato in Windows?”

NTFS è il filesystem predefinito utilizzato, con disponibile anche FAT / VFAT / FAT32.

“In che modo è diverso luno dallaltro?”

Nessun confronto con laltro che “tutti archiviano file”. NTFS non è bravo nellallocazione come Ext3 / 4, quindi richiede uno strumento di deframmentazione incluso. FAT e le sue varianti sono soggette a errori senza alcun controllo di sicurezza.

“Quali sono i vantaggi / svantaggi rispetto agli altri?”

Ho trovato i filesystem Linux più affidabili, con meno errori (in media – i nuovi filesystem tendono ad avere bug), meno overhead richiesto e migliori controlli di sicurezza.

Risposta

Quando si inviano dati binari tramite un modem o tramite posta elettronica, è necessario per convertire i byte a 8 bit in codici ASCII a 7 bit per evitare di inviare codici di controllo che interrompono la connessione o eseguono altre funzioni indesiderate.

uuencode e uudecode (lUU sta per Unix-to- Unix) ha preparato i file suddividendo il flusso binario in blocchi di sei bit che indirizzano una tabella di ricerca di 64 caratteri alfanumerici e di punteggiatura, disposti in righe di lunghezza fissa con caratteri di nuova riga. Per convenzione, ai file codificati veniva assegnata unestensione .uue.

Quando decodificato, il flusso di caratteri viene assemblato in byte a 8 bit dagli indici a 6 bit della tabella di ricerca per ricostituire il file binario.

Questi comandi fanno parte di una suite di programmi usati ai tempi delle connessioni modem dialup o su linea dedicata prima di TCP / IP: uucp (Unix-to-Unix CoPy), uux (Unix-to-Unix eXecute ), uucico (Unix-to-Unix Copy In Copy Out) e il demone uuxqt. Questi possono essere configurati per funzionare su TCP / IP, ma sono usati raramente e non sono inclusi nella maggior parte delle installazioni di base della distribuzione Linux. Possono essere utilizzati tra due macchine collegate tramite un cavo seriale.

Tuttavia, la codifica base 64 è ancora utilizzata per codificare / decodificare gli allegati di file per le e-mail, come parte della specifica MIME (Multipurpose Internet Mail Extensions) . uuencode e uudecode sono stati in gran parte sostituiti dai comandi mpack e munpack, che sono in grado di gestire più segmenti codificati in un file o codificare e inviare un messaggio di posta elettronica, o decodificare gli allegati in un messaggio di posta elettronica così come duplicare il uuencode uudecode single- operazioni sui file.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *