Come discusso nella Parte 1 e nella Parte 2 di questa serie, Stratis è un filesystem di gestione dei volumi con funzionalità simili a quelle di ZFS e Btrfs. In questo articolo, illustreremo come utilizzare Stratis sulla riga di comando.
Come ottenere Stratis
Per i non sviluppatori, il modo più semplice per provare Stratis ora è in Fedora 28.
Una volta eseguito, puoi installare il demone Stratis e lo strumento da riga di comando Stratis con:
# dnf install stratis-cli stratisd
Creazione di un pool
Stratis ha tre concetti:blockdevs , piscine e filesystem . I Blockdev sono i dispositivi a blocchi, come un disco o una partizione del disco, che costituiscono un pool. Una volta creato un pool, è possibile creare filesystem da esso.
Supponendo che tu abbia un dispositivo a blocchi chiamato vdg
sul tuo sistema che non è attualmente in uso o montato, puoi creare un pool Stratis su di esso con:
# stratis pool create mypool /dev/vdg
Questo presuppone vdg
è completamente azzerato e vuoto. Se non è in uso ma contiene vecchi dati, potrebbe essere necessario utilizzare pool create
- force
di opzione. Se lo è in uso, non usarlo per Stratis.
Se vuoi creare un pool da più di un dispositivo a blocchi, elencali tutti su pool create
riga di comando. Puoi anche aggiungere più blockdev in un secondo momento usando i blockdev add-data
comando. Tieni presente che Stratis richiede che i blockdev abbiano una dimensione di almeno 1 GiB.
Creazione di filesystem
Dopo aver creato un pool chiamato mypool
, puoi creare filesystem da esso:
# stratis fs create mypool myfs1
Dopo aver creato un filesystem chiamato myfs1
dal pool mypool
, puoi montarlo e usarlo, usando le voci che Stratis ha creato all'interno di /dev/stratis:
# mkdir myfs1
# mount /dev/stratis/mypool/myfs1 myfs1
Il filesystem è ora montato su myfs1
e pronto per l'uso.
Istantanee
Oltre a creare filesystem vuoti, puoi anche creare un filesystem come istantanea di un filesystem esistente:
# stratis fs snapshot mypool myfs1 myfs1-experiment
Dopo averlo fatto, puoi montare il nuovo myfs1-experiment
, che inizialmente conterrà lo stesso contenuto del file di myfs1
, ma potrebbe cambiare quando il filesystem viene modificato. Qualunque modifica tu abbia apportato a myfs1-experiment
non si rifletterebbe in myfs1
a meno che tu non abbia smontato myfs1
e lo distrusse con:
# umount myfs1
# stratis fs destroy mypool myfs1
e quindi ha creato un'istantanea dell'istantanea per ricrearla e rimontarla:
# stratis fs snapshot mypool myfs1-experiment myfs1
# mount /dev/stratis/mypool/myfs1 myfs1
Ricevere informazioni
Stratis può elencare i pool nel sistema:
# stratis pool list
Poiché i filesystem hanno più dati scritti su di loro, vedrai aumentare il valore "Totale fisico utilizzato". Fai attenzione quando questo si avvicina alla "dimensione fisica totale"; stiamo ancora lavorando per gestirlo correttamente.
Per elencare i filesystem all'interno di un pool:
# stratis fs list mypool
Per elencare i blockdev che compongono un pool:
# stratis blockdev list mypool
Attualmente forniscono solo informazioni minime, ma ne forniranno altre in futuro.
Distruggere una piscina
Una volta che hai un'idea di cosa può fare Stratis, per distruggere il pool, assicurati prima di tutto che tutti i filesystem creati da esso siano smontati e distrutti, quindi usa il pool destroy
comando:
# umount myfs1
# umount myfs1-experiment (if you created it)
# stratis fs destroy mypool myfs1
# stratis fs destroy mypool myfs1-experiment
# stratis pool destroy mypool
stratis pool list
ora non dovrebbe mostrare pool.
Questo è tutto! Per ulteriori informazioni, consultare la manpage:man stratis
.