微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – fdisk – 单行分区

是否可以在一行中使用fdisk命令在usb磁盘中创建分区.

fdisk命令本质上是交互式的,但我想使用fdisk命令在一行中自动创建分区.

解决方法

尝试自动化fdisk是可能的,但它不容易维护.正如其他答案所指出的那样,partedsfdisk设计用于执行您想要的操作并且更易于自动化.

分手

要使用parted在一行中创建分区:

parted -a optimal /dev/usb mkpart primary 0% 4096MB

如在this UNIX SE post中所见.每个部分都是不言自明的,但以下是mkpart的定义:

mkpart [part-type fs-type name] start end

方括号中的东西是可选的,但你可能想要部分类型的主要内容,从0%开始到4096MB结束或者你的USB棒大.

了sfdisk

sfdisk的输入可能比fdisk的输入更容易理解,但它是用于自动化.

#!/bin/sh
# Example Usage: create_sd /dev/sdb

DRIVE=$1

dd if=/dev/zero of=$DRIVE bs=1024 count=1024

SIZE=`fdisk -l $DRIVE | grep disk | awk '{print $5}'`

echo disK SIZE - $SIZE bytes

CYLINDERS=`echo $SIZE/255/63/512 | bc`

echo CYLINDERS - $CYLINDERS

{
echo,9,0x0C,*
echo,-
} | sfdisk -D -H 255 -S 63 -C $CYLINDERS $DRIVE

mkfs.vfat -F 32 -n "boot" ${DRIVE}1
mke2fs -j -L "rootfs" ${DRIVE}2

来自The Linux Daily,虽然不适合一行请求,但确实显示了如何完成.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