前面是我的思考思路,不愿看可以直接跳到下面红字标记的正文

我使用的系统是centos7,产生这个思考的原因如下

因为我的系统是安装在一块不大的固态硬盘里面,我打算给/www下挂载一块8t的机械硬盘并在里面搭建可道云作为自己的临时数据站。

于是我在给机械硬盘/dev/sdb硬盘分区为sdb1一个大区后直接把/dev/sdb1分区挂载到了/www挂载点下,并在里面正常搭建了可道云。

但下一次开机的时候,/www文件夹变成了一个空文件夹。

这也正常,因为linux默认开机是不会自动挂载分区的,这个时候就需要自己手动输入 mount /dev/sdb1 /www 这样分区sdb1就正常挂载并显示了。

但每次开机都手动挂载硬盘显然不现实,如果有大量硬盘,那这就是一个及其繁琐的过程。这个时候我就需要找一种自动挂载硬盘的方法。

网上查到的自动挂载硬盘的方法

网上可以查到的方法大多是修改/etc/fstab文件,写入要挂载的硬盘的信息。我也使用了这种方法。

但这个方法有个问题,如果挂载一旦出现问题(我当时写错了字)。系统会直接崩掉,要进行系统修复。这是个比较大的风险,所以我开始寻找其他方法。但一直没有找到。

找到新方法的原因

我在使用某商家提供的内网穿透服务的时候,他们开机启动服务的方法是把启动并放入后台的指令写入了开机启动脚本。我想到如果我把挂载指令也写入开机启动脚本是不是就能自动挂载。事实证明是可行的。

具体操作方法(正文)

举个具体的例子 按实际情况调整

你有3块硬盘sdb sdc sdd,你把他们分为6个分区如下:sdb1 sdb2 sdc1 sdc2 sdd1 sdd2 (如果是lvm分区把下文硬盘分区目录改成lvm分区的目录即可)并把它们挂载到 /data1 — /data6 这6个目录下。这时你该做的操作如下:

chmod +x /etc/rc.d/rc.local #给予开机启动脚本开机自动启动的权限

vi /etc/rc.d/rc.local #打开启动脚本并按i编辑

然后丛#!/bin/bash的下一行开始依次写入每个分区的挂载命令:

mount /dev/sdb1 /data6

mount /dev/sdb2 /data6

mount /dev/sdc1 /data6

mount /dev/sdc2 /data6

mount /dev/sdd1 /data6

mount /dev/sdd2 /data6

然后按Esc退出编辑,输出:wq保存退出(冒号是要输入的)。

然后重启电脑,开机脚本就能实现以上硬盘分区的自动挂载。

2020年7月27日补充:

自己的使用中发现该方法有一定缺陷,且有改进方法

发表评论

电子邮件地址不会被公开。