Gentoo Installation
Beginn einer Gentoo-Installation
32bit: Booten mit einem 32bit-Linux (Gentoo-Live-CD, Ubuntu, Knoppix, Puppy Linux, SuSE ...)
64bit: Booten mit einem 64bit-Linux (Sabayon), z.B. von USB-Stick
sudo su - mkdir /mnt/gentoo/ mount /dev/sda7 /mnt/gentoo/ mount /dev/sda1 /mnt/gentoo/boot/ mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev mount -o bind /dev/pts/ /mnt/gentoo/dev/pts mount -o bind /sys /mnt/gentoo/sys cp -v /etc/resolv.conf /mnt/gentoo/etc/ chroot /mnt/gentoo/ /bin/bash
etc-update && env-update && source /etc/profile
hdparm / sdparm Optimierung
hdparm -c3d1u1W1m16A1a254X71 /dev/hda blockdev ... /dev/sda
cd / wget URL/sstage3-i686*.tar.bz2 && tar xvjpf stage3-i686*.tar.bz2 wget URL/portage-latest.tar.bz2 && tar -xvjpf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
Timezone anpassen
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Make Vorgaben anpassen (Beispiel), Strg+X Speichern+Exit, Strg+K/Strg+U (Zeile in Zwischenablage "entfernen"/aus ZA einfügen)
nano /etc/make.conf ...
Delta-Downloads (nur Unterschiede/Patches laden und daraus aktuelles Ebuild erzeugen, spart Downloadzeit)
emerge -v getdelta xdelta
In /etc/make.conf muß diese Zeile hinzu:
FETCHCOMMAND="/usr/bin/getdelta.sh \"\${URI}\" \"\${FILE}\""
Zur Beschleunigung bei erneutem Kompilieren (ccache):
emerge -v ccache chown -cR portage:portage /var/tmp/ccache
siehe ccache-Umgebungsvariablen in etc-common
glibc locales, reduzieren auf die allernotwendigsten in /etc/locale.gen
grub installieren, Kernel compilieren und nach /boot/ kopieren, /boot/grub/menu.lst und /etc/fstab anpassen
Empfohlene Packages
eix esearch gentoolkit htop mc portage-utils
Fortsetzung, auch einer vormals begonnenen Gentoo-Installation
etc-update && env-update && source /etc/profile
Portage-Packetinformationen synchronisieren (mit Infos zu den Neuerungen, eupdatedb und update-eix)
/usr/local/bin/update-gentoo
alternativ
emerge --sync -v
optional für emerge --sync (nur tageweise):
emerge -v emerge-delta-webrsync && emerge-delta-webrsync
Portage Packetinstallierer aktualisieren
emerge -1v portage
Nach einem Portage-Sync (siehe /usr/local/bin/update-gentoo), neue Pakete auflisten, downloaden und einspielen:
emerge -DNuvp world && emerge -DNuvf world && emerge -DNuv world
Nach Upgrade einer gcc/kernel-Version, bzw. nach Umstellung von make.conf Einstellungen, komplett das System neu übersetzen:
emerge -ev world | tee emerge_ev.log
Langwierig dauert eine Neuübersetzung mit FEATURES="test..." in der make.conf, hilft aber instabile Optimierungen auszufiltern.
Speziell für gcc-Upgrades (ohne -p für reale Umsetzung):
ccache -Cczs gcc-config -l gcc-config NEUE-GCC-NUMMER fixpackages emerge --prune -p emerge --depclean -p revdep-rebuild -p
Den gewünschten Linux-Kernel installieren:
emerge -v gentoo-sources
Cflags
touch /tmp/null.c; gcc -c -march=native -v /tmp/null.c 2>&1 | grep march | egrep --color -- '\s-m\S+|--param \S+'
Filesystem
- ssd fs 1, ssd fs 2
- hints: notail (xfs, reiserfs); discard (ssd); noatime; nodiratime; data=writeback,commit=60,nobarrier; cfq/noop scheduler at boottime (rc.local)
# echo deadline > /sys/block/sda/queue/scheduler # echo noop > /sys/block/sdb/queue/scheduler # echo cfq > /sys/block/sdc/queue/scheduler
Tips
- Portage world Datei -> /var/lib/portage/world
- Per SSH screen nutzen, jederzeit weiterlaufende Kompilierung trotz Verbindungstrennung möglich
- Swiftweasel als optimierter und vollkompatibler Firefox-Ersatz
- Multi-Core/Hyperthreading Systeme mit Dienst "irqbalance" nutzen (bessere Interrupt-Verteilung) und ab Kernel 2.6.35 Netzwerk-SMP-Balancing
- Stromsparen mittels "powertop", Debug-Messages für Prüfung im Kernel aktivieren, später rausnehmen, den Anweisungen von Powertop folgen
- SSD und TRIM Option -> 1 2 - noatime,nodiratime,discard (xfs4)
- SSD und noop-Scheduler (per IO Gerät einstellbar -> "/sys/class/block/sda/queue/scheduler" Scheduler
- "find / -newer /etc/mtab" (since last mount)
- maximize performance from Arch Linux
- sshfs debian and sshfs ubuntu
- SSH tips and tricks
- OpenSSL certificate tips (common used commands)
- Tar tricks, moving folders without archive over network, faster as scp...
- Samba-Wiki ( Windows 7, Samba, SMB optimized )