Grub 救援未知文件系统……最终的绝望

Grub 救援未知文件系统……最终的绝望

我知道这个问题已被问过很多次,但就我而言,无论我做什么,如以下帖子所示(所有解决方案都已尝试)“未知文件系统”是最终的答复。

Grub 救援 - 错误:未知文件系统

我还尝试了启动盘恢复的实际 USB,但它也无法识别我的设备分区,其中装有 Ubuntu 12.04 x32(顺便说一下,是 sdb2),尽管它创建了下面附加的启动脚本。

 Boot Info Script e7fc706 + Boot-Repair extra info      [Boot-Info 31Jan2013]


============================= Boot Info Summary: ===============================

 => Syslinux MBR (4.04 and higher) is installed in the MBR of /dev/sda.
 => Grub2 (v1.99) is installed in the MBR of /dev/sdb and looks at sector 1 of 
    the same hard drive for core.img. core.img is at this location and looks 
    for (,msdos2)/boot/grub on this drive.

sda1: __________________________________________________________________________

    File system:       vfat
    Boot sector type:  SYSLINUX 4.05 20120702
    Boot sector info:  Syslinux looks at sector 1030576 of /dev/sda1 for its 
                       second stage. SYSLINUX is installed in the  directory. 
                       According to the info in the boot sector, sda1 starts 
                       at sector 0. But according to the info from fdisk, 
                       sda1 starts at sector 62.
    Operating System:  
    Boot files:        /syslinux/syslinux.cfg /ldlinux.sys

sdb1: __________________________________________________________________________

    File system:       swap
    Boot sector type:  -
    Boot sector info: 

sdb2: __________________________________________________________________________

    File system:       
    Boot sector type:  -
    Boot sector info: 
    Mounting failed:   mount: unknown filesystem type ''

sdb3: __________________________________________________________________________

    File system:       Extended Partition
    Boot sector type:  Unknown
    Boot sector info: 

sdb5: __________________________________________________________________________

    File system:       
    Boot sector type:  Windows Vista: NTFS
    Boot sector info: 
    Mounting failed:   mount: unknown filesystem type ''
mount: unknown filesystem type ''

============================ Drive/Partition Info: =============================

Drive: sda _____________________________________________________________________

Disk /dev/sda: 4003 MB, 4003463168 bytes
124 heads, 62 sectors/track, 1017 cylinders, total 7819264 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

Partition  Boot  Start Sector    End Sector  # of Sectors  Id System

/dev/sda1    *             62     7,818,695     7,818,634   c W95 FAT32 (LBA)


Drive: sdb _____________________________________________________________________

Disk /dev/sdb: 80.0 GB, 80026360832 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301486 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

Partition  Boot  Start Sector    End Sector  # of Sectors  Id System

/dev/sdb1               2,048     2,000,895     1,998,848  82 Linux swap / Solaris
/dev/sdb2    *      2,000,896    58,644,479    56,643,584  83 Linux
/dev/sdb3          58,646,526   156,301,311    97,654,786   5 Extended
/dev/sdb5          58,646,528   156,301,311    97,654,784   7 NTFS / exFAT / HPFS


"blkid" output: ________________________________________________________________

Device           UUID                                   TYPE       LABEL

/dev/loop0                                              squashfs   
/dev/sda1        3273-D2BD                              vfat       
/dev/sdb1        19d35932-1dbf-4be0-83aa-3d76b646dd80   swap       

================================ Mount points: =================================

Device           Mount_Point              Type       Options

/dev/loop0       /rofs                    squashfs   (ro,noatime)
/dev/sda1        /cdrom                   vfat       (ro,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)


========================= sda1/syslinux/syslinux.cfg: ==========================

--------------------------------------------------------------------------------
# D-I config version 2.0
include menu.cfg
default vesamenu.c32
prompt 0
timeout 300
ui gfxboot bootlogo
--------------------------------------------------------------------------------

================= sda1: Location of files loaded by Syslinux: ==================

           GiB - GB             File                                 Fragment(s)

            ?? = ??             syslinux/syslinux.cfg                          1
            ?? = ??             ldlinux.sys                                    1
            ?? = ??             syslinux/chain.c32                             1
            ?? = ??             syslinux/gfxboot.c32                           1
            ?? = ??             syslinux/vesamenu.c32                          1

============== sda1: Version of COM32(R) files used by Syslinux: ===============

 syslinux/chain.c32                 :  COM32R module (v4.xx)
 syslinux/gfxboot.c32               :  COM32R module (v4.xx)
 syslinux/vesamenu.c32              :  COM32R module (v4.xx)

======================== Unknown MBRs/Boot Sectors/etc: ========================

Unknown BootLoader on sdb3

