
Me gustaría hacer una copia de seguridad en una unidad externa del volumen lógico LVM2 de la siguiente dd
manera.
El enfoque que considero es
- hacer lv en un disco externo con el mismo tamaño
- copia con
dd
(Avíseme si ve algo realmente incorrecto en este enfoque. Necesito algo confiable y rápido).
Me gustaría automatizar todo el proceso; Esto es lo que tengo:
# Sanity check that lv is not used
lvuses="$( lvdisplay -c /dev/mapper/vgA-AA | cut -d ':' -f 6 )"
if [ $lvuses -gt 0 ]; then exit 1 ; fi
#obtain lv size (in sectors)
lvsize="$( lvdisplay -c /dev/mapper/vgA-AA | cut -d ':' -f 7 )"
#create destination
lvcreate -L "${lvsize}s" vgB -n BB || exit 1
# copy
dd if=/dev/mapper/vgA-AA of=/dev/mapper/vgB-BB
¿Esta todo bien? ¿Me he perdido algo?
(En mi caso, vgA-AA es una instantánea de LVM y me gustaría hacer una copia de seguridad en un disco externo y llevar este disco a otra ubicación geográfica)
Respuesta1
Su guión se ve bien, pero yo usaría un enfoque diferente: crear un espejo y luego romperlo. Puedes hacer esto en línea, hasta donde yo sé. No probado:
lvconvert -m /dev/mapper/vgA-AA /dev/sdz98 /dev/sdz99
lvconvert --splitmirrors 1 --name BB /dev/mapper/vgA-AA
Si desea mover el nuevo volumen lógico a un grupo de volúmenes diferente, creo que debe asegurarse de que el LV que desea enviar esté en sus propios volúmenes físicos y transferir los PV de un VG a el otro con vgsplit
.
Respuesta2
No lo uses dd
. Es un animal tonto que copiará todo lo que hay en el volumen, incluido el espacio libre, y dará como resultado un sistema de archivos con el mismo UUID que el original, lo que puede confundir al sistema. En su lugar, utilice una herramienta como partclone
Ghost4linux o fsarchiver
que pueda copiar el sistema a un archivo de imagen comprimido y omitir los bloques libres.
Respuesta3
- montar disco externo
- detener la aplicación
- compruebe si el sistema de archivos no se utiliza ($ sudo fuser -M /path/to/filesystem/mountpoint)
- crear instantánea ($ sudo lvcreate -s ........... )
- iniciar la aplicación
- copia de seguridad usando rsync (verifique man rsync para --update y --link-dest)
- o comprobarhttp://dirvish.orgohttp://backuppc.sourceforge.net/para implementaciones
- desmontar disco externo
- eliminar instantánea LV Este procedimiento crea un directorio en el disco externo por copia de seguridad. Solo copia archivos nuevos o modificados del disco de origen y ahorra espacio al vincular archivos duplicados entre copias de seguridad.
Respuesta4
Fiable y rápido. Recomendaría instantáneas de LVM.
Es extremadamente rápido y puede garantizar que la copia de seguridad se realizará sin que se produzcan cambios en los archivos durante la misma. Además, si tiene una base de datos sobre el volumen, no tendrá que desconectarla.
Esta también es una buena manera de probar los cambios en su volumen. Tome una instantánea, realice los cambios, no lograrán fusionar la instantánea nuevamente. Si tienen éxito, eliminas la instantánea.
Editar: Código
lvcreate -L 10G -s -n snapshot /dev/VG/LV
Luego haga una copia de seguridad del volumen de la instantánea en donde quiera y como quiera.
Para probar el sistema de archivos, puede realizar una instantánea y fusionarla nuevamente.
lvconvert --merge /dev/VG/snapshot
Esta combinación eliminará automáticamente el volumen de la instantánea.
Nota:las instantáneas requieren kernel version 2.6.33 or newer
yLVM tools 2.02.58 or newer
Editar. Enlaces:
TLDP: realizar una copia de seguridad mediante instantáneas
HowtoForge: realizar copias de seguridad y restaurar particiones utilizando instantáneas de LVM
Cyberciti: copia de seguridad consistente con instantáneas de LVM