当前位置:首页 > Linux > 正文

如何在Linux挂载格式化内存卡?

在Linux下挂载格式化内存卡步骤:插入内存卡,使用 fdisk -l识别设备(如/dev/sdb1),执行 sudo mkfs.vfat /dev/sdb1格式化(选FAT32/exFAT等),创建挂载点 mkdir /mnt/sdcard,mount /dev/sdb1 /mnt/sdcard`完成挂载。

准备工作

  1. 备份数据
    格式化会清除所有数据,务必提前备份重要文件。
  2. 插入内存卡
    通过读卡器将内存卡连接电脑,系统通常会自动识别(指示灯闪烁表示连接正常)。
  3. 安装工具(可选)
    若系统未预装格式化工具,执行以下命令:

    sudo apt update && sudo apt install gparted dosfstools exfat-utils  # Debian/Ubuntu
    sudo dnf install gparted fuse-exfat  # Fedora/CentOS

识别内存卡设备

  1. 查看磁盘列表
    终端执行:

    sudo fdisk -l

    识别关键信息

    • 通常内存卡显示为 /dev/sdX(如 /dev/sdb)或 /dev/mmcblkX(如 /dev/mmcblk0)。
    • 通过容量大小(例如32GB)和分区类型(如 vfat, exfat)确认设备。

    示例输出:

    如何在Linux挂载格式化内存卡?  第1张

    Disk /dev/sdb: 29.7 GiB, 31914983424 bytes, 62333952 sectors  
    Units: sectors of 1 * 512 = 512 bytes  
    Device     Boot Start      End  Sectors  Size Id Type  
    /dev/sdb1        2048 62333951 62331904 29.7G  c W95 FAT32 (LBA)

卸载现有挂载(若已自动挂载)

sudo umount /dev/sdb1  # 替换 sdb1 为你的实际分区名

格式化内存卡

步骤1:选择文件系统

  • FAT32:兼容性强(相机、车载播放器),但单文件不能超过4GB。
  • exFAT:支持大文件(如4K视频),适合64GB以上内存卡。
  • NTFS:Windows兼容读写,但Linux需额外驱动。
  • ext4:仅限Linux系统使用,性能最佳。

步骤2:执行格式化命令

  • 格式化为 FAT32
    sudo mkfs.vfat -F 32 /dev/sdb1  # -F 指定FAT版本
  • 格式化为 exFAT
    sudo mkfs.exfat /dev/sdb1
  • 格式化为 ext4
    sudo mkfs.ext4 /dev/sdb1

️ 注意:

  • 设备名如 /dev/sdb1具体分区,格式化整卡需用 /dev/sdb(无数字后缀)。
  • 使用 sudo fdisk -l 确认设备名,误操作会导致数据丢失!

挂载内存卡到目录

  1. 创建挂载点(可选):
    sudo mkdir /mnt/sdcard  # 目录名自定义
  2. 手动挂载
    sudo mount /dev/sdb1 /mnt/sdcard
  3. 验证挂载
    df -h | grep sdcard

    输出示例:

    /dev/sdb1        30G  1.2G   29G   4% /mnt/sdcard

配置开机自动挂载(可选)

  1. 获取内存卡UUID
    sudo blkid

    输出示例:

    /dev/sdb1: UUID="A1B2-C3D4" TYPE="exfat"
  2. 编辑 /etc/fstab 文件
    sudo nano /etc/fstab

    添加一行(根据文件系统调整):

    UUID=A1B2-C3D4 /mnt/sdcard exfat defaults,uid=1000,gid=1000 0 0
    • uidgid 设置为你的用户ID(通过 id -uid -g 查看)。
  3. 测试配置
    sudo mount -a  # 无报错即表示配置成功

安全移除内存卡

sudo umount /dev/sdb1  # 卸载分区
sync  # 确保数据写入完毕

等待读卡器指示灯停止闪烁后再物理拔出。


常见问题解决

  • 权限错误:挂载时添加 ,umask=000(如 defaults,umask=000)赋予所有用户读写权限。
  • 无法识别exFAT:安装驱动 sudo apt install exfat-fuse exfat-utils
  • 挂载点占用:使用 lsof /mnt/sdcard 查看占用进程并结束。
  • 格式化失败:尝试用 gparted 图形工具检查分区表(执行 sudo gparted)。

  1. 备份数据 → 识别设备 → 卸载已挂载分区 → 格式化 → 挂载到目录。
  2. 根据设备兼容性选择文件系统:
    • 跨平台选 FAT32/exFAT
    • 纯Linux环境选 ext4
  3. 修改 /etc/fstab 可实现在开机时自动挂载。

操作警示

  • 务必确认设备名(如 /dev/sdb1),错误操作可能格式化系统磁盘!
  • 对SSD或高速卡建议用 ext4exfat,避免 FAT32 性能瓶颈。

引用说明

  • fdiskmkfs 命令:Linux util-linux 套件文档 (kernel.org)
  • exFAT 实现:exfat-fuse GitHub
  • 文件系统选择指南:Arch Wiki (File Systems)
  • fstab 配置规范:man 5 fstab
0