视频加载失败

Linux 磁盘空间检查与新硬盘挂载完整指南

1320 字
7 分钟
Linux 磁盘空间检查与新硬盘挂载完整指南

前言#

在服务器运维过程中,经常需要为新硬盘挂载数据盘或扩展存储空间。银河麒麟 V10 作为国产主流 Linux 操作系统,其磁盘挂载流程与 CentOS/Ubuntu 基本一致,但也有自身的特点。本文整理自实际生产环境中的磁盘挂载操作,涵盖挂载前检查、完整挂载流程、常见问题解答三个部分,适合运维新手和有一定基础的同学参考。

一、挂载前磁盘检查#

1. 查看已挂载磁盘使用率#

Terminal window
df -h

重点关注以下字段:

字段说明
Size总大小
Used已用空间
Avail空闲空间
Mounted on挂载点

2. 查看块设备,识别新硬盘#

Terminal window
lsblk
  • sda 是第一块盘,sdb 是第二块新硬盘;
  • 没有 Mountpoint 列的设备,代表这块盘还没有挂载。

示例输出:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 38.4G 0 part
├─klas-root 253:0 0 34.4G 0 lvm /
└─klas-swap 253:1 0 4G 0 lvm [SWAP]
sdb 8:16 0 300G 0 disk ← 新硬盘,无挂载点

3. 查看磁盘分区详情#

Terminal window
sudo fdisk -l

该命令可以查看每块磁盘的详细分区信息,包括磁盘型号、扇区大小、磁盘标签类型等。

4. 查看目录占用空间#

当磁盘空间告警时,需要用 du 定位哪个目录占用大:

