Modo corretto per creare un zfs da una directory esistente?


9

Diciamo che ho un rpool con etc / come una normale directory al suo interno e ora voglio creare un zfs rpool / etc separato, ovviamente ereditando tutti i dati che avevo in originale / etc.

Quale sarebbe il modo più corretto e sicuro per farlo?

Risposte:


4

Non è supportato per trasformarsi /etcnel proprio file system zfs.

Il motivo è /etcnecessario durante le prime fasi di avvio, prima che (Apri) Solaris inizi a montare i file system zfs, quindi sarebbe vuoto se lo si cambia.

La mia ipotesi è che tu voglia fare delle istantanee /etc, ma puoi semplicemente fare delle istantanee del file system di root:

zfs snapshot rpool/ROOT/opensolaris

Potrebbe essere necessario sostituire opensolariscon il nome dell'ambiente di boot corrente (eseguire beadm listper scoprire quale)


2
ok, che mi dici di qualsiasi altra directory, allora? diciamo, rpool / zone / myzone / export / home / git? :)
Yurii Rashkovskii,

1
Se vuoi trasformare la tua directory git in un filesystem zfs, devi solo creare un archivio tar del contenuto corrente, quindi "rm -rf" la directory git, dopo che eseguire "zfs create -o mountpoint = / path / to / git rpool / path / to / qualunque / git "e infine decomprimere i file salvati.
Martin,

2
oh, ok, è quello che pensavo ... ma speravo segretamente che ci fosse un modo trasparente per dividere zfs :)
Yurii Rashkovskii,

8

Non esiste un modo integrato o automatizzato per creare un nuovo DataSet e migrare i dati esistenti su di esso. Per farlo, dovrai creare il set di dati e manualmente (ad es. Rsync) i dati.

Supponiamo che tu abbia un set di dati chiamato tank\setcon una directory in esso denominata folder. Si desidera "promuovere" la cartella in modo che sia un set di dati figlio denominato tank\set\folder:

mv /mnt/tank/set/folder /mnt/tank/set/folder-backup # move this out of the way so the new dataset doesn't mount on top of it
zfs create tank/set/folder
rsync -aAX /mnt/tank/set/folder-backup/ /mnt/tank/set/folder # bring over all the old data including acls and attributes

Quindi rivedi che i dati sembrano buoni; scattare un'istantanea del set di dati padre per ogni evenienza ed eliminare la folder-backupdirectory.

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.