在这篇博客中我会发布一组 ZFS Automatic Snapshot & Backup 工具,这也许是最后一组了。别担心——这些服务不会消失,但是 Desktop 组中有些人开始更仔细地着手这个工作,所以它们可能会作为一个项目转移到 opensolaris.org 上的某个地方。稍后提供更多相关内容。

我现在已经有了两个新包——每个包中主要的更改是有更多的 GUI 集成,只是一些简单的 zenity 工具,用户无需使用命令行就可以配置服务,安装后它将出现在 GNOME 菜单下的“Administration”中——您也许需要 pkill gnome-panel 或者注销后才能看到该更改。

我对这些 GUI 工具的权限模式不太满意(它们使用 gksu to root 运行),希望它们马上会被换掉。我还解决了更多其他困难以便适当地打包这些服务,这样安装/删除容易多了。以下有更多详细信息。

ZFS Automatic Snapshot Service 0.9

除了新的 GUI 代码,这里还有一些其他代码:

  • 打包——现在我们拥有一个 Makefile,并且构建了一个暂时叫做 TIMFauto-snapshot 的包。欢迎给这个包取个更好的名字。这些只是 SVR4 包——我还没有带宽来使用 IPS,所以请留意 postinstall/preremove 脚本!
  • 添加了一些经常使用的预配置 SMF 实例,例如每日、每小时、每周和每月快照计划,这样用户不必操心为它们创建一个清单。
  • 包含了一个特殊的“fs-name”值“//”,使该服务可以查看 ZFS 用户属性“com.sun:auto-snapshot:<label>”,这样用户可以标记要被包含到给定快照计划的文件系统,而不需要接触 SMF 属性。上面的预定义实例使用这个值。
  • 将启动和停止方法的超时更改为无限——当系统上有很多实例时,10 秒的超时有时会引起该服务放弃尝试启动。由于我添加 cron 条目的方式,我需要序列化这些实例的启动,这样它们就可以花 10 秒以上的时间来启动(取决于您拥有的实例数量)。这还不够理想,欢迎提供更好的建议。我想这也许可以修复 Siegfried 看到的问题,但是我仍然无法正确地重现它。
  • 一位用户评论说,快照名称中含有字符“:”会使它们无法从 Samba 客户端访问——所以我添加了一个 $SEP 变量到该方法脚本中,以允许管理员更改。我现在犹豫不决,我不知道是否应该将它作为一个新的 SMF 属性添加进去,因为我不知道到底有多少人需要这项功能。目前来说,如果您需要,您可以编辑该方法脚本的第 64 行。

有关更多信息,请查看更新的自述文件

ZFS Automatic Backup Service 0.2

没有太多更改——主要是增加了 GUI,并将该服务放入了它自己的包,自动快照服务的警告在这里也适用——这个包当前叫做 TIMFauto-backup。

有关更多信息,请查看更新的自述文件


现在,公布完最新消息后,我想寻求一些帮助。鉴于这些服务在未来可能获得更多关注(创建 Indiana 的人认为在 distro 中拥有这些会很容易),我想看看我们是否能够让更多的人关心这些代码。

如果有人愿意检查这些这些服务的代码,我非常乐意接受您的批评。我自己定期使用它们,我知道有不少人也使用它们,所以它们确实在以预期的方式工作(至少目前是这样,根据墨菲法则,我今天发布的这些版本会给您带来灾难!)——但是,据我所知它们还未进行代码检查,无论是从高层的架构角度还是从个人的角度。

这些会成为 Desktop 整合或者某个其他定位于 Indiana 的整合的候选项吗?也许有一天整合到 Solaris 也说不定。当然,目前自动备份服务太以面向桌面了,但是计划快照服务似乎也是某种我们希望在服务器上实现的东西,不是吗?(我不知道如何开始那个决策过程)

所以,欢迎所有的评论——我可以接受,如果这意味着丢弃所有这些实现并返回绘图板,那么这将是一个最佳的时刻!

现在——您已经阅读了所有这些内容(谢谢)——以下是该软件。在每个 tarball 中,有一个预先创建的“proto”目录包含该包(这是一个架构无关项)。要进行安装,超级用户只需执行:

# cd <install dir>/proto
# pgkadd -d <name of package>

尽情享受吧!

Advertisements