00000000  d6 d6 d6 d6 d6 d6 d6 d6  d6 d6 d6 d6 d6 d6 d6 d6  |................|
*
000001b0  d6 d6 d6 d6 d6 d6 d6 d6  d6 d6 d6 d6 d6 d6 00 fe  |................|
000001c0  ff ff 07 fe ff ff 02 00  00 00 00 18 d2 05 00 00  |................|
000001d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
00000200


=============================== StdErr Messages: ===============================

File descriptor 8 (/proc/2401/mounts) leaked on lvscan invocation. Parent PID 7264: bash
  No volume groups found

ADDITIONAL INFORMATION :
=================== log of boot-repair 2013-11-26__17h13 ===================
boot-repair version : 3.198~ppa16~raring
boot-sav version : 3.198~ppa16~raring
glade2script version : 3.2.2~ppa45~raring
boot-sav-extra version : 3.198~ppa16~raring
File descriptor 8 (/proc/2401/mounts) leaked on lvs invocation. Parent PID 4002: /bin/sh
No volume groups found
boot-repair is executed in live-session (Boot-Repair-Disk 32bit 24avr2013, raring, Ubuntu, i686)
ls: cannot access /home/usr/.config: No such file or directory
CPU op-mode(s):        32-bit, 64-bit
noprompt cdrom-detect/try-usb=true file=/cdrom/preseed/lubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --

=================== os-prober:


=================== blkid:
/dev/loop0: TYPE="squashfs"
/dev/sda1: UUID="3273-D2BD" TYPE="vfat"
/dev/sdb1: UUID="19d35932-1dbf-4be0-83aa-3d76b646dd80" TYPE="swap"

=================== UEFI/Legacy mode:
This live-session is not EFI-compatible.
SecureBoot maybe enabled.


=================== PARTITIONS & DISKS:



=================== parted -l:

Model: Kingston DT 101 G2 (scsi)
Disk /dev/sda: 4003MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
1      31.7kB  4003MB  4003MB  primary  fat32        boot, lba


Model:  Mass Storage Device (scsi)
Disk /dev/sdb: 80.0GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
1      1049kB  1024MB  1023MB  primary   linux-swap(v1)
2      1024MB  30.0GB  29.0GB  primary                   boot
3      30.0GB  80.0GB  50.0GB  extended
5      30.0GB  80.0GB  50.0GB  logical   ntfs

=================== parted -lm:

BYT;
/dev/sda:4003MB:scsi:512:512:msdos:Kingston DT 101 G2;
1:31.7kB:4003MB:4003MB:fat32::boot, lba;

BYT;
/dev/sdb:80.0GB:scsi:512:512:msdos: Mass Storage Device;
1:1049kB:1024MB:1023MB:linux-swap(v1)::;
2:1024MB:30.0GB:29.0GB:::boot;
3:30.0GB:80.0GB:50.0GB:::;
5:30.0GB:80.0GB:50.0GB:ntfs::;


=================== mount:
/cow on / type overlayfs (rw)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
/dev/sda1 on /cdrom type vfat (ro,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/dev/loop0 on /rofs type squashfs (ro,noatime)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
gvfsd-fuse on /run/user/lubuntu/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=lubuntu)


=================== ls:
/sys/block/sda (filtered):  alignment_offset bdi capability dev device discard_alignment events events_async events_poll_msecs ext_range holders inflight power queue range removable ro sda1 size slaves stat subsystem trace uevent
/sys/block/sdb (filtered):  alignment_offset bdi capability dev device discard_alignment events events_async events_poll_msecs ext_range holders inflight power queue range removable ro sdb1 sdb2 sdb3 sdb5 size slaves stat subsystem trace uevent
/dev (filtered):  agpgart alarm ashmem autofs binder block bsg btrfs-control bus char console core cpu cpu_dma_latency disk dri ecryptfs fb0 fd full fuse fw0 hidraw0 hidraw1 hidraw2 hpet input kmsg kvm log mapper mcelog mem net network_latency network_throughput null oldmem port ppp psaux ptmx pts random rfkill rtc rtc0 sda sda1 sdb sdb1 sdb2 sdb3 sdb5 sg0 sg1 shm snapshot snd stderr stdin stdout uinput urandom usb v4l vga_arbiter vhost-net video0 zero
ls /dev/mapper:  control

=================== df -Th:

