![如何在磁盘上创建单个分区,使其成为具有 ntfs 文件系统的外部硬盘驱动器?](https://linux22.com/image/148913/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%A3%81%E7%9B%98%E4%B8%8A%E5%88%9B%E5%BB%BA%E5%8D%95%E4%B8%AA%E5%88%86%E5%8C%BA%EF%BC%8C%E4%BD%BF%E5%85%B6%E6%88%90%E4%B8%BA%E5%85%B7%E6%9C%89%20ntfs%20%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%A4%96%E9%83%A8%E7%A1%AC%E7%9B%98%E9%A9%B1%E5%8A%A8%E5%99%A8%EF%BC%9F.png)
在以下的联机帮助页中parted
:
命令:
mkpart [part-type fs-type name] start end
创建新分区,而不在该分区上创建新文件系统。这对于为 Parted 不支持的文件系统(或 LVM 等)创建分区非常有用。您可以指定文件系统类型,以便在分区表中为新分区设置适当的分区代码。数据分区(即非扩展分区)需要 fs-type。 start和end是距磁盘开头的偏移量,即距磁盘开头的“距离”。部分类型是“主”、“扩展”或“逻辑”之一,并且只能与“msdos”或“dvh”分区表一起指定。必须为“gpt”分区表指定名称。部分类型和名称都不能与“sun”分区表一起使用。 fs-type 必须是以下受支持的文件系统之一:
ext2 fat16, fat32 hfs, hfs+, hfsx linux-swap NTFS reiserfs ufs btrfs
rm
我已通过命令删除了磁盘上的所有分区parted
。
我想创建一个跨越尽可能多的磁盘空间的分区。我如何指定它的开始和结束?我是否需要在磁盘的几个第一个扇区之后启动,如何指定结束位置以便末尾没有未分配的空间?
引用说mkpart
不会创建新的文件系统。如果我fs-type
为其指定参数,它仍然不会创建新的文件系统吗?fs-type
那么争论的目的是什么呢?
我听说如果要在 Windows 和 Ubuntu 之间使用外部硬盘驱动器,ntfs 文件系统类型是最佳选择。现在还是这样吗?
论证有什么要求name
?
我应该选择gpt
其他分区类型吗?
总之,我要运行的命令是什么?是吗
mkpart gpt ntfs myhdd 0
?
我的gparted有时运行得很慢,所以我正在学习使用parted来完成任务,在这种情况下这非常简单。
谢谢。
答案1
您可以使用这些命令在 GPT 磁盘上创建全磁盘分区。pdisk
我的大多数系统上都有一个稍微扩展的版本作为标准实用程序。
# Create a simple function pdisk to hide some of the complexity of parted
pdisk() {
local dsk="$1"; shift; [[ $# -eq 0 ]] && set -- print;
parted "$dsk" --align optimal unit MiB "$@";
}
# We are going to DESTROY and REFORMAT /dev/sdz. Change to suit your removable disk
dsk=/dev/sdz
pdisk "$dsk" mklabel gpt # GPT disk label (you may get asked for confirmation)
pdisk "$dsk" mkpart primary ntfs 1 100% # Create a single partition for the entire disk
pdisk "$dsk" # Show what we have done
partprobe "$dsk" # Generate the partition devices
mkfs -t ntfs "${dsk}"*1 # Format partition 1 as NTFS (if you must)
如果您想安全地进行实验,而不破坏真正的磁盘,请像这样使用磁盘上的临时文件,而不是dsk=/dev/sdz
上面的厚颜无耻的文件。
dd if=/dev/zero bs=1M count=100 >100m.img # Create 100MB "disk" image
dsk=$(losetup --show --find 100m.img) # Associate a loopback device
echo "$dsk" # Report what it is called
然后,当你完成后,
losetup -d "$dsk" # Disassociate the loopback device(s)
rm "$dsk" # You know