Linuxオペレーティングシステムのハードディスクを確認する方法

Linuxオペレーティングシステムのハードディスクを確認する方法

Bashスクリプトには、オペレーティングシステム固有のディスク(Linux / RHELシステムの実行)のみをキャプチャする必要があるコードの場所がたくさんあります。

私たちはLinuxバージョンを使用しており、7.2/7.5/7.6/7.9ほとんどの場合、マシンにはテラバイトサイズのディスクなどを含むデータまたはデータベースサーバーを格納するための追加のディスクがあります。

通常、次の cli を使用してオペレーティングシステムのディスクをキャプチャします。

os_disk=` lsblk -l | grep part | awk '{print $1}' | sed s'/[0-9]/ /g' | sort -u | head -1 `

追加のパーティションディスクがない場合は機能しますが、次の例に示すように、追加のパーティションディスクがある場合は機能します。

NAME             MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                8:0    0   1.8T  0 disk /data/sdb
sdb                8:16   0   1.8T  0 disk /data/sdc
sdc                8:32   0   1.8T  0 disk /data/sdd
sdd                8:48   0   1.8T  0 disk /data/sde
sde                8:64   0   1.8T  0 disk
├─sde1             8:65   0 931.3G  0 part
└─sde2             8:66   0 931.7G  0 part
sdf                8:80   0   1.8T  0 disk /data/sdg
sdg                8:96   0   1.8T  0 disk /data/sdh
sdh                8:112  0   1.8T  0 disk /data/sdi
sdi                8:128  0   1.8T  0 disk /data/sdj
sdj                8:144  0   1.8T  0 disk /data/sdk
sdk                8:160  0   1.8T  0 disk /data/sdl
sdl                8:176  0   1.8T  0 disk /data/sdm
sdm                8:192  0   1.8T  0 disk /data/sdn
sdn                8:208  0   1.8T  0 disk /data/sdo
sdo                8:224  0 557.9G  0 disk
├─sdo1             8:225  0   500M  0 part /boot
└─sdo2             8:226  0 557.4G  0 part
  ├─VGPO-lvm_root 253:0    0   100G  0 lvm  /
  ├─VGPO-lvm_swap 253:1    0    16G  0 lvm  [SWAP]
  └─VGPO-lvm_var  253:2    0   100G  0 lvm  /var

それから私達は間違った結果を得るでしょう。 OSディスクは次のような結果をsde得る必要があります。sdo

 os_disk=` lsblk -l | grep part | awk '{print $1}' | sed s'/[0-9]/ /g' | sort -u | head -1 `
 echo $os_disk
 sde

したがって、この場合、マシンが仮想マシンでも物理マシンでもよい場合は、オペレーティングシステムディスクを提供する別の方法を見つける必要があります。

ベストアンサー1

システムのマウントポイントにマウントされたパーティションを含むディスクを見つけることができます。例えば /boot:

lsblk -ls | awk '$NF == "/boot" { m = 1; next } m && $NF == "disk" { print $1 ; exit}'

これは以下にも当てはまります/

lsblk -ls | awk '$NF == "/" { m = 1; next } m && $NF == "disk" { print $1 ; exit}'

これlsblkにより、リストモード(-l)を使用して解析を簡素化し、ツリー(-s)を反転して、探しているパーティションの後に親ディスクが表示されるようにします。

おすすめ記事