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

Поврежденный диск Linux sda3 var - нужны файлы

Сейчас 3 часа ночи, и моя хостинговая компания сообщает, что произошла «проблема с сетью», и, в целом, они могут заменить жесткий диск, на котором возник «сбой», но они не помогут мне восстановить с него данные.

Мне нужно получить доступ и загрузить содержимое одной папки с диска (CentOS) sda3, который я пропустил в своих резервных копиях, то есть var/www/vhosts/mydomain.com/httpdocs/images/.

Что я могу попробовать дальше?

Я вошел в систему и попробовал:

rescue:~# fdisk -l

Disk /dev/sda: 1500.3 GB, 1500311977984 bytes
64 heads, 32 sectors/track, 1430809 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        3816     3907568   83  Linux
/dev/sda2            3817        5724     1953792   82  Linux swap / Solaris
/dev/sda3            5725     1430809  1459287040   8e  Linux LVM

rescue:~# mount /dev/sda1 /mnt

rescue:~# mount
/dev/ram0 on / type ext2 (rw,errors=remount-ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/sda1 on /mnt type ext3 (rw)

rescue:~# cat /mnt/etc/fstab
/dev/sda1       /               ext3    defaults        1 1
/dev/sda2       none            swap    sw
/dev/vg00/usr   /usr            xfs     defaults        0 2
/dev/vg00/var   /var            xfs     defaults,usrquota       0 2
/dev/vg00/home  /home           xfs     defaults,usrquota       0 2
devpts          /dev/pts        devpts  gid=5,mode=620  0 0
none            /proc           proc    defaults        0 0
none            /tmp    tmpfs   defaults        0 0

rescue:~# fsck /mnt/var
fsck 1.37 (21-Mar-2005)
e2fsck 1.37 (21-Mar-2005)
fsck.ext2: Is a directory while trying to open /mnt/var
The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>

rescue:~# fsck /dev/sda3
fsck 1.37 (21-Mar-2005)
e2fsck 1.37 (21-Mar-2005)
Couldn't find ext2 superblock, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sda3
The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>

Обновить

Следуя блестящему совету, приведенному ниже, мне удалось смонтировать диск, но я не вижу каталог своего веб-сайта. Сейчас это выглядит довольно плохо и очень странно. Могу я еще что-нибудь сделать? Размер диска по-прежнему указывает на то, что мои файлы должны быть там ..

rescue:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               vg00
  PV Size               1.36 TB / not usable 0
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              356271
  Free PE               353199
  Allocated PE          3072
  PV UUID               YeULc0-E3XN-aF29-6Odh-JWFZ-U9qY-4KvGvl

rescue:~# vgchange -a y
  3 logical volume(s) in volume group "vg00" now active

rescue:~# fsck /dev/vg00/var
fsck 1.37 (21-Mar-2005)

rescue:~# mount /dev/vg00/var /mnt/var

Затем, когда я смотрю на пространство:

rescue:/# cd /mnt/var/www/vhosts/
rescue:/mnt/var/www/vhosts# ll
total 0
drwxr-xr-x  10 root root 88 Jul 24 16:19 chroot
drwxr-xr-x   5 root root 49 Jul 24 16:16 default

Папки моего веб-сайта нет в списке.

Обновить

rescue:/mnt/var/www/vhosts# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/ram0             252M  219M   33M  88% /
tmpfs                 7.9G  4.0K  7.9G   1% /dev/shm
/dev/sda1             3.7G  319M  3.4G   9% /mnt
/dev/mapper/vg00-var  4.0G  104M  3.9G   3% /mnt/var

Это выглядит настолько плохо, насколько это вообще возможно ... Я в полной растерянности?

Вы не сможете fsck /dev/sda3 прямо. Из вашего примера, /dev/sda3 на нем нет файловой системы, он имеет LVM «физический объем»:

rescue:~# fdisk -l
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        3816     3907568   83  Linux
/dev/sda2            3817        5724     1953792   82  Linux swap / Solaris
/dev/sda3            5725     1430809  1459287040   8e  Linux LVM

Этот физический том, скорее всего, имеет (по крайней мере) одну «группу томов», которая, в свою очередь, может иметь несколько «логических томов»:

rescue:~# cat /mnt/etc/fstab
[...]
/dev/vg00/usr   /usr            xfs     defaults        0 2
/dev/vg00/var   /var            xfs     defaults,usrquota       0 2
/dev/vg00/home  /home           xfs     defaults,usrquota       0 2

В этих логических томах находятся файловые системы, которые вам необходимо смонтировать.

Чтобы продолжить, вам нужно, чтобы система распознала /dev/sda3 как физический том. Бегать pvdisplay чтобы увидеть, обнаружен ли объем; если вам повезет, это так, и вы можете использовать vgchange -a y активировать группу томов в /dev/vg00. Это сделает /dev/vg00/var доступный для fsck'ed и монтирования как стандартная файловая система.

Похоже, вы использовали LVM на этом диске; так что, похоже, есть группа томов vg00, который сам содержит несколько логические тома (например var). У меня здесь нет копии CentOS, поэтому я не могу попробовать это сам, но вам нужно активировать группу томов, прежде чем вы сможете что-либо с ней делать (например, fsck вам скорее всего нужно будет сделать).

Пытаться:

mount /dev/sda1 /mnt
vgchange -a y
fsck /dev/vg00/var
mount /dev/vg00/var /mnt/var

Донна: Я следила за этой печальной проблемой и надеялась, что это уже благополучно закончится. Поскольку это не так, я бросаю вам отчаянную попытку: вы пробовали просматривать / home и / usr?

Иногда символические ссылки и / или привязки могут эффективно скрыть от вас реальный, фактический путь - возможно, ваш / var / www / vhosts ранее физически хранился в / dev / vg00 / usr или / dev / vg00 / home и просто привязан к нему. .

Попробуйте также смонтировать /dev/vg00/usr и /dev/vg00/home где-нибудь и посмотрите, действительно ли там ранее хранилось содержимое - иногда символические ссылки и / или привязки могут эффективно скрыть от вас реальный путь. Файл / etc / fstab не выглядит многообещающим, но, поскольку вы сейчас в отчаянии, вам нужно попробовать все возможные методы, независимо от того, в каком отчаянии вы чувствуете ...

Если это совсем не помогло, вы можете попробовать использовать такие инструменты, как PhotoRec против этого раздела и посмотрите, найдет ли он что-нибудь. Если это не так, обратитесь к своему интернет-провайдеру еще раз, и будьте чрезвычайно требовательны и рассержены.