コマンド一発でパーティションを作成

http://www.polarhome.com:793/manual/util-linux-2.11y/sfdisk.examples
でかいのを1つ作る。

sfdisk /dev/hda << EOF
;
EOF

書式は start(省略可),end(省略可),IDでならべて、Empty を作る時は;だけの行を入れるみたい。-uM で起動するとMBで指定可。
ふつー対話的にしか作らないから知らなかったよ。hda1で最大に作る時には、-l の結果をパースして渡してやらないといけないのかな。
fdisk や cfdisk では対話的にしか出来ないみたい。ディストリビューション系ではどうやってやっているのかな?
debianインストーラーでもほぐしてみようかしらん。
とりあえず、USB マスストレージを処理するのはこんな感じか。メディアは今回は決め打ちでokね。

#!/bin/sh
#
# sfdisk auto format test script
#
# 2004 kinnekoatpo.incl.ne.jp
#
target_drive=/dev/sda

# get cylinder counts
CYL=`sfdisk -l $target_drive | grep cylinders, | awk '{print $3}'`
# echo $CYL

# clear target drive
sfdisk -f $target_drive << EOF
;
EOF

# set full value first partition for linux
sfdisk -f $target_drive << EOF
0,$CYL,83,-
EOF

# show status
#fdisk -l $target_drive

オプションは、-fの時には、-qは指定できないようだ。
dd でパーティションテーブルも潰しておいたほうがきれいかな。

><