我使用的是 RHEL 7。
lsblk
提供以下输出。
[root@integrator7 /]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 56.5G 0 part
├─osvg-root 253:4 0 15G 0 lvm /
├─osvg-home 253:5 0 4.7G 0 lvm /home
├─osvg-swap 253:6 0 8G 0 lvm [SWAP]
├─osvg-opt 253:7 0 9.3G 0 lvm /opt
├─osvg-var_log_audit 253:8 0 2.8G 0 lvm /var/log/audit
├─osvg-var_log 253:9 0 4.7G 0 lvm /var/log
├─osvg-var_tmp 253:10 0 2.8G 0 lvm /var/tmp
├─osvg-tmp 253:11 0 4.7G 0 lvm /tmp
└─osvg-var 253:12 0 4.7G 0 lvm /var
sdb 8:16 0 200G 0 disk
└─sdb1 8:17 0 200G 0 part
├─vgdb-docker_lv 253:0 0 30G 0 lvm /var/lib/docker
├─vgdb-vgdb--log_lv 253:1 0 144G 0 lvm /log
├─vgdb-vgdb--mnt_lv_10.5.134.162 253:2 0 17G 0 lvm /mnt/10.5.134.162
└─vgdb-vgdb--data_lv 253:3 0 9G 0 lvm /data1
sr0 11:0 1 1024M 0 rom
但我可以导航到/data
未通过lsblk
.我有两个问题:
- 为什么
/data
通过命令不显示lsblk
? - 我怎样才能摆脱
/data
目录?
答案1
删除目录(无论它们安装在哪里)通常可以通过rm -rf foo
.如果它属于root
,那么您可能需要sudo
。
除此之外,我认为值得一提的是关于挂载点的事情。 lsblk
给出文件系统中特定磁盘/分区的位置。如果其中未列出某些内容,则它通常是父级的一部分。在你的情况下/data
可能安装在/
.但这不一定是真的。
使用该命令mount
获取已安装内容的完整列表。您将看到lsblk
列出的安装点,但您也会看到非磁盘安装点。
这是您可以看到的示例(我添加了缩进以使其更易于阅读):
user ~ $ mount
/dev/sda1 on / type ext4
/dev/sda2 on /home type ext4
sysfs on /sys type sysfs
proc on /proc type proc
tmpfs on /run type tmpfs
/tmp/debian.iso on /mnt type iso9660
在本例中,我们有两个磁盘安装点。你会在 中看到那些lsblk
。这意味着除非更具体地安装某些东西,否则一切/
都已开启。/dev/sda1
例如,/home
在/dev/sda2
.
tmpfs
是下一个要解释的最简单的类型。这是存在于 RAM 中的文件系统。如果你关闭你的机器:噗,它就消失了。将临时文件写入tmpfs
挂载点比/run
将其写入磁盘执行得更快,尤其是在非固态磁盘上。
iso
您可能对文件有一些经验。十几岁的时候,我常常随身携带一些可擦写 CD,以备需要“安装”iso 时使用。我将其刻录到 CD,然后读取 CD 来浏览文件系统。但您也可以简单地mount debian.iso /mnt
在您的系统上浏览它。现在,这个特定的文件类型显示为文件系统中的目录。
sysfs
和proc
types 是内核使用的特殊安装点。您可以/proc
像文件系统一样浏览,但其中的信息实际上是有关计算机上当前运行的进程的信息。这些都不在物理磁盘上。
直接回答你的问题:
为什么 /data 不通过 lsblk commnad 显示?
/data
要么是目录/dev/sda2
,要么是其他类型iso
,tmpfs
或者是其他类型。检查一下mount
以确定。