当我尝试通过 USB 将我的 SATA HDD 连接到运行 Debian 8 的笔记本电脑时,系统挂起,响应极慢,并且运行 ls /dev | grep sd* 会显示从 sdc1 到 sdc99 的条目,而拔下 HDD 时这些条目并不存在。
我确实需要格式化该硬盘,因为 Windows 10 安装失败,现在我既无法启动 Linux 发行版,也无法启动最初安装的 Windows 7 安装。
另外,当我尝试将 HDD 连接到运行 Windows 10 的笔记本电脑时,我在任何地方都找不到它,甚至在管理工具中的磁盘管理下也找不到它。
根据要求,系统日志消息的最后几行:
Jan 31 19:03:53 debian kernel: [ 85.602048] scsi 4:0:0:0: Direct-Access Mass Storage Device PQ: 0 ANSI: 0
Jan 31 19:03:53 debian kernel: [ 85.602324] sd 4:0:0:0: Attached scsi generic sg2 type 0
Jan 31 19:03:53 debian kernel: [ 85.602598] sd 4:0:0:0: [sdb] 488397166 512-byte logical blocks: (250 GB/232 GiB)
Jan 31 19:03:53 debian kernel: [ 85.602732] sd 4:0:0:0: [sdb] Write Protect is off
Jan 31 19:03:53 debian kernel: [ 85.602735] sd 4:0:0:0: [sdb] Mode Sense: 03 00 00 00
Jan 31 19:03:53 debian kernel: [ 85.602865] sd 4:0:0:0: [sdb] No Caching mode page found
Jan 31 19:03:53 debian kernel: [ 85.604123] sd 4:0:0:0: [sdb] Assuming drive cache: write through
Jan 31 19:03:53 debian kernel: [ 85.664976] sdb: sdb1 sdb2 sdb3 sdb4 < sdb5 sdb6 sdb7 sdb8 sdb9 sdb10 sdb11 sdb12 sdb13 sdb14 sdb15 sdb16 sdb17 sdb18 sdb19 sdb20 sdb21 sdb22 sdb23 sdb24 sdb25 sdb26 sdb27 sdb28 sdb29 sdb30 sdb31 sdb32 sdb33 sdb34 sdb35 sdb36 sdb37 sdb38 sdb39 sdb40 sdb41 sdb42 sdb43 sdb44 sdb45 sdb46 sdb47 sdb48 sdb49 sdb50 sdb51 sdb52 sdb53 sdb54 sdb55 sdb56 sdb57 sdb58 sdb59 sdb60 sdb61 sdb62 sdb63 sdb64 sdb65 sdb66 sdb67 sdb68 sdb69 sdb70 sdb71 sdb72 sdb73 sdb74 sdb75 sdb76 sdb77 sdb78 sdb79 sdb80 sdb81 sdb82 sdb83 sdb84 sdb85 sdb86 sdb87 sdb88 sdb89 sdb90 sdb91 sdb92 sdb93 sdb94 sdb95 sdb96 sdb97 sdb98 sdb99 sdb100 sdb101 sdb102 sdb103 sdb104 sdb105 sdb106 sdb107 sdb108 sdb109 sdb110 sdb111 sdb112 sdb113 sdb114 sdb115 sdb116 sdb117 sdb118 sdb119 sdb120 sdb121 sdb122 sdb123 sdb124 sdb125 sdb126 sdb127 sdb128 sdb129 sdb130 sdb131 sdb132 sdb133 sdb134 sdb135 sdb136 sdb137 sdb138 sdb139 sdb140 sdb141 sdb142 sdb143 sdb144 sdb145 sdb146 sdb147 sdb148 sdb149 sdb150 sdb151 sdb152 sdb153 sdb154 sdb155 sdb1<5>[ 85.685268] sd 4:0:0:0: [sdb] Attached SCSI disk
lsblk 的输出如下:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931,5G 0 disk
├─sda1 8:1 0 500M 0 part
├─sda2 8:2 0 155,8G 0 part
├─sda3 8:3 0 488,3G 0 part
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 46,6G 0 part /
├─sda6 8:6 0 186,3G 0 part /home
├─sda7 8:7 0 14,9G 0 part [SWAP]
├─sda8 8:8 0 38,3G 0 part
└─sda9 8:9 0 954M 0 part /boot
sdb 8:16 0 232,9G 0 disk
├─sdb1 8:17 0 100M 0 part
├─sdb2 8:18 0 97,1G 0 part
├─sdb3 8:19 0 450M 0 part
├─sdb4 8:20 0 1K 0 part
├─sdb5 8:21 0 4,7G 0 part
├─sdb6 8:22 0 2G 0 part
├─sdb7 8:23 0 4,7G 0 part
├─sdb8 8:24 0 2G 0 part
├─sdb9 8:25 0 4,7G 0 part
├─sdb10 8:26 0 2G 0 part
├─sdb11 8:27 0 4,7G 0 part
├─sdb12 8:28 0 2G 0 part
├─sdb13 8:29 0 4,7G 0 part
├─sdb14 8:30 0 2G 0 part
--- this repeats itself numerous times with sdb until: ---
├─sdb249 259:233 0 4,7G 0 part
├─sdb250 259:234 0 2G 0 part
├─sdb251 259:235 0 4,7G 0 part
├─sdb252 259:236 0 2G 0 part
├─sdb253 259:237 0 4,7G 0 part
├─sdb254 259:238 0 2G 0 part
└─sdb255 259:239 0 4,7G 0 part
sr0 11:0 1 7,9G 0 rom /media/cdrom0
也许我还应该提到,我尝试在该驱动器上安装 Windows 10 时选择了全新安装。它开始安装,但在复制文件时卡住了,所以我中止了。当时可能大部分磁盘已被擦除,但不是全部。例如,我仍然可以进入 GRUB,它向我显示了启动 Linux 或 Windows 的选项,但都不起作用。
答案1
乍一看,该驱动器/dev/sdb
似乎可以用作250GB
( )块设备。232GiB
Linux 已检测到255 个分区,这是内核支持的最大分区数。
如果将输出中显示的所有分区的大小加起来lsblk
,则会得到1TB
(935GiB
)。
你有1TB
硬盘还是250GB
硬盘?
250GB
硬盘
Linux 很可能看到了整个硬盘,因此它也许能够为您清除分区表。当前分区表谎称没有1TB
分区。
删除硬盘以清除分区表。运行以下命令之一进行删除:
dd if=/dev/zero of=/dev/sdb bs=2M count=1
sgdisk /dev/sdb -Z
/dev/sdb
使用此命令重新扫描分区:
partprobe /dev/sdb
你应该是收到以下错误信息:
Error: /dev/sdb: unrecognised disk label
此错误意味着分区表已消失,正如预期的那样。您可以lsblk /dev/sdb
再次运行并看到类似以下内容:
# lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 232,9G 0 disk
1TB
硬盘
250GB
这是一个奇怪的情况,当您的硬盘实际上很大时,Linux 检测到您只有一个块设备1TB
。
您的 SATA 转 USB 适配器可能与您尝试使用的硬盘不兼容,或者 Linux 没有该适配器的正确驱动程序。
对此有一个可能的解释这里。
解释速度缓慢的原因
至于您的计算机为何变慢,Linux 可能试图从它检测到的每个分区收集信息(文件系统、UUID 等),而这些分区共有 255 个。这可能需要相当长的时间并阻塞其他进程,从而导致您的计算机变慢。