利用duplicity与金山快盘 for UbuntuKylin 实现文件云备份

来源:互联网 发布:java中的hashcode 编辑:程序博客网 时间:2024/05/21 06:47
根据导师的建议,暂时停下开发Linux平台通用网盘客户端的工作。转而利用UbuntuKylin系统现有的金山快盘客户端和Deja-dup备份服务,开发一个系统备份助手程序。由于Deja-dup没有网盘后端,且其插件使用vala语言开发,鉴于时间关系,开发了一个程序调用duplicity(Deja-dup是它的一个UI)完成备份,并通过金山快盘同步至云端,间接实现系统文件云同步。


整个程序可以分为这么几个部分:
        1.UI (mainwindow.c,callbacks.c)
        2.通用函数实现(functions.c)
        3.备份、还原等功能实现(backup.c)
        4.其他功能函数
目前UI部分接近完成,其他函数已经完成,预计在未来2-3天内即可完成整体功能实现。(代码已提交至 csdn code)


存在的问题:
在开发过程中遇到一个比较奇怪的问题,就是glib中的GSList(单链表)在循环赋值时会出错,比如下面这段:
     GSList *list = NULL;
     char tmp[4];
     for (int i = 0; i < 10; i++) {
          sprintf(tmp,"%d",i);
          list = g_slist_append(list,tmp);
     }

最后输出list的值时会输出10个9,不知道问题出在哪里。。(可能是脑袋又秀逗了。。。)

上个图。。

0 0
原创粉丝点击