web-dev-qa-db-ja.com

物理ブロックデバイスの表示

システムにインストールされているすべてのブロックデバイスを一覧表示する必要があります。すべてのブロックデバイスを表示するためのlsblkという名前のコマンドがあります。

[kni@hist ttyid:0 pią kwi 13 17:56:26 ~]$ lsblk 
NAME                   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                      8:0    0   16G  0 disk 
├─sda1                   8:1    0    1G  0 part /boot
└─sda2                   8:2    0 13,5G  0 part 
  ├─Fedora_211829-root 253:0    0   10G  0 lvm  /
  ├─Fedora_211829-swap 253:1    0  1,5G  0 lvm  [SWAP]
  └─Fedora_211829-home 253:2    0    2G  0 lvm  /home
sr0                     11:0    1 55,3M  0 rom  /run/media/kni/VBox_GAs_5.2
[knis@hist ttyid:0 pią kwi 13 17:56:31 ~]$ 

これは、私のシステムで実行されたlsblkコマンドの結果です。 sdaディスクは私のシステムで唯一の物理デバイスですか?パーティションとlvmはディスクの論理部分です。私は正しいですか?

物理ブロックデバイスを印刷する他の方法はありますか?

1
Iomanip

すべてのブロックデバイスだけでなく、実際にphysicalデバイスを見たいと仮定します。

私の推奨事項は次のとおりです。

lsblk -a -d -e 230

どうして?

マニュアルページから、これらのコマンドラインオプションの機能を確認しましょう。

       -a, --all
              Also list empty devices.  (By default they are skipped.)

不思議なことに、lsblkは、ラップトップのDVDバーナーが空の場合でも、-aなしで表示されます。しかし、それをそのままにしておくことは何も害を及ぼすようには見えません。

       -d, --nodeps
              Do not print holder  devices  or  slaves.   For  example,  lsblk
              --nodeps /dev/sda prints information about the sda device only.

これは、デバイス上にパーティションが表示されず、デバイス自体のみが表示されることを意味します。

       -e, --exclude list
              Exclude  the  devices  specified  by the comma-separated list of
              major  device  numbers.   Note  that  RAM  disks  (major=1)  are
              excluded  by  default.   The  filter is applied to the top-level
              devices only.

最後に、-e 230を使用して、このメジャー番号を使用するZFSzvolを除外します。これらは完全に論理ブロックデバイスですが、ZFSドライバーにより、物理ディスクデバイスと同じようにlsblkに表示されます。 ZFSを使用している場合は、-e 230を使用してzvolを表示から除外できます。

[root@dalaran ~]# lsblk -a -d -e 230
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda       8:0    0 894.3G  0 disk 
sr0      11:0    1  1024M  0 rom  
nvme0n1 259:0    0   477G  0 disk 

私はnot-Sオプションの使用をお勧めします。これにより、NVMeデバイスが表示されなくなります。


シェルスクリプトを記述したい場合に備えて、lsblkのマニュアルページには、出力をより機械可読にするためのオプションが他にもいくつかあります。たとえば、-nおよび-oまたは-P

2
Michael Hampton

情報を取得する(パーティションなし):

$ lsblk -a -d
NAME MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda    8:0    0   20G  0 disk
sdb    8:16   0   40G  0 disk
sr0   11:0    1 55.3M  0 rom

-a       print even empty devices (if disk is not loaded in CD/DVD device)
-d       discard print slaves
1
Yurij Goncharuk
ls -l /sys/block/ | awk '$11 != "" && $11 !~ "^../devices/virtual" { print $9; }
0
Hauke Laging