/* pragma: section-numbers 2 */ ====== Installing PLD Linux based on Rescue CD ====== ===== TOC ===== /* UndefinedMacro: TableOfContents(None) */ ===== Requirements ===== Download RescueCD from : [[docs:rescuecd|Rescue CD]]. PLD rescue new is preferred. ===== Partition disk ===== Use for example ''cfdisk'' to partition your destination disk. Usually root partition (/) and swap is enough. \\ :!: Write something more here :!: ===== Filesystem ===== Initiate swap space: # mkswap /dev/sda1 Make filesystem (ex. ext4): # mkfs.ext4 /dev/sda2 We need to create mountpoint and mount partition into it: # mkdir /pld # mount /dev/sda2 /pld If more partitions are going to be used (like you want to have separate /boot or /home) then these need to be mounted now, too. ===== Network configuration of RescueCD ===== RescueCD and installed PLD system will use the same way of configuring network. By default both try to use DHCP to automatically configure network interface during a boot process. If that works for you you don't need to do anything. If manual configuration is required then configure networking using files below. ==== eth0 interface configuration: /etc/sysconfig/interfaces/ifcfg-eth0 ==== Assume you want 192.168.0.2 with /24 network (CIRD notation is preferred) DEVICE=eth0 IPADDR=192.168.0.2/24 ONBOOT=yes BOOTPROTO=none ==== Default gateway and default gateway interface configuration: /etc/sysconfig/network ==== enable networking, ipv4 networking, set default gateway and interface which should be used to reach geteway: NETWORKING=yes IPV4_NETWORKING=yes GATEWAY=192.168.0.254 GATEWAYDEV=eth0 ==== DNS resolver IP addresses configuration: /etc/resolv.conf ==== Add default nameservers: nameserver 1.1.1.1 nameserver 8.8.8.8 === Reload network === # service network restart ===== Poldek's configuration ===== In file **/etc/poldek/repos.d/pld.conf** We need to set **_arch = ** to chosen architecture ex. _arch = x86_64 ===== Packages installation ===== All packages are installed using **poldek** tool (it is a package manager for PLD). # rpm --root /pld --initdb # poldek --root /pld poldek> install LIST OF PACKAGES REQUIRED FOR RUNNING SYSTEM Packages which make sense to be installed: udev pwdutils dhcpcd poldek vim geninitrd grub2 e2fsprogs tzdata glibc-localedb-all If **xfs** filesystem was chosen then please install: xfsprogs \\ :!: Write something more here :!: ===== Kernel installation ===== ==== Prepare to install kernel ==== Before installing kernel you need to mount kernel proc, sys and dev filesystems inside of chroot: # mount -o bind /proc /pld/proc # mount -o bind /sys /pld/sys # mount -o bind /dev /pld/dev You need to tell initrd generator which hardware driver is needed to access your rootfs filesystem by setting scsi_hostadapter alias in **/etc/modprobe,d/modprobe.conf** (or any other file in that directory) alias scsi_hostadapter ahci **lspci -k** command run on rescuecd can help you to find a correct driver: 00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) Kernel driver in use: ata_piix Kernel modules: ata_piix, pata_acpi, ata_generic Note **Kernel driver in use: ata_piix** (alias scsi_hostadapter ata_piix) While at it, on actual installed PLD system (not needed on rescuecd), you can do the same for network card driver: alias netdev-eth0 e1000e (again **lspci -k** will help to choose correct one) Configure **/pld/etc/fstab** ex.: /dev/sda1 swap swap defaults 0 0 /dev/sda2 / ext4 defaults 0 0 \\ :!: Write something more here :!: ==== Kernel installation ==== # poldek --root /pld -i kernel or #poldek --root /pld -i kernel-some-specific-version You can also install multiple different kernels. By default kernel installation also generates initrd based on mounted /proc, /sys, /dev files and configured fstab, modprobe.conf and few others configuration files. generated initrd (which by default is initramfs cpio image) is saved in /boot. ---- There are two initrd generators used in PLD: geninitrd and dracut. Choose one. === geninitrd === If something fails or you want to regenerate initrd manually you can do it using: /sbin/geninitrd -v -f /boot/initd-XXX-Y.gz XXX-Y command. Real example: /sbin/geninitrd -v -f /boot/initd-4.20.3-1.gz 4.20.3-1 //-v// option causes geninitrd to write additional information, so you can see if proper kernel modules are being installed into initrd. === dracut === :!: Write something more here :!: ---- PLD supports systemd and non-systemd installations. In case of systemd installation you need to install package systemd package and setup default boot kernel cmdline option in grub/lilo. Add init=/bin/systemd systemd.unit=graphical.target If booting with new initrd fails you can use **debuginitrd** and **debuginitrd=sh** boot kernel cmdline options to debug the problem. ===== Bootloader ===== ==== grub2 ==== Install grub2 on boot sector of disk: grub-install /dev/sda Generate configuration file for grub2: update-grub Resulting file is saved as **/boot/grub/grub.cfg**. Setting custom options for grub2 can be done in **/etc/sysconfig/grub** (then regenerate **grub.cfg** with **update-grub** command). ==== lilo (deprecated) ==== Edit **/pld/etc/lilo.conf** boot=/dev/sda read-only lba32 prompt timeout=100 image=/boot/vmlinuz label=pld root=/dev/sda2 initrd=/boot/initrd And execute: # chroot /pld /sbin/lilo ==== Advanced configuration ==== Advanced lilo and grub configuration is described here: [[:Docs:man:Bootloader|../Bootloader]] ===== udev ===== \\ :!: Write something more here :!: ===== User accounts ===== By default **root** account doesn't have any password set and by default that will prevent you from logging in. Setup root password chroot /pld && passwd \\ :!: Write something more here :!: ===== Finishing ===== If manual network configuration was required for RescueCD then most liikely you need to repeat that [[docs:man:installing_pld_linux_based_on_rescue_cd#network_configuration_of_rescuecd|step]] on installed PLD system, too. Last step is umount all filesystems: umount -R /pld and reboot: reboot. If you find errors on this page or want to add anything to installation procedure please write to us at feedback / pld-linux.org. \\ :!: Write something more here :!: [[:Docs:man| TOC]] [[:CategoryUpdateNeeded|CategoryUpdateNeeded]]