Inital commit

This commit is contained in:
2022-06-27 19:20:21 +02:00
commit 5b80ab75d9
23 changed files with 565 additions and 0 deletions

82
Readme.md Normal file
View File

@@ -0,0 +1,82 @@
# LDS image update tool
## Available image types:
* Tools, used for diagnosing systems, etc (Must me manually enabled in ipxe file)
* Installers, for installing a disto
* Depercated_Installer, for installing a older distro (does not use `LinuxInstallers-ID.ipxe`)
## Installation instructions
**Part of LDS-based separate installation is not advised**
1. Install required packages (just for building and downloading images)
* All distros: `ca-certificates zstd cpio`
* Deb based: `genisoimage wget unzip`
* Alpine Linux: `bash cdrkit`
2. Clone this repo
3. Enter into the project folder
4. Update www location in `Locations.conf` to the webserver folder
5. Link the ipxe image list to LDS by running `ln -s <PathToThisProject>/LinuxInstallers-ID.ipxe <PathToBootserver>/iPXE`
6. Update the ipxe of the boot server to chain load LinuxInstallers-ID.ipxe for the installers you can also enable Gparted and/or the Clonezilla enrty
7. Follow the usage Instructions below
## Usage instructions
**Make sure you are in the directory that contains the script**
* Run `bash Download-AllInstallers.sh` to download all (non deprecated) installers
* Run `bash Download-AllInstallers.sh` to download all tools
* Run `bash Installer-<DistoNameAndVersion>.sh` to download a specific version
## iPXE config examples (not needed for LDS)
### Gparted
```
kernel http://${next-server}/Tools/Gparted/vmlinuz initrd=initrd.img boot=live config components union=overlay username=user noswap noeject fetch=http://${next-server}/Tools/Gparted/filesystem.squashfs
initrd http://${next-server}/Tools/Gparted/initrd.img
boot
```
### CloneZilla
```
kernel http://${next-server}/Tools/CloneZilla/vmlinuz initrd=initrd.img boot=live username=user union=overlay config components noswap edd=on nomodeset nodmraid locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt fetch=http://${next-server}/Tools/CloneZilla/filesystem.squashfs
initrd http://${next-server}/Tools/CloneZilla/initrd.img
boot
```
### SystemRescueCD
```
kernel http://${next-server}/Tools/SystemRescueCD/vmlinuz archisobasedir=Tools/SystemRescueCD ip=dhcp archiso_http_srv=http://${next-server}/
initrd http://${next-server}/Tools/SystemRescueCD/intel_ucode.img
initrd http://${next-server}/Tools/SystemRescueCD/amd_ucode.img
initrd http://${next-server}/Tools/SystemRescueCD/sysresccd.img
boot
```
### Debian
```
kernel http://${next-server}/Installer/Debian/10/linux initrd=initrd.gz
initrd http://${next-server}/Installer/Debian/10/initrd.gz
boot
```
### Ubuntu (20.10 and older)
```
kernel http://${next-server}/Installer/Ubuntu/20.04/linux initrd=initrd.gz
initrd http://${next-server}/Installer/Ubuntu/20.04/initrd.gz
boot
```
### Ubuntu (21.04 and newer)
```
kernel http://${next-server}/Installer/Ubuntu/22.04/vmlinuz url=http://${next-server}/Installer/Ubuntu/22.04/Ubuntu22.04.iso only-ubiquity ip=dhcp
initrd http://${next-server}/Installer/Ubuntu/22.04/initrd
boot
```
### Fedora and (RedHat, Rocky, Alma and Oracle) Enterprise Linux version 8 and higher
```
kernel http://${next-server}/Installer/Fedora/36/vmlinuz initrd=initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/36/Everything/x86_64/os/ devfs=nomount ip=dhcp
initrd http://${next-server}/Installer/Fedora/36/initrd.img
boot
```
### Proxmox
```
kernel http://${next-server}/Installer/Proxmox/linux26 video=vesafb:ywrap,ntrr ramdisk_size=16777216 rw quiet spash=silent
initrd http://${next-server}/Installer/Proxmox/initrd
boot
```