以下は、rhelサーバーシステムの例です。
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 20G 0 disk /data/sdb
sdc 8:32 0 20G 0 disk /data/sdc
sdd 8:48 0 20G 0 disk /data/sdd
sde 8:64 0 20G 0 disk /data/sde
sdf 8:80 0 42G 0 disk
sdg 8:96 0 42G 0 disk
sdh 8:112 0 42G 0 disk
他のディスク用のディスクパーティションを作成したいのですが、sdf,sdg,sdh
これらすべてのプロセスはbashスクリプトを介して実行する必要があり、プロセスを自動化したいと思います。
まず、以下は2
ディスク用のパーティションを作成する方法の例です。したがって、この例では、サイズが異なるsdf
2つのパーティションを作成します。10G
ステップ1(パーティション作成、各10G)
parted /dev/sdf
GNU Parted 3.1
Using /dev/sdf
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel msdos
(parted) mkpart primary 0 10024MB
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) mkpart primary 10024MB 20048MB
(parted) quit
Information: You may need to update /etc/fstab.
ステップ2(ファイルシステムext4を作成)
mkfs.ext4 /dev/sdf1
mkfs.ext4 /dev/sdf2
今、私たちは(予想結果)
lsblk
sdf 8:80 0 42G 0 disk
├─sdf1 8:81 0 9.3G 0 part
└─sdf2 8:82 0 9.3G 0 part
このプロセスを自動化できますかparted
?それとも別の方法(例:via fdisk
)を介してですか?
Bashスクリプトでこの自動化されたプロセスを使用するには
引用する -https://www.tecmint.com/create-disk-partitions-in-linux/
答え1
partedはオプションでスクリプト化できます(--script / -s)。
インタラクティブに入力した内容を実装するためにプログラムを複数回呼び出すことができます。
parted --script /dev/sdf mklabel msdos
parted --script /dev/sdf mkpart primary 1 10024MB
parted --script /dev/sdf mkpart primary 10024MB 20048MB
mkfsを引き続き使用してください...
ヒント:警告を避けるために、最初のパーティションを1MBで起動しましたが、これは今日多くのディストリビューションのデフォルトでもあります。
あなたの質問に対するコメントとしてMC68020が述べたように、エラーチェックコードを追加する必要があります。