Blog / Linux

How to resume download over SSH using "rsync"

October 30, 2018

This is one of those "note to self" again.

I needed to download big file (close to 6GB) from a remote server last night but the Internet connection at my AirBnB was a bit spotty and would drop periodically.

Normally, I'd just use scp and even 6GB of data is no big deal on a fast and stable connection. But with a slow or unstable connection, I needed a way to resume the download ...

How to use "nohup" with chained commands in Ubuntu

October 30, 2018

This is another note to self as I keep forgetting the syntax.

Basically I needed to use nohup (short for "no hangup") to execute a PostgreSQL database dump while connected to a remote server via SSH. The reason is to make sure the command doesn't get terminated in case I get disconnected from the server as the command could take some time to complete due to the size of the database I'm backing ...

How to disable Bluetooth on system startup on Ubuntu 16.04

July 29, 2018

Since I almost never use Bluetooth on my laptop, it's a good idea to just turn it off and keep it off by default as it's just another thing that drains the battery and an additional entry point for malicious hackers.

Disabling Bluetooth is surprising not as straightforward on Ubuntu as I would have thought. I was expecting to simply tick or untick a checkbox in the Bluetooth settings.

To keep Bluetooth disabled ...

How to find the Wi-Fi network password (and other settings) via command line in Ubuntu

February 7, 2018

While you can get this information via the "Network Connections" GUI, it could come in handy sometimes to know where this is located. For example, you might want to write a script to display the SSID and passwords of all the Wi-Fi networks you've connected to.

Basically, all the network connections are saved under /etc/NetworkManager/system-connections in Ubuntu in separate configuration files. If you want to delete all the Wi-Fi settings in bulk ...

Upgrading to Ubuntu 16.04, Python 3.6, and Django 1.11

August 12, 2017

I've finally decided to perform major version upgrades of the main components of this blog: the operating system (Ubuntu), the programming language (Python), and the web framework (Django). Doing these upgrades to the latest LTS (long-term support) versions will future-proof the stack for at least the next 3 years.

One of the main reasons you'd want to do this is to get the latest security updates. It's hard to keep up with ...