zzxworld

Linux 硬盘分区指南

前几天分享了两篇 Linux 系统的安装流程,一篇是 Arch Linux 的,后面又整理了一篇 Debian Linux 的。通过了解它们的安装过程可以发现:不论是安装哪种 Linux 系统,硬盘分区这一步是少不了的。今天就来总结一下 Linux 系统下的硬盘分区。

作为指南,本文不涉及具体工具的操作和使用流程,仅从概念方面阐述 Linux 分区到挂载所牵涉的相关知识点,适合 Linux 新人快速建立对相关知识的概念和认知。

分区和目录

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

分区名称 作用
/ 根分区目录,其他所有分区目录都位于其下。
/boot/ 存放系统启动时所需的各种文件。
/root/ 系统管理员 root 用户的主目录。
/home/ 普通用户的主目录。
/etc/ 配置文件的目录。平常通过系统包管理命令安装的各种软件,它们的配置文件默认都在此目录下。
/bin/ 系统核心命令的存放目录。
/usr/ 系统默认软件的安装目录和共享资源目录。通过系统包管理命令安装的软件,大多都位于这里。
/opt/ 用户软件的安装目录。
/var/ 存放软件运行时生成的一些文件,比如日志,运行中的进程 ID 文件等。
/tmp/ 系统临时文件的目录。每次系统关机时,此目录中的所有文件都会清除。
Swap 这不是目录,是一个特殊的 Linux 分区,通过文件系统的方式模拟物理内存,以应对物理内存使用时的不足。

以上只是一些比较常见的 Linux 分区目录,还有更多就不一一介绍了。以上表格应该能让还不熟悉 Linux 分区目录的朋友对此有一个大致的概念和了解:Linux 是通过目录树的方式来管理文件的

对于 Linux 的分区和目录来说,需要理解两个概念:

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

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

理解了上面这个例子,就能领会到 Linux 目录式文件管理概念能获得的便利。

理论上来说,安装 Linux 系统,只需要给硬盘分一个区,然后挂载 / 根分区目录即可正常安装和使用。这也是我对刚接触 Linux 的朋友最为推荐的方案。先不要被太多概念所影响,把系统先安装好并用起来。在此基础上,再根据自己的需求规划更加细致的分区方案。

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

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

文件系统

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

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

分区和格式化命令

一些向导式的 Linux 发行版本在安装流程中提供了方便易用的分区操作,比如 Debian Linux:

disk partition on Debian Linx

使用这些 Linux 系统,根据提示来操作,可以很容易的完成分区和文件系统的格式化。

但并不是所有 Linux 发行版本都提供了这种零门槛的工具。比如 Arch Linux,就需要使用专门的分区命令和文件系统格式化命令。比较常见的分区命令就是 fdisk

fdisk command on Arch Linux

分区的格式化命令有很多,需要根据自己的分区方案定义的文件系统来选择。如果是 ext4 文件系统,就使用 mkfs.ext4 命令;Swap 分区则要使用 mkswap 命令。

即便前期通过 Deiban 或者是 Ubuntu 的安装工具无障碍的完成了系统的分区和格式化操作。但我依然建议抽空学习下 fdiskmkfs 等相关的命令。等到需要在系统上添加一块新的硬盘时,会用的上它们。

挂载

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

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

总结

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

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

万事开头难。第 2 步到最后一步都有现成的工具使用,所以没有太大的争议性,只要熟练掌握相关的工具命令即可。而第一步有时对一个使用了多年 Linux 系统的老手难说,也往往会充满着疑惑和纠结。

比如到底要不要划分一个单独的 /boot 分区?Swap 交换分区还要不要用?纠结于此的人往往很难有一个让自己满意的答案。这就有点像给自己的房子装修,到底是卧室大点,还是多留点空间给客厅。别人的意见永远都只能是建议,所以答案还是靠你自己。

最后,我不是 Linux 大牛,所以本文所分享的内容仅代表个人理解。欢迎乐于分享的 Linux 高手在评论中留下你的看法,或者是纠正我的错误。

另外,对 Arch Linux 和 Debian 安装流程感兴趣的朋友,可以查看一下我之前分享的文章。链接在此: