Назад | Перейти на главную страницу

Отсутствует снимок LVM / dev и / proc

Я создал снимок lvm вот так:

lvcreate -L 5G -s -n root-snapshot /dev/VolGroup00/LogVol00

Затем я смонтировал снимок так:

mount /dev/VolGroup00/root-snapshot /mnt/root-snapshot/

Теперь, когда я вижу, что находится в дереве разработки на снимке, почти все отсутствует, кроме двух элементов:

[root@server1 ~]# ls /mnt/root-snapshot/dev
mapper  VolGroup00

И внутри ничего нет proc. Почему это? Я знаю, что proc - это виртуальная файловая система, но когда был сделан снимок, система работала, и, следовательно, в proc и dev было много чего… почему они отсутствуют в снимке.

Мне особенно понадобились:

/dev/console
/dev/initctl
/dev/null
/dev/zero

для моей резервной копии.

Изменить: mount на самом деле показывает, что proc установлен fs on / Но как насчет dev ... mount не показывает, что dev монтируется за пределами LVM?

/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/mapper/VolGroup00-root--snapshot on /mnt/root-snapshot type ext3 (rw)

/proc и /dev обе виртуальные файловые системы, которые вообще не хранятся на томе LVM (как результат mount подтвердит), поэтому они не включены в снимок LVM.

Оба генерируются ядром во время выполнения, и нет необходимости создавать их резервную копию для начала.

Это не настоящие файловые системы и не часть корневой файловой системы, для которой вы создали снимок.

Но давайте проигнорируем это. Я предполагаю, что вы спрашиваете о монтировках / proc и / dev, потому что хотите chroot в свой снимок? Или инструменты резервного копирования работают в каталоге моментальных снимков? Если да, то почему бы просто не выполнить привязку в дополнение к монтированию снимка.

mount /dev/VolGroup00/root-snapshot /mnt/root-snapshot/
mount -o bind /dev/ /mnt/root-snapshot/dev/
mount -o bind /proc/ /mnt/root-snapshot/proc/

Когда вы будете готовы размонтировать свой снимок, просто размонтируйте / mnt / root-snapshot / dev / и / mnt / root-snapshot / proc / перед размонтированием / mnt / root-snapshot /

Дамп LVM будет содержать только то, что находится в этой конкретной файловой системе, НЕ на каких-либо других монтированиях. Файловая система / proc и, возможно, / dev смонтированы под root, поэтому данные НЕ содержатся в LVM.

Что вам нужно сделать, так это создать их резервную копию с помощью чего-то вроде tar или cpio.

Кстати, я НИКОГДА не делал бы резервную копию файловой системы / proc, поскольку в ней нет ничего архивного, и вы можете получить огромное количество дампов памяти процесса.