为什么你总是做不好选择?

修改挂载点的完整流程

查看当前挂载信息

首先确认目标设备的标识符和原挂载点:

lsblk -f   # 列出所有块设备及文件系统类型
df -h      # 查看已挂载设备及使用情况

输出示例:

sdb
├─sdb1 ext4 /mnt/old_mount

记录设备名(如 /dev/sdb1)和原挂载点(如 /mnt/old_mount)。

卸载原设备

sudo umount /dev/sdb1   # 通过设备名卸载sudo umount /mnt/old_mount  # 通过挂载点卸载

若提示”target is busy”

  • 退出占用文件的程序。
  • 使用 lsof /dev/sdb1 查找占用进程并终止。
  • 强制卸载:sudo umount -l /dev/sdb1(慎用)。

创建新挂载点目录

sudo mkdir /new/mount_point   # /data 或 /mnt/new_disk

临时挂载测试(可选)

sudo mount /dev/sdb1 /new/mount_point
df -h | grep sdb1  # 验证是否成功

测试后卸载:sudo umount /dev/sdb1

永久修改 /etc/fstab

编辑系统挂载配置文件:

sudo cp /etc/fstab /etc/fstab.bak  # 备份!防止配置错误导致系统崩溃
sudo nano /etc/fstab

找到原设备的挂载行(如 /dev/sdb1UUID=...),修改挂载点路径:
原配置行

/dev/sdb1  /mnt/old_mount  ext4  defaults  0  2

修改后

/dev/sdb1  /new/mount_point  ext4  defaults  0  2

关键参数说明

  • 第一列:设备标识(建议使用 UUID= 替代设备名,通过 blkid 获取)。
  • 第二列:新挂载点路径。
  • 第三列:文件系统类型(如 ext4、ntfs)。
  • 第四列:挂载选项(defaults 包含读写权限)。
  • 第五列:备份标志(0 为不备份)。
  • 第六列:开机磁盘检查顺序(根目录为 1,其他建议 2)。

应用新配置

sudo mount -a   # 加载fstab中所有配置
mount | grep /dev/sdb1  # 检查是否挂载到新路径

若无报错,重启生效:sudo reboot


关键注意事项

  1. 备份优先

    • 操作前备份 /etc/fstabsudo cp /etc/fstab{,.bak}
    • 重要数据建议额外备份。
  2. 使用 UUID 替代设备名
    设备名(如 /dev/sdb1)可能因硬件变动改变,通过 blkid 获取唯一 UUID:

    sudo blkid /dev/sdb1

    /etc/fstab 中使用:

    UUID=123e4567-e89b-12d3-a456-426614174000  /new/mount_point  ext4  defaults  0  2
  3. 文件系统兼容性

    • NTFS/FAT 设备需安装驱动:
      sudo apt install ntfs-3g   # Debian/Ubuntu
    • /etc/fstab 中指定文件系统类型(如 ntfs)。
  4. 修复启动失败
    若修改错误导致系统无法启动:

    • 使用 Live CD/USB 进入救援模式。
    • 挂载原系统根分区:sudo mount /dev/sda1 /mnt
    • 恢复备份:cp /mnt/etc/fstab.bak /mnt/etc/fstab

常见问题解决

  • 挂载失败

    • 检查 dmesg | tail 查看内核错误日志。
    • 确认目录权限:sudo chmod 755 /new/mount_point
  • 开机卡住
    在 GRUB 启动菜单按 e 编辑内核参数,末尾添加 init=/bin/bash,进入单用户模式修复 /etc/fstab

  • 共享挂载点
    需卸载所有子挂载点:sudo umount -R /mnt/old_mount


修改挂载点需谨慎操作,核心步骤为:卸载设备 → 创建目录 → 修改 /etc/fstab → 验证生效,优先使用 UUID 标识设备,并始终备份配置文件,对生产环境操作前,建议在测试系统中模拟流程,如遇复杂情况(如 LVM、RAID),参考官方文档或寻求专业支持。

引用说明基于 Linux 内核文档(kernel.org)、man 手册页(man7.org)及 Filesystem Hierarchy Standard 标准,具体命令可通过 man [command] 查看权威指南。

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

(0)
酷番叔酷番叔
上一篇 2025年7月27日 13:50
下一篇 2025年7月27日 14:00

相关推荐

  • 如何给电脑装Linux系统时正确分区?

    在为电脑安装Linux系统时,合理的分区是确保系统稳定运行和数据安全的关键步骤,与Windows的C盘、D盘逻辑不同,Linux采用“挂载点”的概念,每个分区对应一个特定的目录,需要根据使用需求合理规划,以下是详细的Linux分区指南,包含准备工作、分区方案设计、具体操作步骤及注意事项,分区前的准备工作备份重要……

    2025年9月19日
    12200
  • Linux下如何执行指定路径的C可执行文件?

    在Linux系统中执行C语言程序需先通过编译器将源代码转换为可执行文件,再通过指定路径运行,这一过程涉及路径的正确引用,包括当前路径、绝对路径、相对路径及环境变量配置等,以下是具体操作方法和注意事项,编译C文件生成可执行文件执行C程序的前提是编译源代码(如hello.c),使用gcc编译器时,通过-o参数指定生……

    2025年10月3日
    10500
  • 如何快速定位log文件夹在哪?

    在Linux系统中,日志文件(log)是记录系统运行状态、应用程序行为和错误信息的关键文件,无论是排查系统故障、监控服务状态,还是分析安全事件,查看log文件夹都是管理员和开发者的必备技能,下面详细介绍几种查看方法,涵盖常见位置、命令操作和权限管理,Linux的日志文件通常集中在/var/log目录下,这是系统……

    2025年6月21日
    12700
  • Linux系统下如何高效列出文件内容?

    在Linux系统中,查看文件内容是日常管理和运维操作中的核心需求,无论是配置文件、日志文件还是文本数据,都需要通过命令行工具高效读取,本文将详细介绍常用的文件内容查看命令及其用法,帮助用户根据场景选择合适的工具,基础查看命令:catcat(concatenate)是最基础的文件内容查看命令,适用于小文件的直接输……

    2025年10月7日
    11800
  • Linux系统如何使用ping命令测试外网地址的连通性?

    在Linux系统中,ping命令是最基础的网络诊断工具之一,它基于ICMP(Internet Control Message Protocol,互联网控制报文协议)协议,通过向目标主机发送数据包并接收响应,来测试网络的连通性、延迟和丢包情况,当需要测试与外网地址的连通性时,ping命令是首选工具,但其使用方法和……

    2025年9月22日
    12500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信