Update README.md

Updated to reflect the resent default/no-default and profile changes.
This commit is contained in:
Anton Hvornum 2019-04-08 19:54:36 +02:00 committed by GitHub
parent 7cf9b8d138
commit 5ececaba1c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 36 additions and 16 deletions

View File

@ -5,42 +5,55 @@ Pre-built ISO's can be found here: https://hvornum.se/archiso/
# Autorun on Arch Live CD (Unattended install)
We'll need to reconfigure the live ISO medium. To do so, we need to add some packages to `packages.x86_64` and add some commands to `customize_airootfs.sh`.
# cd ~/archlive
# echo -e "git\npython-psutil" >> packages.both
# echo -e "git\npython\npython-psutil" >> packages.x86_64
# cat <<EOF >> ./airootfs/root/customize_airootfs.sh
cd /root
git clone https://github.com/Torxed/archinstall.git
chmod +x ~/archinstall/archinstall.py
EOF
# mkdir ./airootfs/etc/skel
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py"' >> ./airootfs/etc/skel/.zprofile
# rm -v work*; ./build.sh -v
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py --default"' >> ./airootfs/etc/skel/.zprofile
> Note: `~/archlive` might be different on your system, see [ArchISO#Setup](https://wiki.archlinux.org/index.php/archiso#Setup) for more info.
After all those commands are done, you can go ahead and run:
# rm -v work*; ./build.sh -v
Whenever this live-cd boots, from here on now - it'll run `archinstall.py` and attempt to unattendely install a default Arch Linux base OS with `base base-devel` as packages.
Or - if successfull - a profile was found at [/deployments](https://github.com/Torxed/archinstall/tree/master/deployments) for the machine being installed (MAC-address based lookup).
Or - if successfull - a MAC-address matches a profile at [/deployments](https://github.com/Torxed/archinstall/tree/master/deployments) for the machine to be installed.
> CAUTION: If no parameters are given, **it will devour the first disk in your system** (/dev/sda, /dev/nvme0n1 etc).
> **CAUTION**: If no parameters are given, **it will devour the first disk in your system** (/dev/sda, /dev/nvme0n1 etc).
## Autorun on Arch Live CD (User specified profile)
## Autorun on Arch Live CD (Unattended profile install)
Everything in the steps above are the same, except for one line that needs to change:
Everything in the steps above are the same, except for one line that needs to change to look like this:
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py --no-default"' >> ./airootfs/etc/skel/.zprofile
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py --profile=workstation"' >> ./airootfs/etc/skel/.zprofile
This will unattendely install the [workstation](https://github.com/Torxed/archinstall/blob/master/deployments/workstation.json) profile.
## Autorun on Arch Live CD (User guided installation (DEFAULT))
Change the autostart line to match:
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py"' >> ./airootfs/etc/skel/.zprofile
This will cause the script to halt and ask for a profile to install before proceeding.
When asked, enter `workstation` for instance - to install based on the workstation template.
When asked, enter `workstation` for instance - to install based on the [workstation](https://github.com/Torxed/archinstall/blob/master/deployments/workstation.json) template.
> CAUTION: Even if `--no-default` is given, if a MAC-address matches under `/deployments`, that profile will forcefully be installed.
> **CAUTION**: If a MAC-address matches under `/deployments`, that profile will forcefully be installed and have presidence over any other profile information.
## Autorun on Arch Live CD (With custom webserver for deployment profiles)
Again, one line differs from the unattended install, change the following line:
Again, one line differs from the other install methods, change the following line:
# echo '[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && sh -c "~/archinstall/archinstall.py --profiles-path=http://example.com/profiles"' >> ./airootfs/etc/skel/.zprofile
This will cause the script to look at `http://example.com/profiles/<mac>.json` for instructions.
This will cause the script to look at `http://example.com/profiles/<profile>.json` for instructions.
# Manually run it on a booted Live CD
@ -51,6 +64,7 @@ This will cause the script to look at `http://example.com/profiles/<mac>.json` f
# umount -R /mnt; cryptsetup close /dev/mapper/luksdev
# python3 ./archinstall/archinstall.py
> Note: This assumes `--post=stay` is set to avoid instant reboot at the end or if during any time a user pressed `Ctrl-C` and aborted the installation.
# Some parameters you can give it
@ -66,7 +80,10 @@ This will cause the script to look at `http://example.com/profiles/<mac>.json` f
(TODO: /boot will take up space from 1MiB - <start>, make sure boot is no larger than 513MiB)
--password=0000 (Default)
Which disk password to use, --password="<STDIN>" for prompt of password.
Which disk password to use,
--password="<STDIN>" for prompt of password
--password="<YUBIKEY>" for setting a unique password on the YubiKey and use that as a password
(NOTE: This will wipe/replace slot 1 on the YubiKey)
--pwfile=/tmp/diskpw (Default)
Which file to store the disk encryption password while sending it to cryptsetup
@ -87,8 +104,11 @@ This will cause the script to look at `http://example.com/profiles/<mac>.json` f
--post=reboot (Default)
After a successful install, reboots into the system. Use --post=stay to not reboot.
--no-default
This parameter causes the installation script to halt if no MAC-based profile was found under /deployments
--default
This parameter causes the installation script to install arch unattended on the first disk
--profile=<name>
For instance, --profile=workstation will install the workstation profile.
--profiles-path=https://example.com/profiles
Changes the default path the script looks for deployment profiles.