Installing Syncthing on a Raspberry Pi

Installing Syncthing on a Raspberry Pi is a straightforward process that involves a few steps to get it up and running. Here’s a guide to help you install Syncthing on your Raspberry Pi:

  1. Update Your System
    Before installing any new software, it’s a good practice to update your system. Open a terminal and run the following commands:
    sudo apt update
    sudo apt upgrade
  2. Add the Syncthing Repository
    Syncthing isn’t available directly from the default Raspberry Pi OS repositories, so you’ll need to add the Syncthing repository. First, download release PGP keys:
    curl -s -o syncthing-release-key.asc
  3. Add it to a keyring:
    sudo mv syncthing-release-key.asc /etc/apt/trusted.gpg.d/
  4. Add the Syncthing repository to your sources list:
    echo "deb syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
  5. Install Syncthing
    Now that the repository is added, update your package lists and install Syncthing:
    sudo apt install syncthing
  6. Configure Syncthing to Run Automatically
    Syncthing can be configured to start automatically for your user. Use systemctl to enable and start the Syncthing service. Replace pi with your username if you are not using the default Raspberry Pi OS user:
    systsudo systemctl enable syncthing@pi.service
    sudo systemctl start syncthing@pi.service
  7. Accessing Syncthing
    By default, Syncthing runs on port 8384. You can access it through a web browser at http://localhost:8384 if you are on the Raspberry Pi, or at http://<Raspberry-Pi-IP>:8384 from another computer on the same network.
  8. Adjust Firewall Settings (if necessary)
    If you have a firewall enabled on your Raspberry Pi, make sure to allow traffic on port 8384. This command can open the necessary port:
    sudo ufw allow 8384
  9. Update and Maintenance
    Syncthing will be updated along with your system packages whenever you run sudo apt update and sudo apt upgrade.

Now you should have Syncthing installed and running on your Raspberry Pi. You can start adding devices and sharing folders as per your requirements.

Cathy Directory Printer is amazing

The directory print software named Cathy is pretty amazing. It was designed for creating file catalogues of different disks, so that it is easy to search for your files even if the physical disk is not currently attached to the computer.

What makes this software really weird is that it hasn’t been updated since 2009 -but it still works great! And being so old, the file size is ridiculously small, just 153 KB.

Here is a link for downloading Cathy 2.33:

This is the basic workflow:

Run the Cathy.exe file and go to the “Catalog” tab. Click on the three dots … to point it to a disk to scan and click “add”.

After a little while the disk has been indexed and a new .caf file has been created for it, right next to the Cathy.exe. Now you can browse to that directory to see what files it has, even if the disk is no longer connected.

This allows you to search hundreds of disks at once, without any of them being physically present. Just go to the “Search” tab and type your search term to the “pattern” field and hit search. Cathy will breeze through all your catalogs and show you all matches from all the different drives. Now you know which drive you need to connect, in order to get to your file.

The .caf files are interchangeable, so you can create them on a different computer and just copy and paste them next to Cathy.exe and it will “see” them when you restart the program.

Solution to “Incorrect function” when trying to initialize a disk in the Windows Disk Manager

I cloned my Windows installation to a larger M.2 disk and then put the old smaller M.2 disk into an external usb enclosure. But no computer would recognize it properly. The Windows Disk Manager wanted me to “initialize” the disk but neither the MBR nor the GPT option would work, they both throw an error saying “incorrect function”.

I finally decided to try the disk in another usb enclosure, and it started working immediately. It turns out I was trying to use a SATA M.2 disk in a enclosure meant for NVMe SSD enclosures. While they looked the same, the functionalities were different and not interchangeable.

So the lesson is that you need to make sure you have the right kind of enclosure depending on if your disk is a SATA M.2 or NVMe M.2 SSD disk.

SATA M.2: These SSDs use the Serial ATA (SATA) interface protocol, which is the same interface used by traditional 2.5-inch SATA SSDs and hard drives. They typically have slower transfer speeds compared to NVMe SSDs, but are still much faster than traditional hard drives.

NVMe SSD: NVMe stands for Non-Volatile Memory Express. This is a newer interface protocol designed specifically for SSDs to take advantage of the high-speed PCIe bus. NVMe SSDs offer significantly faster transfer speeds compared to SATA SSDs, making them ideal for high-performance applications and tasks that require fast data transfer rates.

Both SATA M.2 and NVMe M.2 SSDs are physically installed into the same M.2 slot inside a computer. The difference lies in how they communicate with the motherboard once installed.

The M.2 slot is a small, form-factor slot on the motherboard specifically designed to accommodate M.2 SSDs. This slot can support both SATA and NVMe M.2 SSDs, but the SSDs themselves use different interface protocols once connected.

So, regardless of whether you have a SATA M.2 SSD or an NVMe M.2 SSD, you would physically install it into the same M.2 slot on your motherboard. However, the interface protocol and speed capabilities differ between the two types of SSDs.