Hard-Disk

無法從複製的硬碟啟動

  • January 20, 2019

我的筆記型電腦的硬碟驅動器很快就會出現故障(根據 SMART),所以我決定將整個驅動器複製到另一個驅動器:

sudo sh -c 'cat /dev/sda >/dev/sdc'

使用新硬碟時,筆記型電腦會顯示以下錯誤:

Failed to start File System Check on /dev/.../78c...b86
Dependency failed for /home
Dependency failed for Load File System
...
Cannot open access to console, the root account is locked

兩個驅動器上的 UUID 看起來相同:

> lsblk -f
NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
sda                                                      
├─sda1 ntfs   XP    D6A46388A46369C7                     
├─sda3                                                   
├─sda5 ext4         f02a6d59-8411-4018-85da-bb6a521d91d0 /
├─sda6 swap         70bc8fb3-77e5-47e8-953f-63da54226679 [SWAP]
└─sda7 ext4         78c3867d-4382-4dff-ac7d-ed69c788db86 /home
sdc                                                      
├─sdc1 ntfs   XP    D6A46388A46369C7                     
├─sdc3                                                   
├─sdc5 ext4         f02a6d59-8411-4018-85da-bb6a521d91d0 
├─sdc6 swap         70bc8fb3-77e5-47e8-953f-63da54226679 
└─sdc7 ext4         78c3867d-4382-4dff-ac7d-ed69c788db86 

驅動器具有不同的大小和不同的物理扇區大小。但是,在這種情況下,我無法證明這是一個問題。

> sudo fdisk -l
Disk /dev/sda: 111.8 GiB, 120034123776 bytes, 234441648 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
Disklabel type: dos
Disk identifier: 0xd961d961

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sda1  *          63  43015687  43015625 20.5G  7 HPFS/NTFS/exFAT
/dev/sda3       43016190 215076863 172060674   82G  5 Extended
/dev/sda5       43016192  62545919  19529728  9.3G 83 Linux
/dev/sda6       62547968  68737023   6189056    3G 82 Linux swap / Solaris
/dev/sda7       68739072 215076863 146337792 69.8G 83 Linux

Disk /dev/sdc: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 33553920 bytes
Disklabel type: dos
Disk identifier: 0xd961d961

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sdc1  *          63  43015687  43015625 20.5G  7 HPFS/NTFS/exFAT
/dev/sdc3       43016190 215076863 172060674   82G  5 Extended
/dev/sdc5       43016192  62545919  19529728  9.3G 83 Linux
/dev/sdc6       62547968  68737023   6189056    3G 82 Linux swap / Solaris
/dev/sdc7       68739072 215076863 146337792 69.8G 83 Linux

Partition 1 does not start on physical sector boundary.
Partition 3 does not start on physical sector boundary.

文件/etc/fstab也是一樣的。

筆記型電腦螢幕壞了,我用的是外接顯示器。這對可以使用的工具施加了一些限制,例如Clonezilla‘Live CD 沒有顯示輸出。

在這種情況下可以做什麼?

更新 1:試圖完成任務dd bs=1M if=/dev/sda of=/dev/sdc。得到同樣的錯誤。不得不說,Windows 可以從其分區正確啟動,要麼使用catordd方法。

更新2:源硬碟上的所有壞塊都位於/home分區/dev/sda7中。第一個 LBA 編號是 127221317。我發現了大約 300 個壞塊,最後一個 LBA 編號是 146938319,然後停止了。似乎還有很多。

我通過更改掛載點的/etc/fstab文件來解決問題/home,如下所示:

不起作用(不知道為什麼):

UUID=78c3867d-4382-4dff-ac7d-ed69c788db86 /home ext4 defaults,errors=remount-ro 0 1

作品:

/dev/sda7 /home ext4 defaults,errors=remount-ro 0 1

您是否在正在使用的分區上執行了複製操作?那是它被複製的作業系統使用了嗎?

如果是這樣,那麼它將損壞,請從實時 CD/USB 儲存設備啟動,然後重試。

引用自:https://unix.stackexchange.com/questions/495504