blkidはCentOSからデバイス名を印刷しません。

blkidはCentOSからデバイス名を印刷しません。

CentOSでコンテナを実行しています。

docker run -it centos bash

まず、ラベルまたはUUIDを確認してください。

[root@3271c071fe0a /]# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.3.0-1032-aws root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0 nvme_core.io_timeout=4294967295

次に、label(cloudimg-rootfs)を使用してデバイス名に変換してみましたが、blkid何も印刷されません。

[root@3271c071fe0a /]# blkid -L="cloudimg-rootfs"
[root@3271c071fe0a /]#

/dev/xvda1次のことを確認したので、取得すると予想されますlsblk

[root@3271c071fe0a /]# lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop1     7:1    0 96.6M  1 loop
loop2     7:2    0 28.1M  1 loop
loop3     7:3    0 97.1M  1 loop
xvda    202:0    0    8G  0 disk
`-xvda1 202:1    0    8G  0 part /etc/hosts

印刷してみてはいかがでしょうか?
私は前に試しました=
ここに画像の説明を入力してください。

そしてそうではありません: ここに画像の説明を入力してください。

答え1

blkid信頼できないため、この操作には使用しないでください。 「説明」セクションをチェックすると、man blkid次のフレーズを見つけることができます(強調表示):

lsblk(8) コマンドを使用してブロックデバイスに関する情報を取得するか、lsblk --fs を使用してファイルシステムの概要を取得するか、findmnt(8) を使用してマウントされたファイルシステムを検索することをお勧めします。

lsblk(8)はより多くの情報を提供し、出力形式のより良い制御を提供し、スクリプトで使いやすく、実際の情報を得るためにroot権限を必要としません。 blkidはデバイスから直接情報を読み取り、root以外のユーザーの場合はキャッシュされた未検証の情報を返します。 blkidは主にシステムサービスとlibblkid機能テスト用に設計されています。

関連情報