Terminal window
# 当前目录下各个目录大小
du -sh *
# 看根目录整体大目录
sudo du -sh /*

5. 检查 inode 是否耗尽#

有时候磁盘还有空间但无法写入文件,可能是 inode 用尽:

Terminal window
df -i

注意观察 IUse% 列,如果占用率为 100%,说明 inode 已耗尽,需要清理小文件。


二、新硬盘完整挂载流程#

假设新磁盘设备名为 /dev/sdb,挂载点为 /data

Step 1:分区(可选)#

如果是整块盘直接使用,可跳过此步;如需分区则执行:

Terminal window
sudo fdisk /dev/sdb

进入交互式界面后,依次输入:

g → 创建 GPT 磁盘标签
n → 新建分区
→ 回车(默认分区编号 1)
→ 回车(默认起始扇区)
→ 回车(默认结束扇区,使用全部空间)
w → 写入分区表并退出

⚠️ 重要提醒:操作前务必确认设备名是 sdb,不要误操作 sda!如果操作失误,立即输入 q 退出,不保存修改。

Step 2:格式化(麒麟 V10 推荐 XFS)#

Terminal window
sudo mkfs.xfs /dev/sdb1

若跳过分直接格式化整块盘:sudo mkfs.xfs /dev/sdb

Step 3:创建挂载目录#

Terminal window
sudo mkdir -p /data

Step 4:临时挂载测试#

Terminal window
sudo mount /dev/sdb1 /data
df -h

确认挂载成功后,再配置开机自动挂载。

Step 5:获取 UUID 并配置开机自动挂载#

⚠️ 千万不要直接用 /dev/sdb1 写入 fstab,必须使用 UUID,否则磁盘设备名变化后系统将无法启动。

Terminal window
sudo blkid /dev/sdb1

复制输出的 UUID 值,编辑 /etc/fstab

Terminal window
sudo vi /etc/fstab

在末尾新增一行:

UUID="你的UUID值" /data xfs defaults 0 0

Step 6:校验 fstab 配置(极其重要!)#

Terminal window
sudo mount -a

无任何输出 = 配置正确。如果有报错,立即回去修改 /etc/fstab,写错可能导致系统无法开机。


三、挂载后确认#

Terminal window
df -h
lsblk

确认 /data 已正确挂载,空间可用。


四、常见问题:普通用户如何免 sudo 操作挂载目录#

挂载完磁盘到 /data,默认属主为 root,普通用户 yunwei 没有读写权限。以下是两种常用解决方案:

方案一:修改目录属主(推荐用于普通业务数据)#

Terminal window
sudo chown -R yunwei:yunwei /data
sudo chmod 755 /data

执行后,yunwei 用户可以直接读写 /data,无需 sudo。

Terminal window
su - yunwei
cd /data
touch test.txt
ls -l test.txt

方案二:MySQL 数据目录场景(特殊处理)#

如果 /data/mysql 存放 MySQL 数据,mysqld 进程运行用户是 mysql,不能直接将所有者改成 yunwei

Terminal window
# 目录本身给 yunwei 访问权限
sudo chmod 755 /data
# mysql 数据目录归属 mysql 用户
sudo chown -R mysql:mysql /data/mysql

这种场景下,yunwei 可以通过 MySQL 客户端操作数据库,但不建议直接裸写数据文件,存在安全风险。

补充:让权限配置开机自动生效#

XFS 文件系统不支持在 fstab 中指定 uid/gid,因此每次重启后权限可能丢失。可以将授权写入 /etc/rc.local

Terminal window
# 写入开机执行命令
sudo bash -c 'echo "chown -R yunwei:yunwei /data" >> /etc/rc.d/rc.local'
# 给 rc.local 执行权限
sudo chmod +x /etc/rc.d/rc.local

查看当前用户 UID/GID:

Terminal window
id yunwei
# 输出:uid=1000(yunwei) gid=1000(yunwei) 组...

五、总结#

步骤关键命令注意事项
检查磁盘df -h / lsblk / df -i关注空间、inode 使用情况
分区sudo fdisk /dev/sdb确认设备名,输入 gnw
格式化sudo mkfs.xfs /dev/sdb1麒麟推荐 XFS,不要格式化错盘
挂载测试sudo mount /dev/sdb1 /data先测试再写 fstab
配置开机sudo vi /etc/fstab + UUID必须用 UUID,不能用设备名
校验sudo mount -a无输出才表示配置正确
权限设置sudo chown -R yunwei:yunwei /dataMySQL 数据目录需特殊处理

掌握了以上流程,面对大多数 Linux 服务器的磁盘挂载任务都能从容应对。如有 MySQL 数据迁移需求,可在挂载完成后进一步调整 datadir 配置。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
Linux 磁盘空间检查与新硬盘挂载完整指南
https://blog.huhaha.vip/posts/linux/linux-磁盘空间检查与新硬盘挂载完整指南/
作者
小王的博客
发布于
2026-08-18
许可协议
CC BY-NC-SA 4.0
相关文章智能推荐
1
【Linux】Libgdiplus安装
Linux在CentOS 7上安装libgdiplus的过程,以解决ASP.NET Core MVC项目在处理图片时遇到的The type initializer for ‘Gdip‘ threw an exception错误。首先,通过安装yum-utils和epel-release来获取必要的工具和仓库支持。
2
【Linux】Nacos 问题
Linux本文《【Linux】Nacos 问题》详细记录了在Linux环境下遇到的Nacos服务连接问题及其解决方法。文章还介绍了如何配置Nacos服务的开机自启动,确保服务在系统重启后能够自动运行。这些内容对解决Nacos连接问题和提高系统稳定性非常有帮助。
3
【Linux】常用命令
Linux本文档《【Linux】常用命令》详细列出了Linux系统中常用的命令及其用法,涵盖了从基本命令、关机操作、文件和目录管理、文件搜索、文件系统的挂载与卸载、磁盘空间管理、文件权限设置、文件的特殊属性、打包和压缩文件、RPM包管理、YUM软件包升级器、DEB包管理、查看文件内容、文本处理、字符设置和文件格式转换等操作。
4
【Linux】RocketMQ 部署
Linux在Linux环境下部署RocketMQ的完整过程。文章详细说明了如何通过Docker部署RocketMQ,包括创建NameServer、Broker和RocketMQ Console的服务,并提供了相应的Docker命令和配置文件示例。
5
【Linux】安装OpenJDK
Linux本文详细介绍了在Linux系统上安装OpenJDK的方法,包括在线安装和离线安装两种方式。在线安装部分,首先检查系统中是否已存在Java环境,然后使用yum命令安装OpenJDK,并配置环境变量。离线安装部分,适用于无外网的集群环境,需预先下载OpenJDK二进制包,上传至指定目录,解压并配置环境变量。
随机文章随机推荐

评论区

Profile Image of the Author
小王的博客
一个上了年纪的猿人.
分类
标签
最新动态
站点统计
文章
209
分类
15
标签
161
总字数
478,322
运行时长
0
最后活动
0 天前
站点信息
构建平台
Vercel
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录