xpt*_*xpt 5 linux filesystems partitioning gpt ubuntu
当我使用创建我的 GPT 分区时parted,我以前使用的是ext2文件系统类型:
$ parted /dev/sdc print | grep ^12
12 961GB 1118GB 157GB ext2 msftdata
Run Code Online (Sandbox Code Playgroud)
现在我想改为ext4改为,所以我使用mkfs.ext4 /dev/sdc12重新格式化分区,但是当我执行parted /dev/sdc print上述操作时,它仍然显示ext2为文件系统类型。
我做了一些阅读,似乎parted接触文件系统类型的唯一方法是mkpartfs命令,参考:http : //www.thegeekstuff.com/2011/09/parted-command-examples/。是这样吗?我真的不喜欢使用该mkpartfs命令来更改我的文件系统类型,因为我不想再次重新创建我的分区。这会弄乱我的分区编号(例如,sdc12 将被命名为 sdc19)。有没有更好的办法?
编辑:
再次遇到同样的问题,并在这里再次找到了我自己的问题的答案。因此,记录为什么我认为有必要更改分区文件系统类型:
% mount $bootdev
mount: wrong fs type, bad option, bad superblock on /dev/sdb2,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
% fsck $bootdev
fsck from util-linux 2.20.1
e2fsck 1.42.8 (20-Jun-2013)
GptLive: clean, 21/1024000 files, 74309/4096000 blocks
% mount $bootdev
mount: wrong fs type, bad option, bad superblock on /dev/sdb2,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
Run Code Online (Sandbox Code Playgroud)
即,我新创建了一个/dev/sdb2类型auto为/etc/fstab. 但是,mount只是无法安装它。然而:
% mount $bootdev /mnt/GptLive
% mount | grep $bootdev
/dev/sdb2 on /mnt/GptLive type ext2 (rw)
Run Code Online (Sandbox Code Playgroud)
即,当mount $dev不起作用时,mount $dev /mnt/place工作得很好。
我不知道为什么也无法解释修复,但只是记录了这就是我寻找解决方案的原因以及我如何“修复”它的事实。
谢谢
GParted 和parted程序仅对分区表类型代码信息提供非常有限的控制。充其量,一些类型代码被翻译成“标志”。这就是msftdata标志 - 它表示 Microsoft 基本数据分区(GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7;请参阅维基百科 GPT 类型代码列表)。您可以通过调整标志来更改某些类型代码,但是 Linux 会忽略这些代码,除了某些有限的情况,因此在仅支持 Linux 的系统上,您不需要与它们混为一谈。在一个双引导系统,但是,你应该不会设置Linux分区与Microsoft基本数据类型的代码; 有关为什么这是一个坏主意的详细信息,请参阅我关于此主题的页面。
将文件系统识别为 ext2 inparted是由检查分区内数据的程序完成的。如果您在分区中创建了一个新的 ext4 文件系统,那么parted 应该正确识别它;但可能存在parted识别错误。如果是这样,我就不会担心了。您可能想通过使用blkid(如sudo blkid /dev/sdc12)或通过检查技术细节来验证分区是否确实包含 ext4 文件系统dumpe2fs- 但后者需要大量的专业知识来解释。实际上,ext4fs 基本上是具有额外功能的 ext2fs,因此将两者区分开来可能有点棘手。
| 归档时间: |
|
| 查看次数: |
24651 次 |
| 最近记录: |