Linux硬盘分区指南

Posted by Wh0ami-hy on August 12, 2024

1. 分区和目录

和 Windows 使用盘符定义分区的方式不同,Linux 系统使用树状目录的方式来定义分区,这也被称为挂载点。一些常见的分区目录如下:

| 分区名称 | 作用 | | ——– | —————————————————————————————– | | / | 根分区目录,其他所有分区目录都位于其下。 | | /boot/ | 存放系统启动时所需的各种文件。如果采用传统的 BIOS 引导方式,那么需要创建一个 /boot 分区。在使用 UEFI 引导的系统中,/boot 目录通常可以与根分区合并 | | /root/ | 系统管理员 root 用户的主目录。 | | /home/ | 普通用户的主目录。 | | /etc/ | 配置文件的目录。平常通过系统包管理命令安装的各种软件,它们的配置文件默认都在此目录下。 | | /bin/ | 系统核心命令的存放目录。 | | /usr/ | 系统默认软件的安装目录和共享资源目录。通过系统包管理命令安装的软件,大多都位于这里。 | | /opt/ | 用户软件的安装目录。 | | /var/ | 存放软件运行时生成的一些文件,比如日志,运行中的进程 ID 文件等。 | | /tmp/ | 系统临时文件的目录。每次系统关机时,此目录中的所有文件都会清除。 | | Swap | 这不是目录,是一个特殊的 Linux 分区,通过文件系统的方式模拟物理内存,以应对物理内存使用时的不足。建议大小是物理内存的1~2倍 | 对于 Linux 的分区和目录来说,需要理解两个概念:

1 . 目录是树状层级结构的。 2 . 分区可以通过挂载的方式指定为任何层级下的目录

举个例子来说明一下这两个概念。假设现在系统就一个硬盘,并且快满了。经过了解分析,发现是用户目录 /home/zzxworld/Movies 下存放了太多电影导致的。那我现在可以选择添加一个新的硬盘,格式化后并挂载到 /home/zzxworld/Movies 目录,专门用来存放电影。

理论上来说,安装 Linux 系统,只需要给硬盘分一个区,然后挂载 / 根分区目录即可正常安装和使用

在此基础上,再根据自己的需求规划更加细致的分区方案。

  • 感觉物理内存不够用?那就尝试在方案中添加一个 Swap 交换分区。它通常设置为物理内存大小的 50% 和 100% 左右。
  • 在意个人数据的安全性?可以单独新建一个分区,并挂载到 /home 目录。如果可以的话,添加一个新的硬盘专门挂载到 /home 也没问题。

总之,这一切都需要自己来实践并优化。适合自己的分区方案才是好方案。

2. 文件系统

给硬盘分好区,接下来要面对的就是把分区格式化的问题。Linux 有专属的各种分区格式,也就是俗称的文件系统。常用的文件系统如下:

  • ext4:目前 Linux 主流的文件系统,如无意外的话,默认都应该选择它。
  • swap:Swap 交换分区专属的文件系统,如果有划分 Swap 分区,需要格式化为这种格式。

3. 分区

fdisk -l 命令会列出系统中所有的硬盘及其分区情况

Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xabcd1234

Device     Boot   Start       End   Sectors  Size Id Type
/dev/sda1  *       2048    1026047   1024000  500M 83 Linux
/dev/sda2       1026048  209715166 208689119 99.5G 8e Linux LVM

Disk /dev/sdb: 50 GiB, 53687091200 bytes, 104857600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Disk /dev/mapper/centos-root: 95 GiB, 102187624192 bytes, 199667216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

解读

1.  **硬盘信息**:输出以每个硬盘开始,每个硬盘的信息包括其大小、标识符、扇区大小等。
    
    -   `Disk /dev/sda` 表示第一个硬盘,其大小为 100 GiB。
    -   `Disk /dev/sdb` 表示第二个硬盘,其大小为 50 GiB。
2.  **分区信息**:每个硬盘下面列出了分区信息,包括每个分区的起始扇区、结束扇区、大小、类型等。
    
    -   对于 `/dev/sda`,有两个分区:`/dev/sda1` 和 `/dev/sda2`。
    -   `/dev/sda1` 是引导分区,大小为 500M。
    -   `/dev/sda2` 是 LVM 分区,占据了硬盘大部分空间。
3.  **LVM 逻辑卷信息**:如果有 LVM 逻辑卷,它们会以 `/dev/mapper/` 开头列出。

    -   `/dev/mapper/centos-root` 是一个逻辑卷,它的大小为 95 GiB。

4. 挂载

硬盘完成分区和格式化后,离真正可用还差最后一步:挂载。使用 mount 命令来完成。上面分区环节前规划好的分区和目录的对应方案,也是通过这步落到实处。

