About RsyncOSX

Before installing and using RsyncOSX there are some important information to read and understand. The first document is how to get and install RsyncOSX. The second document is some information what RsyncOSX is and how to use the application. Please read the second document before using RsyncOSX.

Read More

Important notes about RsyncOSX and rsync

Rsync is a file based synchronization tool. There is no custom solution for the backup archive. You can quit utilizing RsyncOSX (and rsync) at any time and still have access to all synchronized files. Be sure you understand the basics how rsync works before using RsyncOSX (and rsync).

Read More

Verify and changed files

The view is depended upon selecting a row in Execute view. When the view is selected the numbers of source and remote destination are automatically collected.

Read More

Snapshots

Snapshot is very effective method for saving changed and deleted data. As an example my GitHub local catalog is about 677 MB in size. This is the size of the oldest snapshot. There are 17 snapshots of my GitHub local catalog and all of them is only 994 MB in size including the oldest snapshot. All 17 snapshots are about 150,000 files and catalogs. Most of them are hardlinks only. If all snapshots was expanded there should be about 16 times more data stored in my NAS. Only changed or deleted files are stored. Files which are not changed or deleted are hardlinked only.

Read More

Signing and notarize the apps

RsyncOSX and RcloneOSX are signed with my Apple ID developer certificate and notarized by Apple. This means both apps are verified and checked for not containing malicious code. It ensures the users that the apps are clean and that they are working together with Apples Gatekeeper technology. A message from Apple is issued when opening either a new or updated application the first time.

Read More

Setup passwordless logins

Caution: if you already have setup ssh utilizing ssh keys there is no need to follow the instructions below. RsyncOSX is depended upon passwordless logins for synchronizing data to remote servers. The instructions below only applies if passwordless login is not setup. If utilizing RsyncOSX on local attached disks this does not apply.

Read More

Executing single tasks

In Execute view (which is the opening view) tasks can be executed as single- and/or batch tasks. Execute single tasks requires a couple of double clicks : one for estimation run and the second for executing the real task. The output from rsync is presented after each run (see below).

Read More

Schedule task

A scheduled task is only active within the profile in use. If you add a scheduled task in one profile and change profile, the schedule will be inactive until profile is loaded again. By selecting a row and choose schedule applies a scheduled backup to a task. There are three choices for schedules :

Read More

RsyncOSX default parameters

RsyncOSX implements default parameters which are working fine for simple backup and restore tasks. The actual parameters used in tasks is depended upon executing rsync over network connection or not. Which standard parameters to use is computed during startup of application by reading the configuration file.

Read More

Full restore

A complete or full restore is commenced by selecting the task to restore. The rsync command shows either the --dry-run backup command or the restore command to execute. You might copy the command to a terminal window to check the result of a run. It is a --dry-run only and simulates the real run.

Read More

Execute tasks in Quickbackup

There are two options for executing quick backups, either estimate and select or directly to quickbackup. In either way RsyncOSX picks up the estimation and uses the numbers to indicate the progress of backup.

Read More

Passwordless logins

Backup to offsite or remote backup locations (servers) requires some more setup. By using rsync from command-line it prompts for login ID and password. There is, as far as I know, no solution for passing login credentials to rsync command-line tool by parameter. But ssh has possibility to enable passwordless logins by using ssh generated private and public key-pair.

Read More

Menuapp

This is the menu app for executing scheduled tasks in RsyncOSX. The idea is to add scheduled tasks in RsyncOSX, quit RsyncOSX and let the menu app take care of executing the scheduled tasks. The menu app is logging all executions as if they were executed from RsyncOSX. Either the menu app or RsyncOSX is allowed execute scheduled tasks.

Read More

Logging

Logging in RsyncOSX might be switched on/off in user configuration. All log records are listed in table within Logs tab. The log records are by default sorted with most recent log ontop. Log records can be filtered by text search by selecting the appropriate column. The direction, ascending or descending, is selected by direction of the arrow.

Read More

Encrypted backups

Rsync does not support encrypted backups by itself. It is probably possible to do encrypted backups utilize filesystems as encfs. Rclone is “a rsync for cloud storage” command line tool which also supports encrypted backups. By combining rclone and rsync, encrypted backups is enabled within RsyncOSX. If your primary object is saving encrypted backups on cloud storage services only there is no need for RsyncOSX. I am saving some personal data on remote servers (not cloud storage) and encrypts the data before synchronizing data.

Read More

My DIY NAS

This is a short resume about my do it yourself (DIY) NAS. I do not spend much time building or maintaining my NAS. The main purposes of my NAS are:

Read More

Copy single files or catalogs

Copy file and volume enables the user to select single file or catalogs for restore to a selected local storage. The source for copy is either selected row in Execute view or if selecting Select button drop down list of all backup locations.

Read More

Changelog

I am using the application on a daily basis and it evolves during my own use. Suggestions for new features, enhancements and bug reports are more than welcome. Please add an Issue regarding any requests or bugs.

Read More

Caching

Some remote info is cached after the first collection of information. It applies to local and remote info about one task and all tasks. If there has been executed a backup task the cache is deleted.

Read More

Execute tasks in batch

Only backup tasks can be set for execution in batch. All tasks marked for batch is presented in screen for batchtask. Choosing Execute executes all tasks in one go, both the estimation and real run. The screen is updated as the process of execution is going forward. After all tasks are completed the view closes automatically in 10 seconds (if not closed before).

Read More

Automatic backups

The automatic feature of RsyncOSX is triggered by ⌘B shortcut or by select the double arrow. RsyncOSX executes a --dry-run task for all configurations and execute a backup run for all tasks with data to be transferred or files to be deleted.

Read More

Add configurations

Adding configurations are easy. A configuration require minimum Local catalog and Remote catalog. And they should not be equal. After entering information about a configuration select the Add button to add it to RsyncOSX. Continue adding new configurations until completed and configurations are saved to permanent storage after each entry.

Read More

Documentation of RsyncOSX source

This is documentation of the design and code of RsyncOSX. I have just commenced the process (June 2017) and it will take time to complete. Why am I doing it? Well, primary for fun but i might learn something from it as well. The design of RsyncOSX is based upon ideas of the MVC pattern. One of the objectives in MVC is to separate the views and models.

Read More

Parameters

RsyncOSX utilizes the object RsyncParameters.swift to analyze and set whatever parameters to rsync the user sets. There are no check of parameters set for rsync is correct. If the user enters bad parameters RsyncOSX passes bad parameters to rsync.

Read More

Configurations (tasks)

The configurations are read from the permanent storage and kept in memory until a new profile is loaded or RsyncOSX quits. Each record (one task) are read from permanent storage as a NSDictionary item, copied to a Configuration and loaded into an Array<Configuration>.

Read More

Next version

The batch part is refactored. The batch part starts with an automatic estimation run for collecting info about the number of files to be synchronized. In the all profiles tab info about used and available remote storage. The info is collected for each row by the user.

Read More