Monthly Archives: October 2014

Enable TRIM for SSDs on Linux

Most Linux distributions do not enable TRIM by default for a variety of reasons. To get the best long-term performance from your SSDs you’ll want to enable it manually. The easiest way to do this is to enable systemd’s fstrim timer which will trim your SSDs weekly:

sudo systemctl enable fstrim.timer

Alternatively, you can setup a cronjob to occasionally run fstrim on your SSD’s mount points and log the results.

Create a cron script that will run once a week:

sudo touch /etc/cron.weekly/fstrim

Add the following to /etc/cron.weekly/fstrim. In this example I have two mount points that I want to TRIM on my SSD, / and /home:

echo [ $(date) ] $(/sbin/fstrim -v / 2>&1) >> $LOG
echo [ $(date) ] $(/sbin/fstrim -v /home 2>&1) >> $LOG

Save the file and then make it executable:

sudo chmod +x /etc/cron.weekly/fstrim

It will run once a week and log to /var/log/fstrim.log:

[ Sat Oct 18 08:42:50 MDT 2014 ] /: 42.7 GiB (45856079872 bytes) trimmed
[ Sat Oct 18 08:42:51 MDT 2014 ] /home: 101.5 GiB (108950966272 bytes) trimmed

If you’re using LVM or disk encryption the instructions will be different. In that case I recommend you read through the relevant sections in the Arch wiki page for solid state drives.

Setting kernel options in Fedora with a UEFI BIOS

If your computer is booting with a UEFI BIOS you may notice that changes you make to /etc/default/grub are not taking effect. This may be because you are generating grub.cfg in the wrong location.

Make your changes to /etc/default/grub (kernel options are set on the GRUB_CMDLINE_LINUX= line). Now regenerate your grub.cfg in the standard non-EFI location:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

And/or in the EFI location:

sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Alternatively, you can reference your grub config via the symbolic link in /etc. On UEFI:

sudo grub2-mkconfig -o /etc/grub2-efi.cfg


sudo grub2-mkconfig -o /etc/grub2.cfg

Fix broken Helvetica fonts in Firefox

I’m running Firefox 32.0.2 on Fedora 21 and I noticed that sites that use Helvetica look very poorly. Here’s a side-by-side comparison of Firefox and Chrome showing the problem:

Helvetica on Firefox vs Chrome

I found a lot of complaints online regarding this issue, dating back several years, so I doubt this is a recent bug that will be fixed anytime soon. Luckily there’s a simple fix via Firefox’s userContent.css file.

Continue reading

Installing BitTorrent Sync on Linux

BitTorrent Sync is a powerful cross-platform file sharing application. Think of it as a decentralized version of Dropbox with no charges (it’s free), no limits, and no middle-man.

btsyncctl is a simple bash script I wrote to automate the process of starting, stopping, and checking the status of the BitTorrent Sync application (btsync) running on a Linux desktop or server. btsync runs as a non-privileged user and any user with adequate sudo privileges can use btsyncctl to pass it basic controls like start, stop, and status.

Continue reading