<br />
<br />
主要内容参考:https://club.fnnas.com/forum.php?mod=viewthread&tid=3230,结合chatgpt提供的方案;<br />
<br />
1.在 /mnt 或其他目录下创建一个挂载点。<br />
<br />
用vol1等目录会出现系统错误,先暂时使用系统目录,后续将这个系统目录挂载到vol1或者其他目录;<br />
<br />
sudo mkdir /mnt/ntfs<br />
<br />
2.配置 /etc/fstab 文件以实现开机自动挂载<br />
<br />
编辑 /etc/fstab 文件,添加一行来配置开机自动挂载。<br />
<br />
sudo nano /etc/fstab<br />
在文件末尾添加如下行:<br />
<br />
UUID=XXXXXXXXXXX /mnt/ntfs ntfs-3g defaults 0 0<br />
<br />
3.1 建立脚本文件并编辑<br />
<br />
该帖子其他内容不变,以下内容我根据自己情况进行修改:<br />
<br />
vi /home/musb.sh <br />
<br />
#!/bin/sh<br />
td20="/vol2/1000/16T"<br />
<br />
# 使用mountpoint检查目标目录是否已经挂载<br />
if mountpoint -q "$td20"; then<br />
echo "$td20 已经挂载,无需挂载"<br />
else<br />
echo "$td20 未挂载,开始挂载..."<br />
<br />
# 执行挂载操作<br />
echo "root密码" | sudo -S mount --bind /mnt/ntfs /vol2/1000/16T<br />
<br />
if [ $? -eq 0 ]; then<br />
echo "挂载成功"<br />
else<br />
echo "挂载失败"<br />
fi<br />
fi<br />
exit 0<br />
<br />
<br />
```<br />
<br />
其中,MOUNT_POINT="/vol1/1000/16T"是硬盘挂载的目录,需要先主动建立相关文件夹;<br />
<br />
UUID是硬盘的特定编号,可以使用lsblk -f查看;<br />
<br />
为什么不用 `/dev/sda1`这种来表示呢,我发现每次开机该种表示方式会变化,可能变成sdb、sdc,UUID比较固定;<br />
<br />
Esc :eq 保存<br />
<br />
### 3.2 赋予脚本权限<br />
<br />
` chmod 777 /home/musb.sh`<br />
<br />
## 4. 开机服务<br />
<br />
### 4.1 创建开机启动服务<br />
<br />
* ```<br />
vi /etc/systemd/system/musb.service<br />
<br />
添加内容:<br />
<br />
[Unit]<br />
Description=musb service<br />
After=network.target<br />
<br />
[Service]<br />
Type=simple<br />
ExecStartPre=-/bin/sleep 15<br />
ExecStart=/home/musb.sh<br />
User=root<br />
Restart=always<br />
<br />
[Install]<br />
WantedBy=default.target<br />
```<br />
<br />
### 4.2 验证并让开机脚本生效<br />
<br />
```<br />
更新systemd目录<br />
systemctl daemon-reload<br />
<br />
创建开机快捷方式<br />
systemctl enable musb.service<br />
<br />
启动服务<br />
systemctl start musb.service<br />
<br />
查看服务状态<br />
systemctl status musb.service<br />
```<br />
<br />
以上代码具体什么意思我也不懂,可以问问chatgpt,不过可以实现挂载ntfs硬盘,以后把硬盘取下来放在windows电脑上可以直接使用,还是很方便,其实还是希望官方支持挂载ntfs硬盘。<br />
[/md]
|