昨天写的《群晖NAS升级硬盘:硬盘的更换与RAID设置思路》,里面有提及将其中1~2个盘位,做成支持热插拔的冷备份盘。今天就写写如何实现这个功能。
用群晖挂载NTFS/EXT4硬盘的方法,并不是我首先发现的,所以这里给出参考链接:
群晖下直接挂载WINDOWS的NTFS格式硬盘http://www.u-share.cn/forum.php?mod=viewthread&tid=26147【修改原理】
原理很简单,就是修改群晖系统里面的一个文件:
/etc.defaults/synoinfo.conf
让系统把特定位置的硬盘,当成是esata外置硬盘,就可以实现热插拔了。
实现热插拔有什么好处?
(1)不关机直接更换硬盘;
(2)支持Windows的NTFS格式!默认情况下,群晖是不支持内置硬盘NTFS格式的。
synoinfo.conf里面有两行信息,是用来设置硬盘插槽是内置还是位置的,默认信息如下:
esataportcfg=\"0xff000\"internalportcfg=\"0xfff\"
这些f和0是16进制数,代表对应的插槽,使用内置或是外置模式。把最后两位换成2进制,并且标出对应的硬盘插槽编号——从右到左:
esataportcfg=\"0xff000\"0xff0 [8][7][6][5][4][3][2][1] 插槽编号0xff0 [0][0][0][0][0][0][0][0]internalportcfg=\"0xfff\"0x00f [8][7][6][5][4][3][2][1] 插槽编号0x00f [1][1][1][1][1][1][1][1]
可以看出,在默认的情况下,前12个插槽都是内置硬盘,后8个插槽才会用作外置硬盘。一般家用的群晖NAS,不太可能用20个硬盘!所以,就要修改一下数值,把前面的插槽改成esata。
举个例子,把第4个硬盘改成外置,esata对应的位置设成1,internal对应位置设成0:
esataportcfg=\"0xff008\"0xff0 [8][7][6][5][4][3][2][1] 插槽编号0xff0 [0][0][0][0][1][0][0][0]internalportcfg=\"0xff7\"0x00f [8][7][6][5][4][3][2][1] 插槽编号0x00f [1][1][1][1][0][1][1][1]
1000的2进制,就是16进制的8;0111的2进制,就是16进制的7。改好保存重启,第4盘位就会识别成热插拔硬盘了。
理论上,可以只保留一个内置硬盘,用于安装DSM系统;剩余的其它硬盘都可以改成外置!
切记!至少保留一个内置硬盘!至少保留一个内置硬盘!至少保留一个内置硬盘!重要的事情说3遍!
【修改步骤】不同的地方,我更喜欢用Linux自带的编辑器vi,而不是在Windows里面编辑文件。接下来,就写写具体修改的步骤。
示例:把第4盘改成热插拔盘
(1)用telnet连接群晖,用root用户登陆;
(2)转到对应目录,查看配置信息:
cd /etc.defaults/cat synoinfo.conf | grep portcfg
(3)用vi命令修改synoinfo.conf文件:
vi synoinfo.conf
(4)用键盘上下箭头,找到关键词:esataportcfg和internalportcfg。按小写字母i进入修改模式:
(5)把esataportcfg改成0xff008,internalportcfg改成0xff7:
(6)按esc键退出修改模式,然后输入:wq保存并退出编辑。回到网页上,第4个盘符已经消失了:
(7)直接输入reboot,重启NAS:
(8)正常情况下,重启完成以后,就可以看到外置的热插拔硬盘了!
(9)每次热插拔之前,点击一下“退出”,就可以更换另外的硬盘:
【热插拔的优缺点】优点:
更换硬盘不用关机,支持NTFS/EXT4的不同格式的硬盘。
缺点:
只能在“外接设备”里面查看信息,原来的“存储空间”里面是看不到外置硬盘的。
所以设成热插拔硬盘后,也并不是十全十美的,按照个人的需求取舍吧。
这是水淼·帝国CMS站群文章更新器的试用版本更新的文章,故有此标记(2023-12-04 08:50:32)