Reshaping mdadm RAID 6 to RAID 10

When setting up a RAID array I have always opted for either RAID 5 for arrays with less than five drives or RAID 6 when there are more than five. It wasn't until recently that I noticed how much of a penalty there is for running a RAID 6, six IOPs while the penalty for RAID 5 is four IOPs. When a drive has failed in one of my RAID 6 arrays, I never saw the rebuild speed get above 75MiB/s even though the failed drive was capable of 150MiB/s. For smaller arrays, that may not be such a big deal. When it's a 16TiB array it will take about two and a half days to rebuild.

Quickly Configuring dd-wrt

Recently, I've been having some issues with dd-wrt on my Linksys wrt-1200ac router. I'm not certain if there is a bug with the firmware or if there is something wrong with the router itself. After flashing the router, it would work great anywhere between a day to a week before not being able to access the internet or becomes unresponsive. The only way that I was able to fix it was by doing a factory restore, which means I had to reconfigure my router.

Seeing More Progress with dd and pv

In cloning my PS3 and PS4 hard drives using the dd command, and using the status=progress I was only able to see how much has been transferred, how long the command has been running, and the speed. The only thing that was missing was a estimate of how long it would take to complete. Additionally, a progress bar would have been nice. While waiting for the process to complete I looked for a tool that would provide what I was missing.

Sony Play Station 3 Hard Drive Upgrade

Back in 2008, I purchased a Sony PS3 along with my 40" Samsung TV. I was lucky to get a model that is able to play PSX and PS2 games so I definitely want to hold on to this for as long as I can. Unfortunately, the 80GB hard drive has become rather limited and would like to free myself of that constraint. Over the years I have accumulated various computer parts and one of them was a 256GB OCZ Agility 4 SSD, so I decided to put it to use.

Create a Backup Drive

The first and obvious thing to do is BACKUP YOUR DATA.

Duplicity Backup

What is Duplicity?

Duplicity is a command line tool used for incremental backups to local or remote storage, which supports Amazon S3, Rackspace Cloud, Dropbox, Google Docs, rsync, ssh, FTP, FTPS, and webdav.


  • gpg
  • swaks
  • duplicity
  • duply (optional)

Generating GPG Keys

Although duplicity uses GPG by default, this can be skipped by adding the --no-encryption option to the command.
# gpg —gen-key
# gpg --full-generate-key

Cryptsetup & dm-crypt

cryptsetup is a command line tool that interfaces with the dm_crypt kernel module that creates, access, and manages encrypted devices.


    • Debugging The --debug option does not leak the passphrase, however, using strace does.
    • Backups Always have a fresh backup before attempting anything, especially if you plan on reencrypting a device.
    • Cloning Do not distribute cloned encrypted devices because the clone w