我有一个硬盘,上面有 24 个逻辑分区。其中一半是 Linux,一半是 Windows。当前顺序为:3 个 Linux 分区;12 个 Windows 分区;9 个 Linux 分区。在此设置中,Windows 可以访问任何分区(分区数不受限制),但 Linux 无法访问 sda16、sda17...
我可以在不移动磁盘分区的情况下更改分区编号吗?我想将所有 Linux 分区设置为 <16;将 Windows 分区设置为 > 16,这样 Linux 就能访问所有 Linux 分区。
我有 fdisk/sfdisk 并且它可以看到所有分区。
答案1
您可以使用 重新排列分区表sfdisk
,这非常危险(容易出现人为错误),但可能是唯一的方法。我描述了如何做到这一点这里- 您需要根据您的具体情况调整程序。
答案2
免责声明:我还没有尝试过,但是如果你想要冒险,你可以尝试这个:
准备编译自己的内核,然后转到源代码,编辑drivers/scsi/sd.c
并查找以下行
#define SD_MINORS 16
并增加这个数字,然后重新编译内核。
然后,根据您的发行版,您可能需要使用 mknod 手动创建设备文件。否则您的设备名称可能会变得一团糟。
祝你好运