我有一台运行 4 年前的 Ubuntu 12.04 LTS 的服务器,linux系统安装在具有 1.5TB 镜像驱动器设置的机器上。Ubuntu 16.04 LTS 没有升级路径,所以我必须重新映像启动驱动器,但它对 ZFS 具有本机支持。
升级期间我需要做什么来确保升级后的机器上仍然可以访问池?
答案1
一般来说,较旧的池版本可以被较新的系统读取,但反之则不行(也就是说,在您zpool upgrade
对池执行操作之后,如果不破坏整个池就无法返回)。
因此,我首先尝试一种简单的方法:
- 进行完整备份并测试是否可以毫无问题地返回到该备份。
- 如果已连接任何日志或缓存设备,请从池中移除它们。
- 停止池上的所有输入/输出,例如网络共享服务。
zpool export
游泳池。- 关闭系统,将一张或两张光盘换到新光盘上。*
- 在另一个磁盘上安装您的基本系统。
zpool import
游泳池。- 或者,如果您只添加了一个磁盘,则可以添加第二个磁盘,然后等待重新镀银完成。
*) 理论上,您总是会交换两个磁盘,因为无论如何您都有一个可用的备份。我只是希望在旧系统中始终有另一个可用的磁盘,以防万一我搞砸了什么,这样我就可以安心了。这样比使用备份恢复速度要快得多,而且在交换之间的 5 分钟内发生位翻转的可能性很小。