It:HOWTO: Mount LVM
Contents |
Mounting LVMs
Procedura manuale
Montare una partizione LVM può sembrare tosto, ma non lo è. In realtà, nonostante la lunghezza di questa guida, dovrai solo eseguire una manciata di comandi, e la maggior parte di essi giusto per ottenere delle informazioni. Non disperare, la farò meno dolorosa possibile. Tutti questi comandi dovranno essere eseguiti come root all'interno di un terminale (l'accesso root si ottiene col comando su). Mi raccomando, dai un'occhio ai nomi dei volumi, che potrebbero differire da questa guida.
# pvs
dovrebbe mostrare qualcosa di simile a:
sabayonx86 sabayonuser # pvs PV VG Fmt Attr PSize PFree /dev/sda2 VolGroup00 lvm2 a- 7.88G 32.00M
Guardando da vicino possiamo capire che esiste un disco in posizione /dev/sda2 che ha LVM e che è grande 7.88GB. In questo caso è di certo quello che vogliamo, anche perché è l'unico. Notare che in questo caso il nome è VolGroup00, ma potrebbe (dovrebbe!) essere diverso nella vostra installazione.
Bene, ora vediamo cosa contiene questo LVM
# lvdisplay /dev/VolGroup00
sabayonx86 sabayonuser # lvdisplay /dev/VolGroup00 --- Logical volume --- LV Name /dev/VolGroup00/LogVol00 VG Name VolGroup00 LV UUID SWp2V0-1xPU-0tOP-UnPs-snxF-THUl-pZMKb2 LV Write Access read/write LV Status available # open 0 LV Size 6.88 GB Current LE 220 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 251:0 --- Logical volume --- LV Name /dev/VolGroup00/LogVol01 VG Name VolGroup00 LV UUID MGBeJP-ohrX-KLju-5V78-iJOi-pP3w-huaOmC LV Write Access read/write LV Status available # open 0 LV Size 992.00 MB Current LE 31 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 251:1
Ci servono due cose di questa lista: LV name e LV Size. Abbiamo una partizione di 6.88GB ed una di 992MB. Possiamo assumere con una certa tranquillità che la più piccola delle due sia il nostro swap, quindi la più grande è il filesystem che ci interessa. Il suo nome è /dev/VolGroup00/LogVol00, ma potrebbe essere diverso nella vostra installazione.
OK, sappiamo tutto quello che ci serve. Ora dobbiamo creare una cartella che faccia da punto di montaggio per il nostro volume e montarcelo sopra.
# cd /mnt # mkdir lvm # vgscan --mknodes # lvchange -ay /dev/VolGroup00/LogVol00 # mount /dev/VolGroup00/LogVol00 /mnt/lvm
Ovviamente sostituite /dev/VolGroup00/LogVol00 con la stringa propria della vostra installazione, che vi sarete segnati seguendo la parte precedente della guida.
Procedura automatica mediante uno script
Il seguente script farà tutto il lavoro sporco per voi, in un modo appena differente. Devi solo copiare e incollare il testo sotto in un file di testo sul tuo sistema. Una volta copiato e incollato, salva il file ed eseguirlo come root, oppure scaricarlo direttamente da questa discussione nei forum. Se scarichi dai forum, non dimenticare di rinominare il file lvm-mount.sh. In qualunque modo tu lo faccia, dopo che il file è pronto, come root esegui i seguenti comandi:
# chmod a+x lvm-mount.sh # sh lvm-mount.sh
Ora lo script verrà eseguito e ti farà sapere dove ha montato i tuoi LVM per te. Ti stamperà anche alcune istruzioni su schermo, come ad esempio quelle per aprire un chroot nel tuo LVM, nel caso ne avessi bisogno.
#! /bin/bash ## This script is released under the GPL version 2 ## copyright (2009) James Cook ## Thanks goes to Klaus Knopper who reminded me of something ## very simple that I had forgotten at the time, thanks bud. ## the author may be contacted at: ## azerthoth (at) gmail.com ## Check for user is root ## Thanks to micia for the suggestion if [ $UID -ne 0 ]; then echo "You need to be root to run this script!" exit 1 fi ## get them all into /dev/mapper modprobe dm-mod 2> /dev/null || : vgscan --ignorelockingfailure --mknodes || : vgchange -aly --ignorelockingfailure || return 2 clear mkdir /LVM cd /dev/mapper ## Create directories and mount for FILE in *; do test -b "$FILE" && mkdir /LVM/$FILE && mount /dev/mapper/$FILE /LVM/$FILE 2>/dev/null done ## List good partitions echo "Cleaning up LVMs that were swap partitions or with unsupported" echo "File Systems from the list. This will not effect those partitions" echo "There is just no need to list or parse them" rmdir /LVM/Vol* 2>/dev/null" echo " " echo "The following LVM(s) were mounted for you and are ready to use" echo " " ls /LVM echo " " echo "You can find them in /LVM" echo " " ## chroot instructions echo "If you are rescuing/fixing a previous installation please issue" echo "the following commands" echo "cp -L /etc/resolv.conf /LVM/<your_lvm_name>/etc/resolv.conf" echo "mount -t proc none /LVM/<your_lvm_name>/proc" echo "mount -o bind /dev /LVM/<your_lvm_name>/dev" echo "chroot /LVM/<your_lvm_name> /bin/bash" echo "env-update" echo "source /etc/profile" ## this process may also be interactively automated in the future ## more coffee and ambition is needed
Conclusione
Non è stato così duro come sembrava, vero?
~Az
~Tradotto da DanySK