磁盘空间不足怎么办?

Linux 分区与挂载点详解:从基础到实战

为什么需要分区和挂载点?

在 Linux 系统中,分区是将物理硬盘划分为逻辑存储单元的过程,而挂载点则是将分区连接到文件系统目录的桥梁。

  • /dev/sda1 分区挂载到 /home 目录,意味着所有存储在家目录的文件实际保存在该分区
  • 合理的分区方案能提升系统安全性(如隔离系统文件和用户数据)、性能优化(为不同目录选择不同文件系统)和简化维护(重装系统时不影响用户数据)

核心概念解析

  1. 分区类型

    • 主分区:最多4个,可直接用于安装系统
    • 扩展分区:特殊主分区,用于容纳更多逻辑分区
    • 逻辑分区:在扩展分区内创建,数量不限(如 /dev/sda5/dev/sda6
  2. 常见挂载点
    | 挂载点 | 推荐大小 | 作用 |
    |——–|———-|——|
    | | 20-30GB | 系统根目录(必须存在) |
    | /boot | 512MB-1GB | 启动文件(UEFI系统必备) |
    | /home | 剩余空间50%+ | 用户数据存储 |
    | /swap | 内存1-2倍 | 虚拟内存(休眠需≥内存大小) |
    | /var | 5-10GB | 日志和缓存文件 |

  3. 文件系统选择

    • EXT4:默认选择,稳定兼容(推荐新手)
    • XFS:大文件处理优秀(适合媒体服务器)
    • Btrfs:支持快照和压缩(高级用户适用)

实战分区操作(以 fdisk 为例)

# 2. 进入分区工具(以 /dev/sda 为例)
sudo fdisk /dev/sda
# 3. 创建新分区(交互式操作)
Command (m for help): n  # 新建分区
Partition type: p (primary) / l (logical)  # 选择类型
First sector: 按回车默认  # 起始扇区
Last sector: +20G  # 设置大小(示例:20GB)
# 4. 修改分区类型(重要!)
Command: t
Hex code: 83 (Linux文件系统) / 82 (Swap分区)
# 5. 保存退出
Command: w

格式化与挂载

# 1. 格式化分区为EXT4
sudo mkfs.ext4 /dev/sda1
# 2. 创建挂载目录
sudo mkdir /mnt/data
# 3. 临时挂载
sudo mount /dev/sda1 /mnt/data
# 4. 永久挂载(编辑 /etc/fstab)
# 添加以下行:
/dev/sda1  /mnt/data  ext4  defaults  0  2

参数解析

  • defaults:默认挂载选项(读写、执行权限)
  • 0:不备份
  • 2:非根分区检查顺序

最佳实践方案

  1. 基础方案(适合个人PC)

    • :30GB
    • /home:剩余空间
    • swap:内存1.5倍
  2. 服务器方案(高可靠性)

    • /boot:1GB (EXT4)
    • :50GB (XFS)
    • /var:20GB (独立分区防日志占满)
    • /home:专用LVM卷(便于扩容)
  3. 特殊场景

    • 数据库服务器:单独分区给 /var/lib/mysql,用 noatime 选项提升性能
    • 媒体存储:为 /srv/media 使用 Btrfs 文件系统

常见问题解决

  1. 分区空间不足?

    • 使用 gparted 图形工具调整分区大小(需从Live USB启动)
    • LVM动态卷管理进阶方案
  2. 开机无法挂载?

    • 检查 /etc/fstab 语法:sudo mount -a
    • 使用 UUID 替代设备名(通过 blkid 查看)
  3. SSD 优化技巧

    • 启用 TRIM:fstrim -v /
    • 挂载选项添加 discard,noatime

关键注意事项

  1. 操作前必做

    • 备份重要数据!误操作可能导致数据丢失
    • 使用 lsblk 确认设备标识符,避免误选磁盘
  2. 分区大小预留

    • 根目录 建议保留 15% 空余空间
    • 大容量分区(如 /home)使用 -m 0 参数减少保留空间:mkfs.ext4 -m 0 /dev/sda2
  3. 安全建议

    • 为敏感目录(如 /boot)设置只读挂载:ro 选项
    • 避免使用 exec 选项挂载用户目录

引用说明

  • Linux 内核文档:Documentation/admin-guide/blockdev(内核源码)
  • Filesystem Hierarchy Standard 3.0 (refspecs.linuxfoundation.org)
  • Ubuntu 官方分区指南:help.ubuntu.com/stable/ubuntu-help/disk-partitions.html
  • 《鸟哥的Linux私房菜》基础篇(第四版)机械工业出版社

通过合理规划分区结构和挂载点,不仅能提升系统性能,还能为后续维护和灾难恢复奠定基础,建议初次安装时选择简单方案,后期根据需求逐步优化。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9048.html

(0)
酷番叔酷番叔
上一篇 2025年7月28日 16:17
下一篇 2025年7月28日 16:43

相关推荐

  • Linux线程如何判断是否已退出?

    在Linux系统中,线程是进程内的执行单元,线程退出的判断是线程管理的重要环节,涉及资源释放、状态同步等多方面问题,线程退出的方式多样,对应的判断方法也需根据场景选择,本文将详细分析线程退出的常见方式及判断机制,线程退出的常见方式线程退出可分为主动退出和被动退出两类,主动退出是线程自身决定终止执行,被动退出则是……

    2025年8月23日
    4700
  • 如何制作linux安装dvd

    空白DVD、下载Linux镜像,用烧录软件如Rufus将镜像写入DVD,完成后

    2025年8月19日
    6500
  • Linux如何强制退出程序或终端?

    在Linux系统中,强制退出操作通常针对无响应的程序、卡顿的终端或占用资源的进程,需根据场景选择合适方法,以下从终端、进程、图形界面三方面详细介绍强制退出的具体操作及注意事项,终端中的强制退出终端是Linux用户最常用的交互界面,若输入命令后程序无响应或终端卡死,可通过以下方式强制退出:Ctrl+C(中断当前进……

    2025年9月24日
    3900
  • 如何实现linux虚拟地址

    Linux中,通过分页机制、内存管理单元(MMU)和内核的虚拟内存

    2025年8月16日
    6400
  • Linux如何查看已安装的所有软件?常用命令与方法详解

    在Linux系统中,软件安装方式因发行版和包管理器的不同而存在差异,查看已安装软件的方法也因此多样化,无论是基于Debian/Ubuntu的APT系列、RedHat/CentOS的YUM/DNF系列,还是Arch Linux的Pacman系列,亦或是第三方包管理器如Snap、Flatpak,均有对应的查询命令……

    2025年8月24日
    6600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信