👨‍💻 about me home CV/Resume 🖊️ Contact Github LinkedIn I’m a Haskeller 🏆 Best of Haskell abp hCalc bl todo pwd TPG

🆕 Sunday 24. May 2020: Working at EasyMile for more than 3 years. Critical real-time software in C, simulation and monitoring in Haskell ➡️ perfect combo! It’s efficient and funny ;-)
🚌 And we are recruiting! Contact if you are interested in Haskell or embedded softwares (or both).
📰 Sunday 15. December 2019: Playing with Pandoc filters in Haskell. abp should make pp obsolete.

CDKey - Backup you data, test your hardware, install your OS… all in one USB device!

Christophe Delord

06 November 2016


cdkey.sh is a bash script that puts some useful softwares in a single bootable USB device.


This software seems to work but I’m not responsible for any loss of data or crash of your hard disk. This software is provided as is, without any support and users use it at their own risks.

Always plug in the power supply to backup and restore a notebook.

Download and install

Content of the CDKey

cdkey.sh builds a USB partition with:

With a single USB device, you can backup, repair and reinstall your system!

Customization of the CDKey

You can customize your CDKey by commenting out the softwares you do not want to install (see the cdkey function in cdkey.sh).

You can also use some parameters to select the packages you need:

cdkey.sh def
sets up the default configuration (for an uptodate information please check the sources)
cdkey.sh srcd
adds SystemRescueCD
cdkey.sh save
adds SystemRescueCD and savep.py
cdkey.sh mint [gnome|kde|lxde]
adds Linux Mint
cdkey.sh ubuntu [gnome|kde|xfce]
adds Ubuntu, Kubuntu and Xubuntu
cdkey.sh knoppix
adds Knoppix
cdkeys.sh debian
adds Debian
cdkeys.sh 32
adds the 32 bit versions of Linux Mint, Ubuntu and Debian (if selected)
cdkeys.sh 64
adds the 64 bit versions of Linux Mint, Ubuntu and Debian (if selected)
cdkeys.sh -f
formats a partition


$ cdkey.sh 64 srcd mint debian
[sudo] password for xxx: 
Choose the CDKey partition and content:
1) _CDKEY_ (sdf1, 1955 MiB)
#? 1
Format sdf1
mkfs.vfat 3.0.12 (29 Oct 2011)
System Rescue CD & save.py
Linux Mint (Gnome, 64 bit)
Debian stable (64 bit)
Debian unstable (64 bit)
Your CDKey is ready.

This will install SystemRescueCD, Linux Mint (64 bit) and the Debian installer (64 bit):

CDKey menu example for the command “cdkey.sh 64 srcd mint debian”

Without parameter, cdkey.sh will create a default key containing:

which requires about 15 Gb.