ubuntu server 下使用 /etc/fstab 挂载的 s3 存储目录,如何卸载掉

文章目录

    之前通过 s3fs-fuse 将 Linode Object Storage 挂载到 Ubuntu Server 本地文件系统,但是现在想将其中一个 Linode Bucket 去掉。记录一下如何操作:

    一开始直接复制了 DeepSeek 的回答,感觉比我自己整理的清晰多了 🥲 但是实际测试发现,虽然 AI 逻辑清晰,但是 umount 命令的使用是错误的。
    所以,对于服务器的命令行操作,还是谨慎使用 AI 的答案,最好找到 Google 出来的结果比对一下。

    在 Ubuntu Server 下卸载通过 /etc/fstab 挂载的 S3 存储目录,需按以下步骤操作:


    卸载挂载点

    首先使用 fusermount -u 命令卸载目录:

    sudo fusermount -u /path/to/mount_point  
    

    将 /path/to/mount_point 替换为实际挂载路径(如 /mnt/s3)

    注意,这里使用 umount 是无效的。使用 umount /path/to/mount_point,虽然不报任何错误。但是通过

    df -h 
    

    命令,依然能够看到之前的挂载点。说明没有 umount 成功。

    验证卸载

    检查是否成功卸载:

    df -h | grep /path/to/mount_point 
    

    若无输出则表示已卸载。或者打印出 df -h 的所有信息,逐行确认。

    编辑 /etc/fstab

    永久移除自动挂载配置:

    sudo vim /etc/fstab  
    

    找到对应S3存储的挂载行,删除或注释(行首加 #)该行,保存退出。

    fusermount

    第一次见 fusermount 这个命令,man 了一下,看看文档说明:

    > man fusermount
    
    fusermount - unmount FUSE filesystems
    
    Filesystem  in Userspace (FUSE) is a simple interface for userspace programs to export a virtual filesystem to the Linux kernel. It also aims to provide a secure method for non privileged users to create and mount their own filesystem implementations.
    
    fusermount is a program to unmount FUSE filesystems.
    
    -u  unmount
    

    docker 中无法卸载问题

    Linux 宿主机挂载 s3 对象存储,docker 内没有生效问题

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式