本文分享的 NVMe 硬盘分区、挂载及开机自动挂载操作,不仅适用于 Jetson AGX Orin 开发板,也适用于绝大多数 Ubuntu 发行版(如 Ubuntu 20.04/22.04 等),步骤拆解到每一个按键操作,确保能跟着完成从 "找到硬盘" 到 "永久使用" 的全流程。
一、准备工作
1.1 软硬件要求
- 硬件:已物理安装好的 NVMe 固态硬盘(台式机 / 笔记本 / Jetson 开发板均可)
- 系统:Ubuntu 类 Linux 系统(Debian 系通用,如 Ubuntu 20.04/22.04、Jetson Linux)
- 工具:fdisk(分区工具,系统自带)、mkfs.ext4(格式化工具,系统自带)、nano/vim(文本编辑器,按需安装)
1.2 核心注意事项
⚠️ 操作前务必确认硬盘无重要数据 :格式化会清空硬盘所有内容,建议只操作全新未使用的 NVMe 硬盘!⚠️ 所有操作建议以 root 用户或 sudo 权限执行,避免权限不足导致操作失败。
二、详细操作步骤
步骤 1:前置必做 ------ 用 lsblk 找到你的 NVMe 硬盘
最容易踩的坑是 "找不到自己的硬盘设备名",先用 lsblk 命令查看所有磁盘,精准定位 NVMe 硬盘。
操作命令:
lsblk
输出示例及解读:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
└─sda1 8:1 0 465.8G 0 part /mnt/hdd
nvme0n1 259:0 0 931.5G 0 disk # 这就是你的NVMe硬盘(核心标识:nvme开头)
└─nvme0n1p1 259:1 0 931.5G 0 part
mmcblk0 179:0 0 116.9G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot/efi
└─mmcblk0p2 179:2 0 116.7G 0 part /
- 关键标识 :NVMe 硬盘设备名通常以
nvme开头(如nvme0n1),区别于普通机械硬盘的sd开头(如sda)、eMMC 的mmcblk开头。 - 记好设备名 :后续所有操作都基于这个设备名(示例中为
nvme0n1),务必确认无误!
步骤 2:使用 fdisk 对 NVMe 硬盘分区
fdisk 是 Linux 系统自带的分区工具,操作简单且兼容性强。
操作步骤:
-
执行 fdisk 命令进入分区界面(替换
nvme0n1为你找到的设备名):sudo fdisk /dev/nvme0n1执行后会进入 fdisk 交互界面,提示
Command (m for help):。 -
输入
n创建新分区:Command (m for help): n # 新建分区 -
选择分区类型(直接默认):
plaintext
Partition type p primary (0 primary, 0 extended, 4 free) # 主分区(推荐) e extended (container for logical partitions) Select (default p): p # 直接回车默认选p即可 -
设置分区编号(默认 1 即可):
Partition number (1-4, default 1): # 直接回车默认1 -
设置扇区起始位置(默认即可):
First sector (2048-1953525134, default 2048): # 直接回车 -
设置扇区结束位置(默认占用全部空间):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-1953525134, default 1953525134): # 直接回车(若想分多个分区,可输入
+500G这类数值指定分区大小,如+500G表示该分区占用 500GB) -
输入
w保存分区设置并退出:Command (m for help): w # 保存并退出,若想放弃修改输入q执行后会提示分区表已更新,硬盘会出现新的分区名(如
nvme0n1p1,p1 表示第 1 个分区)。
验证分区是否创建成功:
再次执行 lsblk,能看到 nvme0n1 下出现 nvme0n1p1 分区即表示成功。
步骤 3:格式化分区(ext4 文件系统)
分区创建后需要格式化才能使用,推荐使用 ext4 文件系统(Linux 最常用、稳定性高)。
操作命令:
# 替换 nvme0n1p1 为你的分区名
sudo mkfs.ext4 /dev/nvme0n1p1
格式化过程说明:
执行后会看到格式化进度输出,最后提示 done 即完成。⚠️ 此步骤会清空分区所有数据,确认无误后再执行!
步骤 4:创建挂载点并手动挂载分区
"挂载" 就是给分区分配一个访问目录,让系统能识别并使用该分区。
操作步骤:
-
创建挂载点目录(自定义名称,示例为
/mnt/nvme):sudo mkdir -p /mnt/nvme-p参数确保目录不存在时创建,存在时不报错。 -
手动挂载分区到挂载点:
# 替换分区名和挂载点为自己的 sudo mount /dev/nvme0n1p1 /mnt/nvme -
验证挂载是否成功:
# 查看挂载状态 df -h输出中能看到
/dev/nvme0n1p1对应挂载点/mnt/nvme即表示成功。
权限设置(可选):
默认挂载后普通用户可能无写入权限,可修改挂载点权限:
sudo chmod 777 /mnt/nvme # 所有用户可读写执行(测试用)
# 或更安全的设置:仅当前用户可读写
sudo chown -R $USER:$USER /mnt/nvme
步骤 5:设置开机自动挂载(永久挂载)
手动挂载重启后会失效,需修改 /etc/fstab 文件实现开机自动挂载,这是最关键的一步!
操作步骤:
-
先获取分区的 UUID(唯一标识,比设备名更稳定):
blkid /dev/nvme0n1p1输出示例:
/dev/nvme0n1p1: UUID="12345678-1234-1234-1234-1234567890ab" TYPE="ext4"复制
UUID=后的字符串(示例中为12345678-1234-1234-1234-1234567890ab)。 -
编辑
/etc/fstab文件(提供两种编辑器方案,按需选择):-
方案 1:使用 nano 编辑器(部分系统需先安装)
# 先检查是否安装nano,未安装则执行以下命令安装 sudo apt update && sudo apt install -y nano # 编辑fstab文件 sudo nano /etc/fstab -
方案 2:使用 vim 编辑器(系统一般自带,适合熟悉 vim 的用户)
# 若未安装vim,先执行安装命令 sudo apt update && sudo apt install -y vim # 编辑fstab文件 sudo vim /etc/fstab
-
-
在文件末尾添加以下内容(替换 UUID 和挂载点为自己的):
# NVMe 硬盘自动挂载 UUID=12345678-1234-1234-1234-1234567890ab /mnt/nvme ext4 defaults 0 2参数解读:
UUID=xxx:分区的唯一标识,避免设备名变动导致挂载失败;/mnt/nvme:挂载点目录;ext4:文件系统类型;defaults:默认挂载参数(包含 rw、suid、dev 等,满足日常使用);0:是否备份(0 = 不备份,1 = 备份,默认 0 即可);2:是否开机检查(0 = 不检查,1 = 根分区检查,2 = 非根分区检查)。
-
保存并退出编辑器:
- 若用 nano 编辑器:
- 按
Ctrl+O保存; - 按
Enter确认文件名; - 按
Ctrl+X退出。
- 按
- 若用 vim 编辑器:
- 按
i进入编辑模式; - 编辑完成后按
Esc退出编辑模式; - 输入
:wq回车(保存并退出);若想放弃修改输入:q!回车。
- 按
- 若用 nano 编辑器:
-
验证 fstab 配置是否正确(关键!避免开机挂载失败):
sudo mount -a若执行后无任何报错,说明配置正确;若有报错,立即重新编辑
/etc/fstab检查内容。
步骤 6:最终验证(可选)
重启系统后,执行 df -h 或 lsblk,确认 /dev/nvme0n1p1 仍挂载在 /mnt/nvme 下,即表示开机自动挂载设置成功。
三、常见问题及解决
问题 1:执行 mount 命令提示 "permission denied"
- 原因:权限不足;
- 解决:所有操作前加
sudo,或以sudo -i切换到 root 用户。
问题 2:重启后挂载失效
- 原因 1:
/etc/fstab中 UUID 或挂载点写错; - 原因 2:
mount -a未验证配置; - 解决:重新执行
blkid核对 UUID,检查/etc/fstab格式,确保mount -a无报错。
问题 3:fdisk 操作后分区未显示
- 原因:系统未刷新分区表;
- 解决:执行
sudo partprobe /dev/nvme0n1刷新分区表,再执行lsblk查看。
问题 4:nano/vim 编辑器未找到
- 原因:系统未预装对应编辑器;
- 解决:执行
sudo apt update && sudo apt install -y nano(nano)或sudo apt install -y vim(vim)安装。
四、总结
- 核心流程:
lsblk找硬盘 →fdisk分区 →mkfs.ext4格式化 →mount手动挂载 →fstab自动挂载; - 关键避坑点:操作前备份数据、用 UUID 而非设备名配置自动挂载、执行
mount -a验证 fstab、编辑器未安装时先执行安装命令; - 通用性:本教程适用于所有 Ubuntu/Debian 系系统(包括 Jetson 开发板),步骤无差异。
按照以上步骤操作,即使是 Linux 新手也能轻松完成 NVMe 硬盘的分区和永久挂载,让硬盘资源得到充分利用。如果操作中遇到问题,欢迎在评论区留言交流!