1. Home
  2. Linux

How to keep Linux config files in sync

Linux configuration files are a pain to set up, especially if you have multiple computers. Over the years, Linux users have solved this problem (for the most part) by compressing and uploading configurations to various cloud storage providers. For as useful as it is to have an archive of various Linux config files backed up online, it’s incredibly tedious to deal with. The developer of Symbolize thinks so too. So, to solve the problem, he created an app that takes the tediousness out of keeping your Linux config files in sync.

The app is called Symbolize, and with it, users can quickly set up configuration files on multiple machines with the help of Symbolic links (AKA shortcuts), and Dropbox magic.

Note: Symbolize works best with the Dropbox syncing application. Before starting with this article, please install the latest release of the sync client. For more information, check out the tutorial here.

Getting Symbolize

The Symbolize application isn’t complicated, so it doesn’t need to be built using special tools and dependencies. Instead, users can either grab it from the Snap store with the snap install command or by grabbing the script from GitHub.

To start the installation of the Symbolize tool on Linux, open up a terminal window by pressing Ctrl + Alt + T or Ctrl + Shift + T on the keyboard. From there, follow the command-line instructions that correspond with how you’d like to run the program on your system.

Snap instructions

The Snap method is arguably the best way to get Symbolize working because it doesn’t require interacting with GitHub. Just grab the Snap and get on with your life.

To start the Snap installation of the Symbolize application, you must be running a Linux operating system that supports the Snap format. For best results, go with Ubuntu, as the Snap runtime comes pre-configured, and no fussing is required. However, if you are not on Ubuntu, you can learn all about how to enable Snaps on your Linux PC by following this guide here.

Once the Snapd runtime is up and running on your Linux system, use the snap install command to grab the latest snapshot of Symbolize.

sudo snap install symbolize

Direct download

Not every Linux operating system works with Snap packages and the Snap runtime. Thankfully, it is possible to take advantage of the usefulness of Symbolize by merely downloading the script file from the developer’s GitHub page.

Usually on Addictivetips when we deal with programs on GitHub, we instruct you to download the files using the Git app. This time, downloading with the Git app isn’t necessary, as there is no code to compile. It’s possible to use the wget command to grab everything you need to use Symbolize.

wget https://raw.githubusercontent.com/SlimG/symbolize/master/symbolize

The wget downloader is very fast, and you’ll have the script in a matter of seconds. When the process is done, it’s time to place the Symbolize application in your path (AKA /usr/local/bin/). To place the script file in /usr/local/bin/, elevate your terminal to Root status and make use of the mv command.

sudo -s

mv symbolize /usr/local/bin/

Next, update the file’s permissions with the chmod command.

chmod +x /usr/local/bin/symbolize

You should then be able to access and run Symbolize by executing the symbolize command.

symbolize

Using Symbolize

This app works by taking a file or folder location and moving it to Dropbox, thus keeping everything in sync. To learn how to keep your Linux configuration files in sync, do the following.

Step 1: Open up a terminal and run ls -a to determine what config folder you’d like to keep in sync with Symbolize. In this example, we will use the ~/.ssh folder.

ls -a

Step 2: Start up the Dropbox sync client on your Linux PC and ensure that you’re logged into the service.

Step 3: Use the mkdir command and create a sync folder for the configuration files on your Linux PC.

mkdir -p ~/Dropbox/configs/

Step 4: Use the symbolize script to sync your configuration files with Dropbox.

symbolize ~/.ssh ~/Dropbox/configs/

Repeat this process for each configuration file and folder on Linux that you want to keep in sync.

Optional – Load up synced configs on another Linux PC

One good thing about Symbolize is that it keeps your configuration files in sync by putting them into Dropbox. But the really cool thing about Symbolize is using it to run the same configuration files on multiple computers.

To set up multiple Linux PCs to use the same sync files, do the following.

Step 1: follow the steps in “Using Symbolize”, above to get all of your configuration files in sync with Dropbox. This only needs to be done with one Linux PC and not multiple.

Step 2:  Log into another Linux PC without any of your synced configuration files set up on it, log into Dropbox and sync your files from the service. Then, run symbolize to set up your configs.

So, for example, to add the synced ~/.ssh folder from ~/Dropbox/configs/, you’d do:

rm -rf ~/.ssh
symbolize  ~/Dropbox/configs/.ssh/ ~/

Leave a comment