A tool to create Debian automatic installer USB key with preseed, partman recipe, syslinux and parted.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Yorick Barbanneau 9c4931058c Merge full_rewrite branch 3 maanden geleden
conf Add external syslinux folder configuration files 3 jaren geleden
partman_recipes partman_recipes folder rename 3 jaren geleden
preseeds Bad path for partman_recipes 3 jaren geleden
syslinux Adapt syslinux menu to preseeds files new location 3 jaren geleden
.gitignore Updated for new version 3 jaren geleden
README.md Update documentation 2 jaren geleden
init.sh Make spellcheck a little bit happy 3 maanden geleden

README.md

Debian Auto Installer

A script to create automated Debian Installation Key. I created it for my work. You can create bios, efi64 key or prepare files into a folder whitout creating key.

  • init.sh : script to create USB key
  • preseeds : folder containing all preseeds files
  • partman_recipes : folder containinf partman recipes
  • syslinux/syslinux.cfg : Syslinux configuration file
  • conf/*.conf : “folder configuration” files

Init.sh command line options

  • -a [amd64|i386] choose architecture for debian files (default amd64)
  • -b create key for bios boot architecture (default efi64)
  • -c --conf set folder configuration files (default conf/archlinux.conf)
  • -d device USB device like /dev/sdb
  • --debian-version debian iso version to download (default lastest stable)
  • --repo repository folder (default ./repo)
  • --tmp Temporary folder used to create USB key to create directory tree

Be careful : if -d parameter is define then the usb key / external drive will be erased.

Since syslinux files are placed differently depending on the distribution, configuration file (-c) contain directory to syslinux files :

  • syslinux_mbr_bl_folder : folder containing mbr.bin
  • syslinux_efi_bl_folder : folder containing efi64 folder
  • syslinux_modules_folder : folder containing syslinux modules folders

Examples

Prepare file in directory for efi system without writing an usb key for AMD64.

./init.sh

Prepare an USB key (/dev/sdb) for bios / i386 architecture

./init.sh -a i386 -b -d /dev/sdb

Prepare an USB key on Debian

./init.sh -d /dev/sdb -c conf/debian.conf

How it work

  1. Create a repo folder then a subfolder named with debian version then download debian iso, vmlinuz and initrt.gz.
  2. Create a temporary folder and copy all necessary files into it (pressed, partman recipes, syslinux modules...).
  3. If -d /dev/sdx, unmount usb key( if mounted) and create partition scheme, format and mount partitions.
  4. Copy all content of temporary folder into mounted usb key.
  5. Unmount usb key.