Domanda

Sto cercando di montare programmazione un'immagine disco creata con il creatore Fedora LiveUSB, e sto incontrando alcuni problemi.

Da quello che mi è stato detto, è molto difficile da montare snapshot LVM al di fuori del sistema host. Ho sia l'immagine "incontaminata" e l'istantanea persistente, così ho pensato che dovrebbe essere tecnicamente possibile.

Tutte le idee?

È stato utile?

Soluzione

Il concetto di LVM di volumi non è portabile su sistemi nello stesso senso che si può schiaffo alcuni md spinge insieme e che sarà ancora lavorare. Ogni VG LVM ha un identificatore univoco ed è necessario per ottenere LVM del sistema di accettarla. In altre parole, LVM non può "vedere" il gruppo di volumi fino a "raccontare" è circa la sua presenza. Una volta fatto questo, dovrebbe essere una navigazione tranquilla da lì.

L'istantanea consiste di delta settore registrate. Lei ha ragione, si dovrebbe essere in grado di ottenere l'istantanea di presentarsi avendo sia l'originale e l'istantanea presente. Un'istantanea di per sé non funzionerà.

sto supponendo che si sta guardando scripting questo insieme, perché basta il set di strumenti di LVM per rendere questo accada.

Un po 'di regalo d'addio per aiutare il vostro cammino. Salvarlo come / usr / sbin / LVMS, impostare proprietario come root / root, chmod 755, e usarlo per salvare la punta delle dita.


#!/bin/sh
#lvms command - consolidates all LVM views into a single command
pvscan 1>/dev/null 2>/dev/null
vgscan 1>/dev/null 2>/dev/null
lvscan 1>/dev/null 2>/dev/null
echo "Available Physical Volumes - - - - - - -"
pvs
echo
echo "Active Volume Groups - - - - - - - - - -"
vgs
echo
echo "Active Logical Volumes - - - - - - - - -"
lvs

Altri suggerimenti

L'immagine del sistema operativo in Fedora LiveCD o LiveUSB può essere montata dopo esponendo il file system root incorporato. pacchetto livecd-tools di Fedora fornisce un programma di utilità LiveImage-Mount che fa questo con Python.

La tecnologia

Il Fedora LiveOS immagine (Live CD / USB del sistema operativo) utilizza il target snapshot dispositivo-mapper per fare un compresso, di sola lettura copia del filesystem di root disponibile per lettura-scrittura di montaggio in fase di avvio, in cui il filesystem scrive andare in una sovrapposizione temporanea o persistente copy-on-write. Tutto è compiuto con il comando dmsetup. LVM non è coinvolto (anche se usa anche la tecnologia Device-mapper).

A LiveOS dispositivo installato avranno un / LiveOS / directory in esso di filesystem base. Il file /LiveOS/squashfs.img contiene un file system ext4 compressa (e di sola lettura) che contiene a sua volta un / directory / LiveOS ed entro che il filesystem di root distribuito in un file chiamato ext3fs.img. Quindi, il file squashfs.img contiene una directory e dei file, /LiveOS/ext3fs.img, che si contiene il filesystem di root (con / bin, / boot, / dev, / etc, / home, ...).

Se c'è un file overlay persistente installato sul dispositivo, esso sarà salvato come
/ LiveOS / Modulo elettronico -
dove ETICHETTA e UUID sono l'etichetta partizione del dispositivo e UUID come riportato dal seguente comando,
 lsblk -o LABEL,UUID

Si può a livello di codice

  1. ciclo montare il file squashfs.img, quindi
  2. istituito un dispositivo di loop per il file ext3fs.img trovato sul monte 1.
  3. Se non c'è sovrapposizione persistente, si può semplicemente montare il file ext3fs.img o dispositivo di loop da
    fase 2 (la sola lettura, immagine di base).
  4. Se c'è un file overlay persistente istituire un dispositivo di loop per esso.
  5. Determinare la dimensione del filesystem di root in unità di settori da 512 byte,

    blockdev --getsz <basefs_loop>

  6. Poi impostare un obiettivo un'istantanea Device-mapper con questo comando generale,

    dmsetup create <target_name> --table "0 <size> snapshot <basefs_loop> <overlay_loop> P 8"

  7. Infine, montare il porta-mapper dispositivo su un punto di montaggio desiderata,

    mount /dev/mapper/<target_name> <mount point>

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top