现在是凌晨 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
这看上去糟糕透了。我是不是彻底迷失了?
答案1
您将无法/dev/sda3
直接进行 fsck。从您的示例来看,/dev/sda3
它上面没有文件系统,它有一个逻辑卷管理器“物理卷”:
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 并将其挂载为标准文件系统。
答案2
看起来你正在该驱动器上使用 LVM;因此似乎有一个卷组 vg00
,它本身包含几个逻辑卷(例如var
)。我这里没有 CentOS 的副本,所以我自己无法尝试,但是您需要先激活卷组,然后才能对其进行任何操作(例如您fsck
可能需要执行的操作)。
尝试:
mount /dev/sda1 /mnt
vgchange -a y
fsck /dev/vg00/var
mount /dev/vg00/var /mnt/var
答案3
Donna:我一直在关注这个令人悲伤的问题,并希望现在一切都能圆满结束。既然还没有,我只能向您提出一个绝望的尝试:您是否尝试过浏览 /home 和 /usr?
有时符号链接和/或绑定挂载可以有效地向您隐藏真实的实际路径 - 也许您的 /var/www/vhosts 之前物理存储在 /dev/vg00/usr 或 /dev/vg00/home 上,并且只是符号链接到那里。
还可以尝试挂载/dev/vg00/usr
到/dev/vg00/home
某个地方,看看内容是否以前确实存储在那里 - 有时符号链接和/或绑定挂载可以有效地隐藏真实路径。 /etc/fstab 看起来不太有希望,但既然你现在很绝望,你需要尝试所有可能的方法,不管你觉得它们有多绝望……
如果这没有任何帮助,你可以尝试使用以下工具相簿针对该分区,看看是否能找到任何东西。如果没有,请再次联系您的 ISP,并表现出极大的要求和愤怒。