ブロックデバイスのどれがハードドライブであるかを検出するのに問題があります。私のシステムには、CD-ROMドライブ、USBドライブ、および未知のベンダー/タイプのハードドライブが1つあります。すべてのハードドライブをLinuxシステムに一覧表示
linuxコマンド、スクリプト、またはCアプリケーションでハードドライブを識別するにはどうすればよいですか?
ブロックデバイスのどれがハードドライブであるかを検出するのに問題があります。私のシステムには、CD-ROMドライブ、USBドライブ、および未知のベンダー/タイプのハードドライブが1つあります。すべてのハードドライブをLinuxシステムに一覧表示
linuxコマンド、スクリプト、またはCアプリケーションでハードドライブを識別するにはどうすればよいですか?
はshuttle87が指摘したように、この質問に答えるのいくつかの他の記事があるあなたのシステム
興味深い...私はこのlshwプログラムについて聞いていない。それは標準インストールの一部ですか?私のDebianサーバはそれを持っていません。私はFreeBSDのインストールもしていませんが(彼がLinuxを要求しているので、BSDはカウントしません) –
@Aleks G:Debianのインストールが古くなっている可能性があります:http://packages.debian.org/search?keywords=lshw – janneb
debianは間違いなく古くなっています。これは、約1年前に専用サーバー上のホスティング会社によって提供された標準インストールでした。しかし、標準インストールにそれが含まれていないと、それに頼ることができないという問題があります。 –
あなたがもっともらしいブロックデバイスのリストを持っている場合は、デバイスが取り外し可能である場合、そのファイル
が/SYS /ブロック/ [blockdevname] /リムーバブル
は、 "0" "1" が含まれていますが取り外しできない場合。
exteranl USBハードドライブは取り外し可能ですが、それからシステムを起動することができるので、この場合、「リムーバブル」のチェックでは十分ではないかもしれません。 –
はい、わかっています。私はOPのインストールが(内部、取り外し不能な)ハードドライブに行き、プラグインされたUSBスティックを再フォーマットしないことを望んでいると思う(おそらくインストールプログラムがそこにあるからだ) .. – janneb
USBスティックとUSBハードドライブの違いがあります。たとえば、Windows上では、異なるアイコンで表示されます。彼がインストールされたUSBスティックを再フォーマットすることに関心があるなら、おそらく明示的に特定のデバイスをリストから削除することができます。彼は自分自身の実行プログラムのパスを知っているので、対応するデバイスの/ etc/mtabをチェックし、それをリストから除外します。 –
で利用可能なディスクが表示されます。私が好む解決策は以下のとおりです。
root# lsblk -io NAME,TYPE,SIZE,MOUNTPOINT,FSTYPE,MODEL
NAME TYPE SIZE MOUNTPOINT FSTYPE MODEL
sdb disk 2.7T WDC WD30EZRX-00D
`-sdb1 part 2.7T linux_raid_member
`-md0 raid1 2.7T /home xfs
sda disk 1.8T ST2000DL003-9VT1
|-sda1 part 196.1M /boot ext3
|-sda2 part 980.5M [SWAP] swap
|-sda3 part 8.8G/ ext3
|-sda4 part 1K
`-sda5 part 1.8T /samba xfs
sdc disk 2.7T WDC WD30EZRX-00D
`-sdc1 part 2.7T linux_raid_member
`-md0 raid1 2.7T /home xfs
sr0 rom 1024M CDRWDVD DH-48C2S
参考文献:
のRel evant:http://unix.stackexchange.com/questions/4561/how-do-i-find-out-what-hard-disks-are-in-the-system – shuttle87