ファイルマネージャで/media/user/nameOfFlashdrive
にアクセスすると、フラッシュドライブの名前を見つけることができます。ただし、フラッシュドライブの名前を入力できる端末コマンドがあり、/dev/sdb1
などのドライブの接続先がわかりますか?
次を使用できます。
lsblk | grep <flashdrive>
これは私の状況で出力され、実行されます
$ lsblk | grep Passport
└─sdb1 8:17 0 1,8T 0 part /media/jacob/My Passport1
└─sdc1 8:33 0 698,6G 0 part /media/jacob/My Passport
デバイスとマウントポイントの両方を確認できます。ご覧のとおり、My Passport
という2つのusbドライブがあります
$ lsblk | grep Passport | awk '{ print $1 }'
└─sdb1
└─sdc1
同じですが、より正確な出力があります:
$ lsblk | grep Passport | awk -F'[─ ]' '{ print $2 }'
sdb1
sdc1
または、@ kos(ありがとう!)が示唆するように、lsblk
を-l
オプションと一緒に使用すると(出力の└─
がデバイスの前に省略されます)、さらに簡単になります。
$ lsblk -l | grep Passport | awk '{ print $1 }'
sdb1
sdc1
または(@kosによって示唆されているように)、grep
コマンドを使用せずに、lsblk
およびawk
のみを使用することもできます。
$ lsblk -l | awk '/Passport/{ print $1 }'
sdb1
sdc1
lsblk
は、マウントされているすべてのデバイスをリストしますgrep <flashdrive>
は、次のように、デバイス名と一致する行のみをリストします。
└─sdc1 8:33 0 698,6G 0 part /media/jacob/My Passport
awk -F'[─ ]' '{ print $2 }'
は、行を2つの区切り文字で分割します。
─
(which─の2番目の文字です)
そしてスペース。
その後、必要なセクションを簡単に取得できます。
実際には、そのためのコマンドがいくつかあります。テキスト処理ツールを使用して、出力をいつでも除外することができます。一般に、出力は1画面で読み込めるほど小さいです。
blkid
名前が示すように、このきちんとしたコマンド自体は、ブロックデバイスに関する情報を表示します。 -L
を使用すると、ラベル(名前)で特定のデバイスを検索できます。
$ blkid -L DTSE9
/dev/sdb1
df
このきちんとしたコマンドはcoreutils
パッケージの一部であり、「デバイスファイル」のブロックサイズと使用量を表示します。マウントされている(つまり、どこかにあるフォルダーにリンクされている)デバイスに関する情報のみを表示します。例えば、
/dev/sdb5 115247656 84753976 24616332 78% /media/WINDOWS
2番目のハードドライブ上のWindowsパーティションが/media/WINDOWS
パーティションにリンクされていることを通知します。
udisksctl
$ udisksctl status
MODEL REVISION SERIAL DEVICE
--------------------------------------------------------------------------
Radeon R7 1.01 A22MD061520000172 sda
TSSTcorp CDDVDW SU-208GB TF01 S16T6YEFB00NKH sr0
ディスクがリンクされているモデルとデバイスファイルをリストする非常に便利なコマンド。上記の例では、Radeon R7 SSDは/dev/sda
デバイスにリンクされています。
さらに詳しく説明すると、udisksctl info -b /dev/sda
にはサイズやシンボリックリンクなどの追加情報がたくさんリストされます。
ワイルドにしたい場合、udisksctl dump
はすべてのディスクで詳細な出力を生成します。
parted
およびfdisk
どちらのコマンドもディスクユーティリティであり、パーティション分割、サイズ変更、その他多くの楽しいことのために使用されます。ただし、両方ともSudo
を使用する必要があります。どちらもすばらしい詳細な情報を出力します
find
これは、より「実践的な」アプローチです。すべてのデバイスには、Linuxの下に特別なデバイスファイルがあります(すべてがファイルであると言うUnixの哲学を覚えていますか?ここで最適です)。ファイルがあることを知って/dev/disk/by-label
そのディレクトリを検索することも、単に/dev/disk
を検索することもできます。間違いなく、より上級ユーザーが評価できるツール
$ find -L /dev/disk/by-label/ -name "DTSE9" -exec readlink -e {} \;
/dev/sdb1
lsblk
すでにジェイコブによってカバーされています。
mount
$ mount | grep "DTSE9"
/dev/sdb1 on /media/xieerqi/DTSE9 type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)
マウントされているすべてのファイルシステムをリストします。特定のファイルシステムを探すためにgrep
でフィルターできます。 grep 'DISKNAME OR UUID' /proc/mounts
を実行することに似ています
lshw
このコマンドは、システム上のすべてのハードウェアに関する情報を提供します。特に、デバイス全体にlshw -c disk
、またはパーティションにlshw -c volume
を使用してディスクに関する情報を表示できます。次のような行で出力が表示されます。
logical name: /dev/sdc1
logical name: /media/xieerqi/BA02-AF80