========Installation Guide======== Creiamo il mount point # mkdir /mnt/exherbo && mount /dev/sda2 /mnt/exherbo && cd /mnt/exherbo Scegliamo l' ultimo stages # wget http://dev.exherbo.org/stages/exherbo-x86_64-pc-linux-gnu-current.tar.xz # wget http://dev.exherbo.org/stages/sha1sum # grep exherbo-x86_64-pc-linux-gnu-current.tar.xz sha1sum | sha1sum -c Estrarre lo stage # tar xJpf exherbo*xz === Mirrors === [https://www.somasis.com/stages] Aggiornare l' fstab # /dev/sda1 none swap sw 0 0 /dev/sda2 / ext4 defaults 0 0 /dev/sda3 /home ext4 defaults 0 2 tmpfs /tmp tmpfs nodev,nosuid,size=2G 0 0 tmpfs /dev/shm tmpfs defaults 0 0 ======== Chroot nel sistema ======== Prima di iniziare copiare i dns dall' host. # cp /etc/resolv.conf /mnt/exherbo/etc/resolv.conf **IMPORTANTE: Verifica che si usi davvero l'opzione "rbind" per associare il mount di /dev, altrimenti paludis non funzionerà correttamente.** Montiamo! # mount -o rbind /dev /mnt/exherbo/dev/ # mount -o bind /sys /mnt/exherbo/sys/ # mount -t proc none /mnt/exherbo/proc/ # chroot /mnt/exherbo /bin/bash # source /etc/profile ======== Prime Configurazioni ======== Procediamo all' editing di 2 file importanti, bashrc e options.conf; Dal momento in cui scrivo gli unici editors presenti nello stage sono vi, vim ed emacs. Se si vuole procedere con nano bisogna aggiungerlo: cave sync cave resolve nano -x Iniziamo con **bashrc** nano -w /etc/bashrc CFLAGS="-march=amd64 -O2 -pipe -fomit-frame-pointer" CXXFLAGS="${CFLAGS}" CHOST="x86_64-pc-linux-gnu" MAKEOPTS="-j3" i686_pc_linux_gnu_CFLAGS="-march=native -O2 -pipe" i686_pc_linux_gnu_CXXFLAGS="-march=native -O2 -pipe" x86_64_pc_linux_gnu_CFLAGS="-march=native -O2 -pipe" x86_64_pc_linux_gnu_CXXFLAGS="-march=native -O2 -pipe" Passiamo a **options.conf** nano -w /etc/options.conf ### Base ### */* build_options: jobs=4 -recommended_tests -dwarf_compress */* targets: x86_64-pc-linux-gnu i686-pc-linux-gnu Modifica successiva: ### Base ### */* build_options: jobs=4 -recommended_tests -dwarf_compress */* targets: x86_64-pc-linux-gnu i686-pc-linux-gnu ### driver ### */* INPUT_DRIVERS: keyboard mause evdev -acecad -vmmouse */* VIDEO_DRIVERS: vesa amdgpu -intel -cirrus -vmware -nouveau -nv */* VIDEO_CARDS: -* amdgpu */* LINGUAS: -* it_IT it ### USE flag ### */* bash-completion ncurses openssl zlib consolekit ### Python ### */* python_abis: 2.7 3.6 ### ECCEZIONI ### gnome-desktop/gobject-introspection python_abis: -* 3.6 Finito tutto, procedere al sync # cave sync ======== L' avvio ed il kernel ======== Scaricare e scompattare il kernel # cd /usr/src/ Creare il link simbolico # ln -sf /usr/src/linux-4.20 /usr/src/linux # cd linux # make menuconfig # make -j3 && make modules_install install ====== Installare il gestore di init ====== === openrc === nano -w /etc/options.conf ### Senza systemd ### */* providers: -systemd eudev */* -systemd */* parts: openrc Installare openrc: # cave resolve openrc -x # cave resolve eudev -x Rimuovere systemd: # cave uninstall systemd -u '*/*' -x Re-installa tutto il mondo # cave resolve world -x -c ===== GRUB2 ===== Installare grub2: # cave resolve grub -x Utile per riconoscere altri sistemi installati nell' Hard Disk è os-prober # cave resolve os-prober -x appena finito, inseriamolo il settore di avvio # grub-install /dev/sda Creeiamo la configurazione # grub-mkconfig -o /boot/grub/grub.cfg Verifica la configurazione di GRUB 2 # nano /boot/grub/grub.cfg set timeout=10 set default=0 menuentry "Exherbo" { set root=(hd0,2) linux /kernel root=/dev/sda2 } Per generare l' initramfs installare sys-boot/dracut: # kernel-install add kernel-version /boot/vmlinuz-kernel-version Per rimuovere la vecchia versione: # kernel-install remove kernel-version ===== Altre Configurazioni ===== === hostname=== nano -w /etc/hostname mio-hostname * sistemare anche gli host di riferimento, altrimenti i propri pacchetti potrebbero non funzionare come si deve. nano -w /etc/hosts 127.0.0.1 mio-hostname.dominio mio-hostname localhost ::1 localhost * se se ne ha bisogno per l' eventuale firmware della propria scheda wifi, scaricare l' ultimo firmware cave resolve linux-firmware * Settare la password di root passwd * `glibc` only: Install any additional locales you might need. Il locale `en_GB.UTF-8` ed `en_US.UTF-8` sono installati di default. # localedef -i en_US -f ISO-8859-1 en_US # localedef -i it_IT -f UTF-8 it_IT.UTF-8 * And change the LANG environment variable if you prefer a different system wide locale than the default `en_GB.UTF-8` # echo LANG="en_US.UTF-8" > /etc/env.d/99locale * Settiamo la zona oraria, esempio Copenhagen,Denmark,Europe # ln -s /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime Riavvia # reboot ======== Post-installation Tasks ======== * Remove the stage tarball The stage tarball is no longer needed and can be safely removed. * Clean up packages The installation images (stages) contain additional tools which are useful for the installation process but are not part of the system nor world sets but the stages set. You can identify the additional packages using cave show: # cave show stages If you wish to remove them, you can simply use cave purge: # cave purge Alternatively, you can add packages you wish to retain to the world set by using the update-world command. As an example, the following adds gdb to the world set. # cave update-world sys-devel/gdb Or, if you want to add all packages of the stages set to the world set: # cave update-world -s stages * Add a new user for daily use. Some useful groups with a brief description: - Administrative Groups: + adm used for system monitoring tasks (e.g. journalctl) + users traditional group for identifying user accounts (versus system/daemon accounts) + wheel used to indicate permission to perform certain restricted operations (e.g. su) - Device Access Groups: + disk allows access to various disk device nodes + usb allows access to usb device nodes + audio allows access to audio device nodes + video allows access to video device nodes (for accelerated video) # useradd -m -G adm,disk,wheel,cdrom,audio,video,usb,users ${username}