所以我有三个磁盘。我曾想过给卷本身贴上标签:
$ e2label /dev/sda
d80-JD-75MS
$ e2label /dev/sdb
e2label: Bad magic number in super-block while trying to open /dev/sdb
Found a dos partition table in /dev/sdb
$ e2label /dev/sdc
e2label: Bad magic number in super-block while trying to open /dev/sdc
Found a dos partition table in /dev/sdc
...所有三个磁盘都是可引导的。fdisk 没有报告任何错误。但是通常的 ext4 实用程序都报告相同的事情或非常接近:
"Couldn't find a valid filesystem superblock
Found a dos partition table in ..."
/dev/sdb 是 Debian 11 all kosher 的全新安装,但不知何故 e2label 对它不满意。除此之外,我无法检测到任何问题,但“超级块”问题是怎么回事?那可以修吗?
顺便说一句,看起来很有希望的一件事是:
mkfs.ext4 -L "wipeout" /dev/sda
...添加了一个标签好吧,但也清除了磁盘上的所有内容:(
……所以这很淘气?”
$ e2label /dev/sda "bad bad bad"
$ lsblk /dev/sda -o name,label,fstype,mountpoint,size,model
NAME LABEL FSTYPE MOUNTPOINT SIZE MODEL
sda bad bad bad ext4 74.5G WDC_WD800JD-75MSA3
├─sda1 d1--5-swap swap 5G
├─sda2 d2--0-boot ext4 /media/sda/2 200M
├─sda3 d3--6-root ext4 /media/sda/3 6G
├─sda4
...该命令很高兴执行,该命令是关于标记一个 FS,而不是创建一个。似乎什么都没有损坏。我很高兴。我想知道的是为什么我会在另外两个磁盘上收到那些“坏幻数”消息。
标签是文件系统的属性,而不是磁盘的属性。
您可以
e2label
用来标记extN
文件系统(对于 N={ 2, 3, 4 })。对于 FAT 文件系统,您需要使用fatlabel
、mlabel
或其他支持 FAT 的工具。您似乎直接
extN
在第一个磁盘上创建了一个文件系统,/dev/sda
而不是通过分区表。这通常是一个非常糟糕的主意:您应该(几乎)总是有一个磁盘分区表。直接在磁盘 (
/dev/sda
) 上而不是分区(例如/dev/sda1
)上的文件系统的问题在于,您不能将磁盘用于除该文件系统之外的任何东西。令人担忧的是,从您稍后显示
lsblk
输出的编辑中,您在磁盘上有其他分区。充其量您已经损坏了第一个分区表,并且磁盘正在磁盘末尾附近使用其备份。在最坏的情况下,您还覆盖了一个或多个分区上的数据。现在,我倾向于建议您备份此磁盘上的所有数据并重建它。备份并测试备份成功后,如果您喜欢冒险,可以尝试重建主 GPT。似乎
gdisk
使用r
thenc
选项应该可以做到这一点,但我没有尝试过。我想我会更乐意擦除磁盘并恢复我的数据。