Hyper-V虚拟linux系统挂载windows宿主机共享文件夹实现网站数据备份的方法

最近在折腾软路由和虚拟机搭建网站,过程可参见笔者之前的几篇文章《Hyper-V安装lede软路由成功经历》、《Hyper-V安装centos系统搭建linux建站环境》,从而实现了在windows中通过Hyper-V搭建软路由和安装centos系统建站的目的。但我也一直在想,如何实现在linux中将网站重要资料(包括附件、插件、主题、数据库……)随时备份到windows的指定文件夹,万一哪天虚拟机出点问题也可以快速的进行恢复,不至于丢失数据而捶胸顿足。

经过一番学习和思考,我找到了一个相对比较容易操作的方法——在windows的某个分区中创建1个共享文件夹,并相应创建1个用户专门用来操作此文件夹,并在虚拟机linux系统中挂载此网络共享文件夹,需要时就在linux系统中将网站关键数据压缩备份在挂载的文件夹中,就可以随时在windows中察看和修改此文件夹中的备份文件了。

1.在windows中创建用户:右键点击【此电脑】→【管理】→【本地用户和组】→【用户】→(空白处点击右键)【新用户】(按提示操作即可,在此假设密码为myshare)

2.创建1个拟作为备份的文件夹,比如D:/myshare,并设置【共享】

至此windows宿主机端设置完毕。

3.在虚拟机linux(我的是centos)中挂载刚刚在windows中添加的共享文件夹

首先规划你准备在linux中拟挂载windows共享文件夹的目录名称(比如我的在/mnt/backup),并且创建该目录:

ssh进入虚拟机linux系统,然后运行命令:mkdir /mnt/bacpup

再进行远程文件夹的挂载(假设windows宿主机的ip为192.168.12.200):

mount -o username=myshare,password=myshare //192.168.12.200/myshare /mnt/backup

最后执行下列命令将/home/wwwroot以压缩包形式备份到网络共享文件夹myshare中:

Tar -zcvf /mnt/backup/bak.tar.gz /home/wwwroot

4.见证奇迹的时刻到了,在windows的共享文件夹(D:/myshare)中已经躺着刚刚备份完成的bak.tar.gz文件啦!

思考:对于像我一样将centos建站环境搭建在Hyper-V虚拟机中的大虾们,我在考虑是否可以将wwwroot整个目录或其下某个目录(对应某个网站,比如home/wwwroot/file目录)进行映射,即按照前述教程将windows系统中某个目录挂载到centos中网站对应目录(比如home/wwwroot/file目录甚至home/wwwroot整个目录),这样网站所有的数据都在windows系统中指定的文件夹内,修改起来也很方便(尤其是本文所说的文件服务器功能,添加和更新文件后在访问下载服务器都可以及时更新,安全隐患也不算大问题吧),应该尝试一下。