ディスクがコンパクトフラッシュか標準ハードドライブかを確認する方法

ディスクがコンパクトフラッシュか標準ハードドライブかを確認する方法

/dev/sda特定のブロックデバイス(たとえば)がコンパクトフラッシュディスクか通常のハードドライブであるかをシェルスクリプトで確認する必要があります。 Googleは一度も私を助けてくれず、udevadm info --query=all --name=sda多くの情報を提供しましたが、「私は間違いなくフラッシュドライブではありません」または「私は確かにハードドライブではありません」が何を意味するのか理解していませんでした. 。

これら2種類のストレージデバイスを区別することは可能ですか?

Ubuntu 10.10を使用してください。

ベストアンサー1

そうだ可能(いくつかの注意事項があるかもしれませんが)これは、フラッシュベースのストレージデバイスと既存のハードドライブとを区別します。

is_compact_flash ()
{
    hdparm -I $1 | sed -n '\_Commands/features:_,\_Security:_p' | \
        grep -q CFA && return 0 || return 1
}

disk=/dev/sda
if is_compact_flash $disk; then
    echo "$disk is a compact flash disk"
else
    echo "$disk is not a compact flash disk"
fi

編集する:sedCFAを含むモデルまたはシリーズから保護するためのコマンドが追加されました。

おすすめ記事