LinuxParty
Este tutorial muestra cómo puede crear copias de seguridad de particiones LVM con una característica llamada LVM snapshots de LVM. Una snapshots "instantánea" de LVM es una copia exacta de una partición LVM que tiene todos los datos del volumen LVM desde el momento en que se creó la instantánea. La gran ventaja de snapshots de LVM es que se pueden utilizar para reducir en gran medida la cantidad de tiempo que sus servicios / bases de datos se han reducido durante las copias de seguridad porque una instantánea se crea normalmente en fracciones de segundo. Después de que la instantánea se ha creado, puede realizar copias de seguridad de la instantánea, mientras que sus servicios y bases de datos están en operación normal.
También voy a mostrar cómo restaurar una partición LVM desde una copia de seguridad en un capítulo extra al final de este tutorial.
1 Nota preliminar
He probado esto en un servidor Debian con la dirección IP 192.168.0.100 y el nombre de host server1.example.com. Tiene dos discos duros:
- /dev/sda (10GB) que contiene una pequeña partición /boot (no-LVM), una partición / (LVM, de un poco menos de 10 GB) y una partición swap (LVM)
- /dev/sdb (60GB), sin uso en el momento, se puede utilizar para crear una partición de 30 GB /backups (LVM) y para las instantáneas de la partición / (10 GB - eso es suficiente porque la partición / es un poco menos de 10 GB) .
He creado una imagen Debian Etch VMware que puede descargar y ejecutar en VMware Server o VMware Player (ver http://www.howtoforge.com/import_vmware_images para aprender a hacerlo). Tiene las mismas especificaciones de mi sistema de prueba de arriba. La contraseña de root es root. Con esa imagen VMware, usted puede hacer los mismos pasos que yo en este tutorial para acostumbrarse al uso de instantáneas de LVM.
Para restaurar la partición / de la copia de seguridad (indicada en el último capítulo de este tutorial) necesita un Linux Live-CD que soporte LVM, tales como Knoppix o el CD de Debian Etch Netinstall que se puede utilizar como un CD de rescate si se especifica rescate en el prompt de arranque. Voy a utilizar el CD de Debian Etch Netinstall en este ejemplo (la lista de réplicas está disponible aquí: http://www.debian.org/CD/http-ftp/ - He descargado esta: http://ftp.de. debian.org/debian-cd/4.0_r0/i386/iso-cd/debian-40r0-i386-netinst.iso ).
Para crear una copia de seguridad de la partición / voy a proceder de la siguiente manera: Voy a crear una imagen de la partición /, y luego voy a crear una copia de seguridad de la instantánea (en lugar de la actual partición /) En la partición /backups (Por supuesto, puede almacenar la copia de seguridad siempre que lo desee - en lugar de crear una partición LVM /backups extra, también puede utilizar una unidad USB externa). La copia de seguridad puede hacerse utilizando su solución de copia de seguridad preferida, por ejemplo con tar o dd. Después, a destruir la instantánea ya que no se necesita más y sería utilizar los recursos del sistema.
Usted no necesita un segundo disco duro para las imágenes - se puede utilizar la primera siempre que disponga de suficiente espacio libre (sin particionar) y quede espacio en él para crear instantáneas (se debe utilizar el mismo espacio para las imágenes que se utilizan para la partición que desea hacer copia de seguridad). Y como se mencionó antes, puede utilizar una unidad USB para las copias de seguridad de las instantáneas.
2 Crear la partición LVM /backups
(Si desea almacenar las copias de seguridad en otro lugar, por ejemplo, en una unidad USB externa, usted no tiene que hacer esto.)
La situación actual es la siguiente:
pvdisplay
server1:~# pvdisplay
--- Physical volume ---
PV Name /dev/sda5
VG Name server1
PV Size 9.76 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 2498
Free PE 0
Allocated PE 2498
PV UUID vQIUga-221O-GIKj-81Ct-2ITT-bKPw-kKElpM
vgdisplay
server1:~# vgdisplay
--- Volume group ---
VG Name server1
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 9.76 GB
PE Size 4.00 MB
Total PE 2498
Alloc PE / Size 2498 / 9.76 GB
Free PE / Size 0 / 0
VG UUID jkWyez-c0nT-LCaE-Bzvi-Q4oD-eD3Q-BKIOFC
lvdisplay
server1:~# lvdisplay
--- Logical volume ---
LV Name /dev/server1/root
VG Name server1
LV UUID UK1rjH-LS3l-f7aO-240S-EwGw-0Uws-5ldhlW
LV Write Access read/write
LV Status available
# open 1
LV Size 9.30 GB
Current LE 2382
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 254:0
--- Logical volume ---
LV Name /dev/server1/swap_1
VG Name server1
LV UUID 2PASi6-fQV4-I8sJ-J0yq-Y9lH-SJ32-F9jHaj
LV Write Access read/write
LV Status available
# open 2
LV Size 464.00 MB
Current LE 116
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 254:1
fdisk -l
server1:~# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 31 248976 83 Linux
/dev/sda2 32 1305 10233405 5 Extended
/dev/sda5 32 1305 10233373+ 8e Linux LVM
Disk /dev/sdb: 64.4 GB, 64424509440 bytes
255 heads, 63 sectors/track, 7832 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/dm-0: 9990 MB, 9990832128 bytes
255 heads, 63 sectors/track, 1214 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/dm-0 doesn't contain a valid partition table
Disk /dev/dm-1: 486 MB, 486539264 bytes
255 heads, 63 sectors/track, 59 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/dm-1 doesn't contain a valid partition table
Así que /dev/sda contiene los volúmenes lógicos /dev/server1/root / (partición /) y /dev/server1/swap_1 / (partición de intercambio), además de la pequeña partición /boot (no-LVM).
(Por cierto, /dev/server1/root es lo mismo que /dev/mapper/server1-root en Debian Etch. El primero es un enlace simbólico a la segunda. Voy a utilizar dos anotaciones en este tutorial Lo mismo ocurre con /dev /server1/swap_1 y /dev/mapper/server1-swap_1.)
Ahora voy a crear la partición / dev/sdb1 y agregarlo al grupo de volúmenes server1, y después voy a crear el volumen /dev/server1/backups (que serán de 30 GB en lugar de los 60 GB de /dev/sdb para que podamos tener espacio suficiente para las instantáneas), que voy a montar en /backups:
fdisk /dev/sdb
server1:~# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
The number of cylinders for this disk is set to 7832.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): <-- n
Command action
e extended
p primary partition (1-4)
<-- p
Partition number (1-4): <-- 1
First cylinder (1-7832, default 1): <-- [ENTER]
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-7832, default 7832): <-- [ENTER]
Using default value 7832
Command (m for help): <-- t
Selected partition 1
Hex code (type L to list codes): <-- 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): <-- w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
pvcreate /dev/sdb1
vgextend server1 /dev/sdb1
lvcreate --name backups --size 30G server1
mkfs.ext3 /dev/mapper/server1-backups
mkdir /backups
Ahora vamos a montar nuestro volumen /dev/server1/backups en /backups:
mount /dev/mapper/server1-backups /backups
Para tener ese volumen montado de forma automática cada vez que arranque el sistema, debe editar el archivo /etc/fstab y añadir una línea como esta a la misma:
vi /etc/fstab
[...] /dev/mapper/server1-backups /backups |
Ahora, nuestra nueva situación es la siguiente:
pvdisplay
server1:~# pvdisplay
--- Physical volume ---
PV Name /dev/sda5
VG Name server1
PV Size 9.76 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 2498
Free PE 0
Allocated PE 2498
PV UUID vQIUga-221O-GIKj-81Ct-2ITT-bKPw-kKElpM
--- Physical volume ---
PV Name /dev/sdb1
VG Name server1
PV Size 59.99 GB / not usable 0
Allocatable yes
PE Size (KByte) 4096
Total PE 15358
Free PE 7678
Allocated PE 7680
PV UUID cvl1H5-cxRe-iyNg-m2mM-tjxM-AvER-rjqycO
vgdisplay
server1:~# vgdisplay
--- Volume group ---
VG Name server1
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 2
Act PV 2
VG Size 69.75 GB
PE Size 4.00 MB
Total PE 17856
Alloc PE / Size 10178 / 39.76 GB
Free PE / Size 7678 / 29.99 GB
VG UUID jkWyez-c0nT-LCaE-Bzvi-Q4oD-eD3Q-BKIOFC
lvdisplay
server1:~# lvdisplay
--- Logical volume ---
LV Name /dev/server1/root
VG Name server1
LV UUID UK1rjH-LS3l-f7aO-240S-EwGw-0Uws-5ldhlW
LV Write Access read/write
LV Status available
# open 1
LV Size 9.30 GB
Current LE 2382
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 254:0
--- Logical volume ---
LV Name /dev/server1/swap_1
VG Name server1
LV UUID 2PASi6-fQV4-I8sJ-J0yq-Y9lH-SJ32-F9jHaj
LV Write Access read/write
LV Status available
# open 2
LV Size 464.00 MB
Current LE 116
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 254:1
--- Logical volume ---
LV Name /dev/server1/backups
VG Name server1
LV UUID sXq2Xe-y2CE-Ycko-rCoE-M5kl-E1vH-KQRoP6
LV Write Access read/write
LV Status available
# open 1
LV Size 30.00 GB
Current LE 7680
Segments 1
Allocation inherit
Read ahead sectors 0
Block device 254:2
Siguiente:
Crear instantáneas de particiones LVM, snapshots (2 de 3)
-
Linux
- Mis predicciones sobre Linux para 2025: será un buen año
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad
- RebornOS es una versión hermosa y fácil de usar de Arch Linux con abundantes opciones de escritorio
- Linus Torvalds sobre el 'hilarante' bombo de la IA
- Cambiar la hora en Linux con Chrony
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git