86981130 2016-06-17
Snapper-gui是snapper的界面化管理工具,支持btrfs, ext4和精简LVM,因其目前尚在开发阶段,很多功能尚不完善,这里仅作为技术预览做简单介绍。
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
# yum install snapper
生成配置文件btrfs_config
# snapper -c btrfs_config create-config -f btrfs /
添加当前用户到btrfs_config
# vi /etc/snapper/configs/btrfs_config ALLOW_USERS="yourloginname"
下载源码:
# 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
效果如图所示:
下面演示如何创建一个快照,点击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文件的管理(创建、查看、修改、增加、删除)。
# 例子: Label(top, text='查看当前手机上所有包名: ',wraplength = 80,justify = 'left').grid(row=1,stick=W, pady=10)