如何判断分区是否为空/未使用

如何判断分区是否为空/未使用

我相信这对你们来说无疑是一个非常简单的问题。所以我将 Ubuntu (13.04) 作为安装在我的硬盘上的唯一操作系统。我想做的是重新分区我的 HDD,以便开始 LFS 构建。
使用sudo fdisk /dev/sda, 和p打印分区表我得到:

/dev/sda1 * ................................. 83 linux
/dev/sda2   ................................. 5 extended
/dev/sda5   ................................. 82 linux swap/solaris

我想使用交换空间作为/dev/sda5构建的交换空间,以免有多余的交换空间。

另外,我想在扩展系统中构建系统,以便我可以为 、 、 等创建/boot逻辑/分区/usr

我的问题是,如何找出/dev/sda2分区中的内容?是空的吗?我可以在其中建立我的 LFS 基地吗?如果它是空的,那么我不会分区任何东西。如果 Ubuntu 将其用于某些用途,那么我将必须为构建构建另一个主分区。

不幸的是,我不记得做过分区,如果我做过的话。

答案1

您可以检查该分区是否已安装:

mount | grep '/dev/sda2'

此命令将显示分区安装所在的安装点(如果有)。

输出示例:

/dev/sda2 on /home type ext4 (rw,relatime,user_xattr,acl,barrier=1,data=ordered)

在这种情况下,/dev/sda2安装在下面/home,您可以直接去那里找出“里面有什么”。

如果该命令没有产生输出,则需要先挂载该分区才能读取它。尝试类似的方法:

sudo mount -t auto /dev/sda2 /mnt

这将安装/dev/sda2在下面,/mnt以便您可以查看其中存储的内容。

要找出安装在 下的分区的空间使用情况/mnt,您可以执行以下操作

df -h /mnt

如果某个分区有足够的可用空间来满足您的要求,您可以缩小它并使用新创建的可用空间来构建 LFS。要轻松缩小分区,您可以使用图形分区编辑器,例如gparted

您可能还对以下我之前回答过的类似问题的 U&L 问答感兴趣:

答案2

我的问题是,如何找出/dev/sda2分区中的内容?

根据您的fdisk打印输出,它似乎/dev/sda2是一个扩展分区。使用 MBR(主引导记录)分区的磁盘只能有 4 个实际分区:扩展分区是绕过该限制的一种方法。它们基本上是这样的:

your disk: ..............................................................
/dev/sda1:  \---------------------/
/dev/sda2:                         \------------------------------------/
/dev/sda5:                          \-----------------------------------/

请注意,这只是您的磁盘的可能的 ASCII 艺术:您没有列出分区大小和位置,因此我不确定此处的顺序是否正确,或者您是否在某处有可用空间。 (或者其他潜伏的分区。)

看起来/dev/sda2可能包含/dev/sda5您的交换分区。

正如其他人建议的那样,您可以尝试这样做mount /dev/sda2,但很可能会失败。

gparted在可视化扩展分区方面做得很好。如果你有它,我发现它比 更容易使用fdisk,而且我认为它对扩展分区的渲染会更有意义。

我想做的是重新分区我的 HDD 以开始 LFS 构建

确保备份磁盘上的所有重要数据。只需要使用分区表编辑器,就可以使从磁盘上获取数据变得更加令人兴奋。 (另外:如果您有多个磁盘,请确保您正在编辑要编辑的磁盘上的分区。)

答案3

  1. 检查mount是否安装了块设备
  2. 使用blkid工具查看分区是否已格式化。
  3. 如果您已卸载分区并格式化,请尝试安装(blkid有助于确定正确的文件系统类型)并使用mount工具检查其上的数据

答案4

只需安装分区并使用即可du -sch mount_point。您还可以使用以下命令检查是否有活动lsof

例如,如果您已将设备安装在 中/mnt,则可以使用lsof +D /mnt来了解活动。

相关内容