First time start RsyncGUI

This is a short guide what to do when first start of RsyncGUI, the Mac App Store version of RsyncOSX. This guide is primarily for executing synchronizing tasks to remote servers. It includes how to setup passwordless login to remote server. RsyncGUI only support default version of rsync which is included in macOS. The default version of rsync in macOS is old, version 2.6.9, protocol version 29 released in nov 2006. This version of rsync does not support snapshot tasks. If you want to utilize snapshot tasks please use RsyncOSX instead.

Read More

A short intro to RsyncOSX

All configurations to execute are listed in table. From the Synchronize view most actions (edit configurations, adding parameters to rsync, delete configurations) regarding configurations are executed. Configurations can be saved in user selected profiles. The profile in use is shown in label Profile: profilname. Information about new or delete files and numbers remote of directories are only available if version 3.x of rsync is used.

Read More

Verify and changed files

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

Read More


Snapshot is an effective method for saving changed and deleted data. Snapshot utilize hardlinks and only changed and deleted data are saved as separate files in a snapshot. Files which are not changed are hardlinks to the original file in the snapshot.

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


RsyncOSX and the menu app RsyncOSXsched are prepared for localization. RsyncOSX is translated to Chinese (Simplified), German, Norwegian and French. RsyncOSXsched is translated to German, Norwegian and French. Default language for both is English

Read More

Passwordless logins by ssh-keys

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.

Read More

RsyncOSX config files

RsyncOSX stores its configurations, schedules, log records and user configuration as property list files. There are three kinds of files and all are stored in the Documents/Rsync catalog. RsyncOSX evaluates the computer mac serial number at startup and all files are stored in Documents/Rsync/macserialnumber

Read More

User configuration

There are only a few parameters to choose in user configuration. Configurations are saved to permanent store. This applies for version 6.1.5 or greater of RsyncOSX.

Read More

Executing single tasks, edit tasks

In Synchronize view (which is the opening view) tasks can be executed as singletasks. 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. There are three options for editing after selecting a task in row:

  • edit task
  • parameters (to rsync, see parameters)
  • delete task After selecting a row choosing one of the above pops up a new view according to selection. Select Edit task to editing basic information about task. Select Delete task to delete the selected row (task).
Read More

Scheduled task

The menu app to RsyncOSX is responsible for executing scheduled tasks. Adding and deleting scheduled tasks are done within RsyncOSX. By selecting a row and choose schedule applies a scheduled. All schedules is set to start at selected date.

Read More

Rsync daemon setup

It is advised to utilize ssh keys for setup of password less logins for rsync. But it is possible to setup rsync and password less login by utilize a rsync daemon setup.

Read More

RsyncOSX default parameters

RsyncOSX implements default parameters which are working fine for simple synchronize 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

RsyncGUI Changelog

RsyncGUI is a sandboxed macOS app compiled with support for macOS El Capitan version 10.11 - macOS Mojave version 10.15. The application is implemented in Swift 5 by using Xcode 11.

Read More

Restore files

There are two types of restore files:

  • Full restore
    • if the remote (destination) is a snapshot the Full restore is from the latest snapshot
  • Restore files
    • if the remote (destination) is a snapshot the file list might be huge, depends upon how many snapshots and how many files in a snapshot
    • any file from any snapshot might be restored
Read More

Passwordless logins to remote servers

There are two ways to setup passwordless logins to a remote server and RsyncOSX supports both. It is advised to use ssh and ssh-keys because the traffic is encrypted and it is considered more secure.

Read More

Execute tasks in Quickbackup

There are two options for executing quick synchronize tasks, either estimate and select or execute directly. In either way RsyncOSX does an estimation run and the numbers to indicate the progress of synchronizing.

  • execute synchronizing task directly
  • do an estimate first and select The quickbackup executes a estimation run and selects all tasks with files to be synchronized. To commence the actual synchronizing select the marked play button.
Read More

Parameters to rsync

The website LibreByte has written an article 16 Practical examples of the rsync command. One of the examples is instructing rsync to store backups of files in a backup folder and rename old files by a date suffix. Rsync utilizes a ton of parameters. RsyncOSX has only presented a few. Parameters are normally constructed as:

Read More


This is the menu app ( for executing scheduled tasks in RsyncOSX. Scheduled tasks are added in RsyncOSX. Quit RsyncOSX and let the menu app take care of executing the scheduled tasks. RsyncOSX does not execute scheduled tasks. Scheduled tasks are only added and deleted in RsyncOSX.

Read More


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


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

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 a configuration is easy. A configuration require minimum a Local catalog and a Remote catalog. 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

The main viewcontroller

The main viewcontroller contains no logic at all. The only task for the main viewcontroller is to act on whatever the user choose of action. E.g. if the user choose to double click on a row to activate a single task (two step - estimate and execute), the main viewcontroller only create and holds a reference to a Singletask object.

Read More

Documentation of RsyncOSX source

This is some documentation of the design and code of RsyncOSX. The documentation is only a brief summary of some parts of RsyncOSX. 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


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

RcloneOSX changelog

Rclone is rsync for cloud storage. Even if rclone and rsync are somewhat equal they are also in many ways different. RcloneOSX is utilizing rclone for synchronizing and backup of files to a number of cloud services. RcloneOSX utilizes rclone copy, sync, move and check commands.

Read More