Ubuntu下怎么将u盘格式化为ext4?

答案来自 千问

在 Ubuntu 下将 U 盘格式化为 ext4 文件系统非常简单,但请务必谨慎操作 ,因为这会永久删除 U 盘上的所有数据


⚠️ 重要警告

  • 确认选对设备 (如 /dev/sdb/dev/sdc),不要误选系统盘(如 /dev/sda,否则会丢失系统!
  • 格式化后,Windows 无法直接读取 ext4 分区(仅 Linux 支持)。

✅ 步骤:在 Ubuntu 中将 U 盘格式化为 ext4

第一步:插入 U 盘,识别设备名

打开终端,运行:

bash 复制代码
lsblk

bash 复制代码
sudo fdisk -l

找到你的 U 盘。例如:

复制代码
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0 465.8G  0 disk          # ← 这是你的电脑硬盘(别动!)
sdb           8:16   1  14.9G  0 disk          # ← 这很可能是 U 盘(注意 SIZE 和 RM=1 表示可移动)
└─sdb1        8:17   1  14.9G  0 part /media/user/UUI

U 盘通常是 sdbsdc 等,且 RM 列为 1(Removable)

千万不要选 sda(通常是系统盘)!

假设你的 U 盘设备是 /dev/sdb (注意:是整个磁盘,不是分区如 sdb1


第二步:卸载 U 盘(如果已自动挂载)
bash 复制代码
sudo umount /dev/sdb1   # 如果有多个分区,全部卸载
# 或
sudo umount /media/$USER/*

第三步:格式化为 ext4
方法一:保留现有分区表,只格式化分区(推荐)

如果你的 U 盘已有分区(如 /dev/sdb1),可以直接格式化该分区:

bash 复制代码
sudo mkfs.ext4 /dev/sdb1

✅ 优点:安全,不影响其他分区(虽然 U 盘通常只有一个分区)

方法二:重新创建分区表 + 格式化(彻底清理)

如果你想从头开始(比如清除所有分区):

bash 复制代码
# 1. 删除所有分区并创建新分区表(使用 parted 或 fdisk)
sudo parted /dev/sdb --script mklabel msdos mkpart primary ext4 1MiB 100%

# 2. 格式化新分区(通常是 sdb1)
sudo mkfs.ext4 /dev/sdb1

或者用 fdisk 手动操作(适合熟悉命令行的用户):

bash 复制代码
sudo fdisk /dev/sdb
# 操作步骤:
# d → 删除所有分区
# n → 新建分区(默认即可)
# w → 写入并退出
sudo mkfs.ext4 /dev/sdb1

第四步:验证 & 挂载(可选)
bash 复制代码
# 创建挂载点
sudo mkdir -p /mnt/usb

# 挂载
sudo mount /dev/sdb1 /mnt/usb

# 查看
df -h | grep sdb1
ls /mnt/usb

第五步:安全弹出
bash 复制代码
sudo umount /mnt/usb
# 然后物理拔出 U 盘

🔍 补充说明

问题 说明
为什么用 /dev/sdb1 而不是 /dev/sdb sdb 是整个磁盘,sdb1 是第一个分区。文件系统必须建在分区上(除非你做 raw fs,不推荐)
能否不分区,直接格式化 /dev/sdb 可以(sudo mkfs.ext4 /dev/sdb),但某些设备可能不兼容,推荐先分区
如何恢复 FAT32(让 Windows 能读)? sudo mkfs.vfat -F 32 /dev/sdb1

🛡️ 安全建议

  • 操作前再次确认设备名:lsblk → 看大小和挂载点
  • 如果不确定,拔掉 U 盘再运行 lsblk,插上后再运行一次,对比差异
  • 使用图形工具(如 GNOME Disks)更直观(搜索 "Disks" 应用 → 选择 U 盘 → 格式化)
相关推荐
博语小屋4 分钟前
设计一个简单的网络计算器并将其守护进程化
linux·网络·tcp/ip
星火开发设计9 分钟前
枚举类 enum class:强类型枚举的优势
linux·开发语言·c++·学习·算法·知识
喜欢吃燃面5 小时前
Linux:环境变量
linux·开发语言·学习
代码游侠5 小时前
ARM开发——阶段问题综述(二)
运维·arm开发·笔记·单片机·嵌入式硬件·学习
Mr.朱鹏7 小时前
Nginx路由转发案例实战
java·运维·spring boot·nginx·spring·intellij-idea·jetty
java_logo7 小时前
OpenCode 企业级 Docker 部署完整指南
运维·docker·容器·opencode·opencode本地化部署·opencode部署手册·opencode部署方案
TTBIGDATA8 小时前
【knox】User: knox is not allowed to impersonate admin
大数据·运维·ambari·hdp·trino·knox·bigtop
佑白雪乐9 小时前
<Linux基础第10集>复习前面内容
linux·运维·服务器
春日见9 小时前
自动驾驶规划控制决策知识点扫盲
linux·运维·服务器·人工智能·机器学习·自动驾驶