我正在使用从 VMware ESXi 安装中移除的 SSD 驱动器。我正尝试在现有 Linux 安装(CentOS 6.2)中重新使用该磁盘。该驱动器位于 HP Smart Array P410 RAID 控制器后面,并配置为单独的逻辑驱动器。
当我第一次尝试格式化磁盘时,收到以下信息:
[root@poot ~]# fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.
Disk /dev/sdb: 240.0 GB, 240021504000 bytes
255 heads, 63 sectors/track, 29180 cylinders
我关注了此处的说明使用以下命令删除 GUID 分区表gdisk
:
[root@poot ~]# gdisk /dev/sdb
GPT fdisk (gdisk) version 0.8.2
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format.
THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by typing 'q' if
you don't want to convert your MBR partitions to GPT format!
***************************************************************
Warning! Secondary partition table overlaps the last partition by
33 blocks!
You will need to delete this partition or resize it in another utility.
Command (? for help): x
Expert command (? for help): z
About to wipe out GPT on /dev/sdb. Proceed? (Y/N): y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): y
我继续fdisk
,然后mkfs.xfs
在驱动器上安装 XFS 文件系统。我通常使用磁盘标签进行安装,但从 EL6 开始,我开始采用 UUID 安装。但是,对于此磁盘,通过标签进行安装失败。我尝试检索 UUID,但命令blkid
返回了错误或过时的数据,其中 UUID_SUB 和 TYPE="VMFS_volume_member"。
[root@poot ~]# mkfs.xfs -f -L /data -d agcount=50 -l size=1024m,version=2 /dev/sdb1
meta-data=/dev/sdb1 isize=256 agcount=50, agsize=1171975 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=58598744, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal log bsize=4096 blocks=262144, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@poot ~]# mount /data/
mount: special device LABEL=/data does not exist
[root@poot ~]# blkid
/dev/sda1: UUID="7406b992-4aab-4164-bfa1-1920f97658c7" TYPE="ext4"
/dev/sda5: UUID="2390f2aa-d671-430d-b286-c6eca7c073a6" TYPE="swap"
/dev/sda7: UUID="3c6f94d5-3898-4f36-be16-a33cf175d2ca" TYPE="xfs"
/dev/sdb1: UUID_SUB="4eb0c035-4fe6b2d8-77ed-00265583f46d" UUID="4eb0c035-4b5714b0-b987-00265583f46d" TYPE="VMFS_volume_member"
我以前从来没见过这样的事情。
我尝试删除/etc/blkid/blkid*
。它似乎在重启后仍然存在。我该怎么做才能清除这些数据并获得干净的 UUID?
答案1
对于这种情况,您需要擦除超过 1 MiB 才能终止旧的 VMFS 超级块:
dd if=/dev/zero of=/dev/sdb1 bs=4M count=1
根据 blkid 来源,VMFS 卷成员超级块位于距分区开始位置 1024 KiB 偏移处,而 VMFS 文件系统超级块位于 2048 KiB 偏移处,因此为了确保万无一失,请擦除 4 MiB。
答案2
dd if=/dev/zero of=/dev/hdX bs=1M count=16
应该清除 GPT 并允许您使用 fdisk 或您想要的任何其他分区/切片系统。
警告:对于其他人来说,如果不是很明显的话,这将破坏磁盘上现有的所有内容。