sfdisk --no-readが機能しません

sfdisk --no-readが機能しません

Debian 8でsfdiskを使用してパーティションを拡張しようとしています。次のコマンドを実行しています。

    sfdisk -H 255 -S 63 --quiet --Linux --leave-last -uM --force --no-reread /dev/md1 -N4 < /tmp/abc

コマンドを実行すると、次のエラーが発生します。

    Successfully wrote the new partition table
    Re-reading the partition table ...
    sfdisk: BLKRRPART: Device or resource busy
    sfdisk: The command to re-read the partition table failed.
    Run partprobe(8), kpartx(8) or reboot your system now,before using mkfs
    sfdisk: If you created or changed a DOS partition, /dev/foo7, say, then use dd(1) to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1 (See fdisk(8).)

私がそれを言及すると、なぜ再び読むことが起こりますか--no-reread?私はsfdiskutil-linux 2.25.2で実行しています。 sfdisk(util-linux-ng 2.17.2)で同じコマンドを実行すると、sfdiskこのエラーは発生しません。このエラーを引き起こす2つの違いはありますか?

答え1

この--no-rereadオプションは、sfdiskデバイスが使用中であること(たとえば、取り付けまたは交換中)を確認しないことを示します。

あなたが得るエラーsfdiskコアパーティション情報が変更されました。カーネルは、「このデバイスはすでに使用中です。新しいパーティションデータを読みません」と答えます。

これで、パーティションデータのカーネルコピーがディスク上の実際のデータとは異なります。

--no-rereadそれ以外の場合は、sfdiskパーティションを分割できません。

関連情報