X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=README;h=a3b16b77d8eb805905991e9654cdd5b4a5d63518;hb=114c4b67d43d7fa1cd7b5014153b82aa8492c74d;hp=f9137a04dd0617c07a9dd3f9777639b6fead7b3b;hpb=a43d3eec943c5f0491b300214a3c744d31a6e542;p=automated-distro-installer diff --git a/README b/README index f9137a0..a3b16b7 100644 --- a/README +++ b/README @@ -1,4 +1,60 @@ -Scripts for initial setup of OSes on my home network. +Multi-boot/distro btrfs provisioning -My network is a wndr3700v2 router with openwrt on it and a few pcs -with various gnu/linux distros on them. +Some things are specific to my home network. Uses pxe or pxe-kexec (for +systems like libreboot with no pxe rom, we boot into a live cd or distro +for bootsraping). Works for bare-metal or vms. + +Features people may find useful: installs encrypted trisquel belanos, +arch, debian stable, & debian testing all on the same btrfs filesystem. +Smartly utilizes multiple disks, with scripts to automatically decrypt +on reboots. The partititioning and filesystem script is at +fai/config/hooks/partition.DEFAULT. Other debian based distros at least +as new as ubuntu 14.04 should work fine, and I'm planning to add Fedora +support. Disks are grouped as ssd or hdd and raided in raid 1 or raid 0 +per configuration. The base partitions are divided into boot, swap, and +root, (only boot is unencrypted). There are scripts to resize those +partitions post-provision and while the system is running. + +The repo name fai is copied from the debian project of the same name, +meaning "fully automated installer." + +It also fully automates configuration of an openwrt router after manual +initial installation. + +After provisionining is done, I sync files using unison, then automate +further setup using a different set of scripts, +https://iankelling.org/git/?p=distro-setup;a=tree. + +My network is a wndr3700v2 router with openwrt on it and a few pcs/laptops. + +Since fai requires a debian server as the fai server, there are also +scripts to automate a debian install using pxe and preseeding, which can +be done from any distro. + +Some of the scripts have dependencies for some simple obvious utility +scripts from https://iankelling.org/git, and of course there are some +hostnames that are specific to my network. + +Main scripts meant to be called interactively: + +arch-init-remote # install arch (after it's been booted into it's setup env) +chboot # Set grub to boot into a different distro (installed earlier) +dsfull # install & setup a new fai distro (if data partition already synced) +eboot # reboot and keep disks encrypted +fai-kexec # kexec to fai tftp server that pxe would normally point to +fai-revm # test fai on a fresh vm +faiserver-revm # create a vm which is a fai server using pxe & preseed file +faiserver-uninstall # uninstall fai-server +faiserver-setup # install fai-server on the current machine +fresize # resize swap or boot partitions in a host +myfai-chboot # Sets up tftp pxe config on fai server +pxe-server # temporarily enable (usually) fai or arch boot server +wrt-setup-remote # setup my router +ubuntu-xenial-live-fai-kexec # do fai install from xenial live cd using kexec +myfai-chboot # use instead of pxe-server for fai kexec based install + +License stuff: +The license for the project is GPLv2 or later, mostly because fai is +and I periodically rebase off their example setup for debian. Also, +there is a modified encrypt.upstream, which is from the cryptsetup +package in arch, which is under the same license.