次のクロスポストhttps://stackoverflow.com/q/63976722/4534
私たちは以前にそれを使用したことがありますか/dev/[sh]d
? ...しかし、今はNVMe SSD / dev / nvme *ドライブが登場し、これはもはや真実ではありません。
あなたは方法を知っていますインストールディスクの検索?または、/dev/[sh]d
ゲームを更新しますか?それとも使用しますか/proc/partitions
?
答え1
最も信頼できる方法は旅行することです/dev/disk/{by-id,by-label,by-partlabel,by-path,by-uuid}
。私は個人的にこの方法を選択します/dev/disk/by-path
。
答え2
簡単な方法はlsblk
コマンドを使用することです。
# list all block devices without paritions
lsblk --nodeps
# to exclude any particular type of block device like optical drives
lsblk --nodeps --exclude 11
ブロックデバイスIDの完全なリストは以下にあります。https://www.kernel.org/doc/Documentation/admin-guide/devices.txt
答え3
始動修理から。
All_Hard_Drives=$(ls /dev/hd[a-z] /dev/hd[a-z][a-z] /dev/sd[a-z] /dev/sd[a-z][a-z] /dev/xvd[a-z] /dev/vd[a-z] /dev/vd[a-z][a-z] /dev/nvme[0-9]n[0-9] /dev/nvme[0-9]n[0-9][0-9] /dev/nvme[0-9][0-9]n[0-9] /dev/nvme[0-9][0-9]n[0-9][0-9] /dev/mmcblk[0-9] /dev/mmcblk[0-9][0-9] 2>> ${Trash});
答え4
/sys/block/*
for b in /sys/block/*; do readlink -f $b; done
for b in /sys/block/*; do echo $(cat $b/uevent); done
/sys/class/block/*
パーティションも欲しいなら。
または:
grep -srl DEVTYPE=disk /sys/devices
grep -srl DEVTYPE=partition /sys/devices