- - 介绍 - -
嗨,我是意大利语母语者,我的 ubuntu 也是,抱歉我的英语不好(我花了很多钱试图提高它,但是:D,正如你所见,这是一项糟糕的投资!:D)错误描述可能与我在对象上列出的略有不同(未翻译的是“Errore libparted -- raggiunta la fine del file durante la lettura di /dev/sdX”)。我也是一个新的 linux 用户,但我很喜欢它,所以我决定将我的家庭服务器(nas、plex、share、download 等)转换为 ubuntu。
- - 问题 - -
我有 3 个硬盘 (WD RED 3.0TB)。它们被分区为 GPT 并格式化为 ext4。然后,我决定 JBOD(线性)更适合我的需求,所以我使用 MDADM 来转换它们。我犯了一些错误,丢失了所有数据。我试图恢复它们,但 2 天后,我决定使用备份来恢复所有数据。我没有发现任何问题。现在,新的 Jbod 9TB 分区运行良好(再次是 GPT - EXT4)。我将所有 6TB 数据复制到上面,我可以读回它们,但如果我使用 GPARTED,我会收到该错误消息。
它显示了三次,每个磁盘一次,所以我很确定这不是坏扇区之类的问题。这是一个逻辑问题,但由于我缺乏知识,我至今还无法解决它。在网上搜索后我什么也没找到。理论上我可以简单地忽略这个错误,但你可以想象,当我最需要它的时候,我会担心丢失我的分区。
提前致谢 :)
- - 配置 - -
nas 配置如下:CPU i3-2100t -MB zotac Z68itx RAM 8GB 磁盘:Velociraptor 300GB 带有 UBUNTU SERVER 16.04 XFCE(所有 Linux 分区都在这里)3 WD RED 线性(JBOD)与 samba 共享(md127__sdd - sde - sdf)2(WD 和 Seagate)1.5 TB 在 Raid 1 中先前使用 MDADM(md0__sdb - sdc)设置并且运行良好。
答案1
如果您使用 mdadm 使用“完整”(/dev/sdX) 设备创建软件 RAID:
$ sudo mdadm --create /dev/md0 --level=5 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sde[4] sdd[2] sdc[1] sdb[0]
31431168 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
[===================>.] recovery = 96.0% (10064540/10477056) finish=0.0min speed=205145K/sec
RAID 中的所有设备将不是有分区表。这将导致 gparted 错误,因为 libparted 没有检测到软件 RAID 头。“到达文件末尾”意味着在指定的设备上找不到分区表。
还可以在具有分区表(/dev/sdX1)和相同分区大小的设备上创建软件 RAID:
$ mdadm --create /dev/md0 --level=5 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
然后 gparted 错误消息就消失了。无论如何,您的数据都安全了 ;-)
更新
使用以下命令搜索所有硬盘上使用的分区:
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
└─sda1 8:1 0 200G 0 part
sdb 8:16 0 10G 0 disk
└─md0 9:0 0 30G 0 raid5
sdc 8:32 0 10G 0 disk
└─md0 9:0 0 30G 0 raid5
sdd 8:48 0 10G 0 disk
└─md0 9:0 0 30G 0 raid5
sde 8:64 0 10G 0 disk
└─md0 9:0 0 30G 0 raid5
您所有的驱动器都应该出现在这里。