技术预览:CentOS 7中利用Snapper GUI管理系统快照


Snapper-gui是snapper的界面化管理工具,支持btrfs, ext4和精简LVM,因其目前尚在开发阶段,很多功能尚不完善,这里仅作为技术预览做简单介绍。

关于Snapper的介绍,请参考另一篇博文:CentOS 7中利用Snapper快照进行系统备份与恢复 

准备工作

CentOS 7中需要预先安装以下依赖包:

python3
python3-dbus
python3-gobject
python3-cairo
python3-gobject-base

EPEL 7提供了python3(Python 3.4),方便我们安装
安装epel-release

$ sudo yum install epel-release

安装python 3.4和lib

$ sudo yum install python34

以上不会自动安装匹配的pip和setuptools,执行以下命令安装:

$ curl -O https://bootstrap.pypa.io/get-pip.py
$ sudo /usr/bin/python3.4 get-pip.py

安装其他依赖包:

# yum install python3-dbus python3-gobject python3-cairo python3-gobject-base

安装snapper

安装snapper

# yum install snapper

生成配置文件btrfs_config

# snapper -c btrfs_config create-config -f btrfs /

添加当前用户到btrfs_config

# vi /etc/snapper/configs/btrfs_config
ALLOW_USERS="yourloginname"

安装Snapper GUI

下载源码:

# git clone https://github.com/ricardo-vieira/snapper-gui/
# cd snapper-gui/

目前Snapper GUI尚未宣称支持CentOS7,我发现有一个关于monospace字体显示的bug需要修复一下才能使用:

snappergui/glade/changesWindow.glade | 1 -
1 file changed, 1 deletion(-)

diff --git a/snappergui/glade/changesWindow.glade b/snappergui/glade/changesWindow.glade
index 6c05b4d..6a29baa 100644
--- a/snappergui/glade/changesWindow.glade
+++ b/snappergui/glade/changesWindow.glade
@@ -126,7 +126,6 @@
                             <property name="editable">False</property>
                             <property name="left_margin">2</property>
                             <property name="right_margin">2</property>
-                            <property name="monospace">True</property>
                             <property name="tab_width">4</property>
                             <property name="auto_indent">True</property>
                             <property name="indent_on_tab">False</property>

接下来安装Snapper GUI:

# python3 setup.py install

启动Snapper GUI

# snapper-gui

效果如图所示:

下面演示如何创建一个快照,点击New->Creat Snapshot

创建一个名为test的timeline快照,可以指定清理规则,以及用户数据(Name、Value):

生成的快照如图所示:

对应的,用命令行查看一下:

[root@localhost ~]# snapper -c btrfs_config list
Type   | #  | Pre # | Date                            | User | Cleanup  | Description | Userdata
-------+----+-------+---------------------------------+------+----------+-------------+---------
single | 0  |       |                                 | root |          | current     |         
pre    | 1  |       | Wed 15 Jun 2016 04:33:54 AM EDT | root |          |             |         
post   | 2  | 1     | Wed 15 Jun 2016 04:34:02 AM EDT | root |          |             |         
single | 3  |       | Wed 15 Jun 2016 05:36:04 AM EDT | root |          | test        |         

查看快照之间的文件修改:

删除快照:

因为Snapper GUI尚在开发之中,通过对Snapper GUI的试用,发现其功能不太完善,尚不能称之为一个成熟的产品:
1. 未实现系统快照的回滚,恢复系统到某个指定快照状态;
2. 未实现单个文件快照的回滚,恢复单个文件到某个指定快照状态;
3. 未实现对config文件的管理(创建、查看、修改、增加、删除)。

相关内容