挂载在操作形式上可以分为手动挂载和自动挂载。手动挂载通过输入 mount 命令的方式来实现。自动挂载则是通过修改 /etc/fstab 文件配置来达成。完成挂载后的硬盘分区,就真正意义上可以使用了

5. 总结

总的来看,把一块硬盘用作 Linux 分区需要经历四个流程:

1 . 分区方案的制定 2 . 分区操作 3 . 格式化操作 4 . 挂载

6. 硬盘分区

QQ图片20240509085842

LVM 逻辑卷 和lvm分区的关系

卷组(Volume Group,VG):卷组是由一个或多个物理卷组成的逻辑单元。在卷组上创建逻辑卷,并对其进行管理。

逻辑卷(Logical Volumes,LVs):逻辑卷是从卷组中划分出来的逻辑分区。它们类似于传统的硬盘分区,但是具有更灵活的管理能力。逻辑卷可以动态调整大小,并且支持其他高级功能,如快照和镜像。

LVM 分区:LVM 分区是指通过 LVM 技术创建的逻辑卷。与传统的硬盘分区不同,LVM 分区是在逻辑卷上创建的,而不是在物理硬盘上直接分区。

因此,LVM 逻辑卷和 LVM 分区的关系是:LVM 分区是从 LVM 逻辑卷中划分出来的逻辑分区,它们具有灵活的管理能力,并且可以根据需要调整大小。通过 LVM,你可以更好地管理和利用系统的存储资源。

先分区,后挂载,给分区分配挂载点,挂载后就可以使用分区了

需要注意:硬盘最后有剩余的空间都会给根分区 /,需要计算剩余多少空间分给 /,将系统分区和管理员分区剥离开,可便于维护,提升安全性,方便备份等

挂载点(Mount Point): 挂载点通常是一个目录(如/mnt/media等),文件系统中的文件和目录会被挂载到这些目录下以供访问。在CentOS 7中,可以使用 mount 命令来挂载文件系统。如 Linux系统中,根文件系统通常挂载在/目录下,而在Windows系统中,根文件系统则是挂载在特定的驱动器上(如C:\)。挂载点,必须是目录且是 空目录

管理磁盘存储空间: 标准分区、btrfs、lvm

标准分区是将硬盘划分为独立的部分,并在每个部分上安装一个文件系统的传统方法。每个分区的大小是固定的,无法动态调整。通常用于单个操作系统的安装,或者在多引导系统中分配给不同的操作系统。

Btrfs(B-tree文件系统)是一种先进的文件系统,它采用B树数据结构来管理数据,提供了许多高级特性,如快照、压缩、RAID等。它支持动态分配存储空间,可以在运行时动态调整文件系统的大小。Btrfs还支持快照功能,可以快速创建文件系统的副本,并在需要时恢复数据。

LVM(Logical Volume Manager)是一种逻辑卷管理系统,允许管理员动态地创建、调整和删除逻辑卷。它可以在多个物理磁盘上创建逻辑卷,并允许对逻辑卷进行扩展和缩小而无需重新分区。LVM还支持数据快照和数据迁移等高级功能

分区:分区是将物理磁盘的空间划分成逻辑上独立的部分。每个分区被视为一个独立的存储空间单元,它们具有自己的文件系统和数据。分区的目的是允许操作系统将磁盘空间进行有效管理和利用,以便在其上存储数据和执行操作

主分区、扩展分区、逻辑分区

主分区是一种分区类型。主分区中不能再划分其他类型的分区,因此每个主分区都相当于一个逻辑磁盘

一个硬盘最多只能有4个主分区。这是因为主分区的分区表(MBR,Master Boot Record)只能记录4个分区的信息,其中最多只能有一个扩展分区,剩下的三个都可以是主分区。如果需要更多的分区,可以使用扩展分区来扩展

主分区才能存数据,扩展分区不能直接存数据,需要将扩展分区再细分为逻辑分区才可以。所有的逻辑分区都是扩展分区的一部分

硬盘的容量=主分区的容量+扩展分区的容量

扩展分区的容量=各个逻辑分区的容量之和

格式化(逻辑格式化): 目的是在硬盘中写入文件系统(在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间),写入文件系统就将分区变成一个一个小的数据块Block,大小是1-4KB。同时建立一个inode列表

Linux中硬盘以及分区等设备均表示为文件,其命名规则如下

IDE磁盘的文件名为:/dev/hdxx

SCSI/SATA/USB磁盘文件名为:/dev/sdxx

鼠标:/dev/mouse

USB:/dev/usb/lpxx

/dev/mapper/ 目录通常是 LVM(Logical Volume Manager,逻辑卷管理器)创建的设备映射的路径,如果你有一个名为 vg01 的卷组,并在其中创建了一个名为 lv01 的逻辑卷,那么你可能会在 /dev/mapper/ 目录下看到 /dev/mapper/vg01-lv01 这样的设备文件


本站总访问量