首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >lsblk +文件系统类型不在lsblk中出现。

lsblk +文件系统类型不在lsblk中出现。
EN

Unix & Linux用户
提问于 2021-03-29 09:54:44
回答 1查看 1.9K关注 0票数 -1

我们有带有磁盘的VM机器,如sdb、sdc、sdd等。

我们在sdb磁盘上创建ext4文件系统如下

代码语言:javascript
复制
 mkfs.ext4  -j -m 0 /dev/sdb -F
mke2fs 1.42.9 (28-Dec-2013)
Discarding device blocks: done
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
262144 inodes, 1048576 blocks
0 blocks (0.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1073741824
32 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

现在,我们希望检查文件系统类型如下

代码语言:javascript
复制
lsblk -o NAME,FSTYPE | grep sdb
sdb

但是我们应该得到以下预期的结果

代码语言:javascript
复制
 lsblk -o NAME,FSTYPE | grep sdb
sdb              ext4

我们不明白为什么在磁盘上创建sdb或sdc等ext4文件系统之后,就不能得到文件系统类型- ext4。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2021-03-29 10:06:56

lsblk使用UDev数据库获取有关文件系统的信息,因此如果不显示文件系统类型,UDev可能有问题。要检查UDev对设备的了解,请使用udevadm info /dev/sdb并查找ID_FS_TYPE密钥。

您的设备上的UDev也可能太慢,而且数据库中的值还没有更新,因此lsblk打印“旧”值,即“没有文件系统”。您可以在运行udevadm settle之前尝试运行lsblk

或者,您可以使用sudo blkid -p /dev/sdb (或sudo blkid -p /dev/sdb -s TYPE -o value只打印文件系统类型值)。blkid with -p选项实际上读取设备的元数据区域(这就是它需要sudo的原因),所以信息总是正确的/最新的。

票数 7
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/642598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档