I seize the opportunity of a recent problem with Grsync to talk about it.
Grsync is an useful GUI for the command rsync.
This command is very powerful, since it synchronizes two folders that can be on two different machines, or the same machine. Usually, if on the same machine, rsync is used for backup purposes.
Grsync provides a lot of options to make synchronizations and backups and is really user friendly: it only needs source and destination folders and some options to be set.
The synchronization consists in making the destination folder equal to the source folder.
This is a very common task, since it is common that a folder on a usb stick is used on other PCs and then we want to copy this folder on the PC at home. Copying the entire folder every time will be a slow method, especially if we are handling with gigabytes of data!
Copying the files one by one requires a lot of memory and patience. Grsync requires just one click to identify (there are different methods that I will not list, for now) the differences between the two folders and copy only the files different, saving time, memory (human in this case) and cpu.
The usage is very simple: source and destination paths in the relative space and a few options; I’ll explain the main ones, but a mouse roll-over the option gives a sufficient explanation of the option:
1) Preserve time/owner/permissions/group: the destination files will have respectively the same modification time, the same owner (be careful, this is only a super-user option… in doubt un-tick it), the same permissions on the files (read-write-execute) and the same group.
2) Delete on destination: makes a perfect synchronization, since file deleted in the source folder will be deleted also in the destination folder. Essential to have a faithful copy of the source, but to un-tick for incremental backups.
3) Verbose: every deleted and copied file, error or message in general will be reported.
The next step is installing it! In Fedora you can use yum from a terminal:
sudo yum install grsync
or download and compile it from the official website.
Now let’s focus on the problem: Grsync is not working now.
A conflict (maybe) with the gtk+ update (you don’t need to know what gtk+ is, but if you really want… here).
Apparently, the new version of gtk: gtk+2.0-2.16.6 is not letting work grsync 0.9.1. The symptoms are different:
– Grsync window that won’t open, but will be silently running in the processes.
– Message error, if grsync is run from terminal:
(grsync:#####): Gtk-CRITICAL **: gtk_combo_box_append_text: assertion `GTK_IS_LIST_STORE (combo_box->priv->model)' failed
repeated for how many grsync sessions are defined.
The problem has been discussed and there isn’t still solution as reported here.
I absolutely don’t have the solutions for this problem, since my beginner abilities could only help someone to explain or discover new cool programs as in this post.
Anyway, I’ve got two remedies, until someone find a radical solution to the problem.
The first remedy is pretty lame… but necessary if you want to stick to the program: a downgrade.
If you installed grsync with yum, that’s very easy to do:
yum downgrade grsync
and it will downgrade grsync to the older version (0.6.3-2) that is working with the gtk+ update.
The second remedy is much more cool: using directly the rsync command in a terminal.
Rsync has a very easy syntax:
rsync [options] [source] [destination]
and it features a huge number of options. Check out the man pages to know more about this splendid command.
To automatize backups, you can also create a script. This is a BASH example that I use (I’m a BASH beginner too :D):
# Syncronize using rsync "src" folder on the PC (source) with the "dest" folder
# on the stick (destination).
rsync -vrlpEogth –delete –progress /home/user/src /media/usbstick/dest
I’ll introduce BASH and scripts in another post if you’re not familiar with that.
That’s all for now.
See you soon!
*** UPDATE **
Thanks to the developer Piero Orsoni, the new version of the program, Grsync 0.9.2, is now full-working.
The version will be soon available also in the repositories.