之前,我的一块Raspberry Pi作为一个简单的NAS,通过fstab文件实现了开机自动挂载移动硬盘。

根据网上别人嚼过的东西,没有深究。fstab如下:

1
2
3
4
5
6
7
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
UUID=FD720D1BCFDB2930 /media/pi/usbhdd ntfs defaults,noatime 0 0

a swapfile is not a swap partition, no line here

use dphys-swapfile swap[on|off] for that

使用UUID作为标识挂载了一块NTFS的移动硬盘,参数为defaults,noatime,一直以来相安无事。

直至,我把移动硬盘拔掉后开机,无法正常引导进入系统。

我一度以为是我经常暴力关机导致tf卡文件系统损坏。连上显示器和键盘救援一下,boot过程在

1
[** ]A start job is running for dev-disk-by\x2duuid-XXXXXXXX.device (xx s / 1min 30s)
随即进入emergency mode。大致知道原因了:未找到fstab中指定的硬盘

根据Archlinux wiki,若要将其设置为可忽略,可添加nofail选项[1]:

外部设备在插入时挂载,在未插入时忽略。这需要 nofail 选项,可以在启动时若设备不存在直接忽略它而不报错.

1
/etc/fstab
1
/dev/sdg1 /media/backup jfs defaults,nofail 0 2
External devices that are to be mounted when present but ignored if absent may require the nofail option. This prevents errors being reported at boot. For example:

1
/etc/fstab
1
/dev/sdg1 /media/backup jfs nofail,x-systemd.device-timeout=1 0 2
The nofail option is best combined with the x-systemd.device-timeout option. This is because the default device timeout is 90 seconds, so a disconnected external device with only nofail will make your boot take 90 seconds longer, unless you reconfigure the timeout as shown. Make sure not to set the timeout to 0, as this translates to infinite timeout.

If your external device requires another systemd unit to be loaded (for example the network for a network share) you can use x-systemd.requires=x combined with x-systemd.automount to postpone automounting until after the unit is available. For example:

1
/etc/fstab
1
//host/share /net/share cifs noauto,nofail,x-systemd.automount,x-systemd.requires=network-online.target,x-systemd.device-timeout=10,workgroup=workgroup,credentials=/foo/credentials 0 0
综合参考[2],我最终的fstab文件如下:

1
2
3
4
5
6
7
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
UUID=FD720D1BCFDB2930 /media/pi/usbhdd ntfs defaults,nofail,x-systemd.device-timeout=1,noatime 0 0

a swapfile is not a swap partition, no line here

use dphys-swapfile swap[on|off] for that

即使boot阶段没有接入移动硬盘,也能正常启动。

fstab 与移动硬盘挂载方法相关推荐

  1. 修改完/etc/fstab后重新挂载方法

    1.只是一.两个设备的挂载,可以"mount -o remount 挂载点": 2.如果是全fstab表,可以先umount -a然后mount -a,再看看哪些挂载点是busy没 ...

  2. linux5挂载移动硬盘,RHEL5挂载NFTS格式移动硬盘的方法

    本文为转载文章,红色部分是本人注释.文中需要下载两个小软件,需要名为ntfs-3g的小工具的支持.ntfs-3g又需要fuse包的支持. 1.fuse下载 fuse-2.7.4.tar.gz 2.nt ...

  3. android 新分区 挂载,android 新增分区以及挂载方法-Go语言中文社区

    好长时间没更新我的CSDN 了,今天抽时间来重新一下,了解一点android新增分区和挂载的东西. 我是以高通平台代码为例来写的. 闲话不多说,直接上方法: 以新增kaicom分区举例: 1.在par ...

  4. 【unbuntu gpt 硬盘的挂载方法】

    [unbuntu gpt 硬盘的挂载方法] 试验环境: 首先拿到两台有多块硬盘的服务器,.数据盘做raid10, 两个跨区,建立一个虚拟磁盘24T. 另外两个300G盘做Raid1 建立一个虚拟盘30 ...

  5. redhat linux 硬盘挂载方法!!!,Redhat Linux 硬盘挂载方法!!!

    Redhat Linux 硬盘挂载方法!!! 硬盘挂载操作工作步骤: 1.先查看目前机器上有几块硬盘,查看命令有两种: 命令1:# fdisk –l 命令2:# dmesg | grep sd 其中: ...

  6. 移动硬盘加密方法赏析

    大家都知道,移动硬盘如果丢失,里面的数据对于其他用户来说完全是可自由读写的.如果你是商务或者销售,那可能会给公司利益造成严重损失.如果你是工程师,那你的劳动成果,比如文档.方案.代码就会泄漏.如果万一 ...

  7. 电脑文件备份到移动硬盘的方法

    无论你是上班族还是自由职业者,每天使用电脑都会产生大量的办公文件. 而且随着时间的推移,文件也会快速增加. 因此,为了提高办公效率,也为了不让电脑重要文件丢失,备份电脑上的办公文件很有必要. 我们习惯 ...

  8. 计算机硬盘加密的几种方法,对于移动硬盘加密方法 你了解多少种呢?

    原标题:对于移动硬盘加密方法 你了解多少种呢? 移动硬盘自然随身携带,有时会丢失.一旦丢失,内部数据将不再安全.如果内部有重要信息,将严重威胁您的信息安全.那么,什么是移动硬盘加密方法?让我们来看看. ...

  9. linux下U盘的挂载方法

    标题 linux下U盘的挂载方法. #df -h 查看U盘的名称(/dev/sdb1) 在mnt下建立udisk目录(mkdir udisk) 挂载mount /dev/sdb1 /mnt/udisk ...

最新文章

  1. Design Pattern----06.Creational.Singleton.Pattern (Delphi Sample)
  2. plus webview关闭事件监听
  3. matlab合成音乐原理,matlab 做音乐合成
  4. SNMPv3对安全威胁的分类
  5. tp cli模式产生日志导致web环境写入不了
  6. CTO 说,再用错@Autowired 和@Resource 就可以领盒饭了
  7. 模糊控制器原理笔记(附简单demo以及MATLAB相关操作)
  8. python转二进制_python转二进制
  9. 字节跳动年薪百万的测试开发=“半个产品+半个开发”?
  10. CF1467B Hills And Valleys 题解
  11. python微信定时发消息_python实现给微信指定好友定时发送消息
  12. 高阶组件HOC - 小试牛刀
  13. vue 使用vue-canvas-poster生成自定义海报
  14. Android 科大讯飞开发相关
  15. 财政分权数据集:省级地级市财政分权度(1999-2021年)
  16. 一位职场老前辈呕心沥血总结的心得
  17. CF D. GCD Table
  18. Android 调用系统的ContentProvider
  19. Python 3、selenium/执行js命令显示隐藏元素,封装js工具类
  20. 配置jdk的环境变量

热门文章

  1. 如何设置和取消RAR文件的密码保护
  2. 【DFT】安装octopus
  3. inherit和initial:两个特殊的css值
  4. .NET轻量级MVC框架:Nancy入门教程(二)——Nancy和MVC的简单对比
  5. python中copy的使用
  6. 题目: 有 n个人围成一圈,顺序排号。从第一个人开始报数(从 1到 3报数),凡报到 3的 人退出圈子,问最后留下的是原来第几号的那位。(模拟)
  7. 家谱树(gentree)
  8. 东北大学计算机难度,东北大学考研难度
  9. matlab求两向量夹角_MATLAB教程-台大郭彦甫-第十二节,含练习答案
  10. 国外优秀的域名注册商介绍