Filesystem     Type       Size  Used Avail Use% Mounted on
/cow           overlayfs  1.5G   19M  1.5G   2% /
udev           devtmpfs   1.5G   12K  1.5G   1% /dev
tmpfs          tmpfs      300M  816K  299M   1% /run
/dev/sda1      vfat       3.8G  496M  3.3G  14% /cdrom
/dev/loop0     squashfs   431M  431M     0 100% /rofs
none           tmpfs      4.0K     0  4.0K   0% /sys/fs/cgroup
tmpfs          tmpfs      1.5G  8.0K  1.5G   1% /tmp
none           tmpfs      5.0M     0  5.0M   0% /run/lock
none           tmpfs      1.5G     0  1.5G   0% /run/shm
none           tmpfs      100M   12K  100M   1% /run/user

=================== fdisk -l:

Disk /dev/sda: 4003 MB, 4003463168 bytes
124 heads, 62 sectors/track, 1017 cylinders, total 7819264 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00011134

Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          62     7818695     3909317    c  W95 FAT32 (LBA)

Disk /dev/sdb: 80.0 GB, 80026360832 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301486 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x7add7add

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2000895      999424   82  Linux swap / Solaris
/dev/sdb2   *     2000896    58644479    28321792   83  Linux
/dev/sdb3        58646526   156301311    48827393    5  Extended
/dev/sdb5        58646528   156301311    48827392    7  HPFS/NTFS/exFAT


Error: no partitions

=================== Default settings
Recommended-Repair
This setting would reinstall the  of .
Additional repair would be performed:  repair-filesystems

=================== Settings chosen by the user
Boot-Info
This setting will not act on the MBR.



No change has been performed on your computer.

当我将此 sdb(作为外部)附加到任何正在运行的操作系统时,进行了以下观察:

在 Linux Mint 的 gPArted 中:分区 /sdb1 (ext4) 和 /sdb5 (ntfs) 都有感叹号!(因此我的 ntfs 也以某种方式损坏了)

在 Win7 中 /sdb5 也无法访问,而是 Windows 建议我格式化它才能使用它。chkdsk无法访问这个 ntfs 分区!

我已经测试了我的硬盘是否有坏道,但它是健康的,为什么它不应该是坏道呢?它只有大约 3 个月的历史。在过去的 2 天里,我已经尽我所能尝试了一切,但现在我向你们寻求帮助

更新 1 我试过了fsck.ext4 -v /dev/sdb2,但bad superblock返回了错误。用于mke2fs -n /dev/sdb2获取备份超级块列表,最后对每个块号e2fsck -b <block_number> /dev/xxx执行,但没有成功 :(

上述方法的来源

更新2 使用testdisk实用程序并深入搜索丢失的分区,然后尝试list files在每个找到的分区上进行操作,一些 NTFS 分区允许我输入它们,但没有文件,只有“系统卷信息”的东西(我放在 /dev/sd5 中的一些文件应该在那里!)。它显示 hd 结构存在,但我无法连接到 Linux 分区,也无法testdisk连接list files到该特定分区

更新 3 这是第三天,我仍然无法让它工作,所以我在写一个序言,说明我的问题到底是怎么开始的……虽然这个 80gb 驱动器是我的内置 PC 驱动器,但我经常将它作为外置驱动器连接到我的笔记本电脑。该驱动器工作正常约 3 个月。

在 Linux Mint(在我的笔记本电脑中)下,我三天前将它作为外部 USB 驱动器连接起来(我经常这样做)。在那里,我将约 16GB 的数据传输到其 NTFS 分区 /dev/sdb5。它以约 25mb/秒的速率顺利运行,然后我(我总是这样做)通过上下文菜单发出“安全删除驱动器”,它删除了驱动器(我认为这是应该发生的),没什么特别的!但后来当我尝试启动它时,噩梦开始了……

在谷歌上快速搜索后,我必须承认,即使驱动器没有正确卸载,Linux 也可能损坏您的 Grub 等,这真是令人遗憾,因为在 Windows 中,当传输完成时,我只需拔出 USB,但在 *nix 中,我确实发现即使传输完成并且您拔出驱动器,却发现什么都没有传输!如果您使用剪切/粘贴,那就太倒霉了

答案1

几个问题:

  1. Windows 确实希望位于主分区上,而不是扩展分区中的逻辑分区上,而且该分区应该具有启动标志,而不是 linux 分区,后者并不关心。 *哦,这只是用于数据,没关系。
  2. 也许您确实没有 sdb2 上的文件系统。一切似乎都表明了这一点。因此,只需在那里重新安装 Ubuntu(修复 Windows 分区问题后)。

由于分区没有列出 blkid,因此恢复起来不太好。我想你可以用 dd 检查分区,一次抓取分区中分布位置的几个块,然后查找字符串,看看数据是否存在。但如果只是配置数据,那绝对不值得付出努力。对于更有价值的数据,如果常用工具不起作用,那么总是有蛮力,dd 整个分区,将其分成可管理的块,查找感兴趣的字符串,然后用有趣的内容编辑块——这是一项艰巨的任务。

相关内容