La risposta è sì, puoi avere qualsiasi directory su qualsiasi dispositivo, con qualsiasi file system supportato dal sistema operativo.
Quindi puoi avere /
/var
/home
/opt
e anche /home/afr0ck
su dispositivi diversi, partizioni diverse, file system diversi.
Non solo puoi, ma è comune. Ad esempio, si consiglia sempre di mantenere /var
e /home
su partizioni diverse da /
poiché è molto probabile che questi consumino inavvertitamente spazio su disco:se si riempiono, non ha un impatto eccessivo sul sistema. Se si trovano sulla stessa partizione di root, il sistema può arrestarsi.
E potresti voler eseguire directory diverse su dispositivi diversi per motivi di velocità. E usa diversi filesystem per scopi diversi. Ad esempio, forse ext4 è ciò che desideri per i file del sistema operativo, poiché non cambiano molto, ma potresti volere btrfs per /home in modo da poter conservare le istantanee per i backup. Queste sono tutte decisioni che possono essere prese da ogni persona per il suo caso d'uso specifico.
La parte dello spazio utente del sistema operativo non ha bisogno di comprendere i diversi tipi di dispositivi e filesystem. Tutto ciò che fa è chiedere al kernel di spostare un file e il kernel orchestra tutto da lì. Quindi l'mv
Il comando (ad esempio) è indipendente dal filesystem e dal tipo di dispositivo. Il kernel invoca qualsiasi driver sia necessario per leggere e scrivere nelle diverse partizioni.
Sì, i filesystem separati (punti di montaggio) possono essere diversi tipi di filesystem. /proc
è sempre un procfs
filesystem e /sys
è sempre un sysfs
. Filesystem transitori (a volte inclusi /tmp
) sono spesso tmpfs
e, nelle impostazioni del gruppo di lavoro, è normale che le directory home dell'utente (e le directory del prodotto di lavoro) siano nfs
o altri tipi di file system remoti (di rete/condivisi).
Non c'è alcuna gestione speciale da fare per il sistema operativo. Fino a un certo punto, a livello utente, tutti i filesystem si assomigliano, nel senso che un ls
lista avrà praticamente lo stesso aspetto in qualsiasi directory. Oltre quel punto, i filesystem non interagiscono. Anche tra due filesystem (partizioni) sullo stesso disco fisico, dello stesso tipo di filesystem, non c'è collegamento. Ad esempio, spostare un file da un filesystem (punto di montaggio) a un altro comporta sempre la creazione di una copia e l'eliminazione dell'originale. Non importa se sono partizioni su dischi diversi. Non importa se uno di questi è HDD e uno è SSD. Non importa se uno è ext3
e uno è btrfs
. Non importa se uno è interno (all'interno del case del computer) e uno è esterno (a pochi centimetri all'esterno, collegato da un cavo) o remoto (accessibile tramite la rete).
Parlando della rete, è un po' analogo a ssh
. Legge dalla tastiera e invia i caratteri digitati alla rete. Contemporaneamente, legge dalla rete e visualizza i risultati sullo schermo.
Oppure considera questo:immagina di essere al telefono e di mediare una conversazione tra la persona all'altro telefono e un'altra persona nella stanza. Non è un grosso problema.
________
ad eccezione dei collegamenti simbolici, ma possono attraversare i confini del filesystem.