Von CD
LiveCD booten und alles installieren außer OpenOffice und Gnome.
Hostname setzen
Wenn der Hostname nicht stimmt, dann /etc/conf.d/hostname ändern:
HOSTNAME="<Name>"
Dann:
hostname <Name>
Domäne setzen
Die Domäne wird entweder (bei Verwendung von DHCP) durch den DHCP-Server gesetzt oder in /etc/hosts folgendermaßen:
127.0.0.1 <Rechnername>.<Domäne> <Rechnername> localhost
Die Reihenfolge ist hier wichtig!
Netzwerk
/etc/conf.d/net::
config_eth0=( "192.168.0.6 netmask 255.255.255.0 broadcast 192.168.0.255" ) routes_eth0=( "default via 192.168.0.1" ) dns_domain="localdomain" dns_servers="192.168.0.1"
Dann:
/etc/init.d/net.eth0 restart
Gewünschte USE-Flags setzen
Siehe USE-Flags.
Compiler-Flags setzen
Quelle: http://netslaughters.de/index.php/?p=52
etc/make.conf:
CFLAGS="-march=i686 -Os -pipe -fomit-frame-pointer -fno-ident" CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden" LDFLAGS="-Wl,-O1"
Bei -march sollte man bei Pentium-M i386 oder besser pentium-m setzen.
Regionale Einstellungen
Quelle: http://www.gentoo.org/doc/en/guide-localization.xml und http://de.gentoo-wiki.com/Deutsche_Lokalisierung
glibc Locales generieren
/etc/locale.gen:
de_DE@euro ISO-8859-15 de_DE.UTF-8 UTF-8 de_DE ISO-8859-1 en_US ISO-8859-1 en_US.UTF-8 UTF-8
Dann:
locale-gen
Deutsche UTF-8 Locale setzen
/etc/env.d/02locale:
LANG="de_DE.UTF-8" LC_ALL="de_DE.UTF-8" GDM_LANG="de_DE.UTF-8"
Dann:
env-update source /etc/profile
Kontrolle:
locale
Dann X-Server neu starten.
Verfügbare Sprachen definieren
/etc/make.conf:
LINGUAS="de en"
Zeitzone setzen
/etc/conf.d/clock:
TIMEZONE="Europe/Berlin"
Dann:
emerge --config timezone-data
Hardwareclock
Wenn beim Shutdown die Hardwareclock neu gesetzt werden soll, dann muss in /etc/conf.d/clock gesetzt werden:.
CLOCK_SYSTOHC="yes"
Console Keymap
/etc/conf.d/keymaps:
KEYMAP="de-latin1-nodeadkeys"
X Keymap
/etc/X11/xorg.conf:
Section "InputDevice" Identifier "Keyboard1" ... Option "XkbLayout" "de" Option "XkbVariant" "nodeadkeys"
Compile-Cache aktivieren
Quelle: http://de.gentoo-wiki.com/Emerge_beschleunigen#Ccache
emerge -av ccache
etc/make.conf:
FEATURES="ccache" CCACHE_SIZE="2G"
Dann:
cd /var/tmp mkdir ccache chown portage:portage ccache chmod 775 ccache echo "CCACHE_DIR=\"/var/tmp/ccache\"" >> /etc/env.d/99local env-update source /etc/profile
C-Compiler mit Optimierung neu installieren
emerge glibc binutils gcc source /etc/profile emerge glibc binutils gcc source /etc/profile
System aktualisieren
Repository
emerge --sync
Portage
emerge --update portage
Kernel
Siehe Kernel upgraden.
gentoolkit installieren
emerge gentoolkit
Alter C++ Compiler für ältere Pakete
emerge -1 libstdc++-v3
Rest
emerge --update --newuse --deep world etc-update revdep-rebuild
xdm installieren
emerge xdm
Video/Xorg
Am Beispiel NVidia.
Grafikkarte und Eingabegeräte in /etc/make.conf konfigurieren:
VIDEO_CARDS="nvidia" INPUT_DEVICES="keyboard mouse joystick"
Von dieser Einstellung abhängige Pakete neu compilieren. Xorg wird automatisch den NVidia Binary-Treiber mitinstallieren.
Die Datei /etc/modules.d/nvidia wird dabei automatisch generiert.
NVidia OpenGL auswählen:
eselect opengl set nvidia
Rudimentäre xorg.conf generieren:
Xorg -configure
Und testen:
X -config /root/xorg.conf.new
Audio
Quelle: http://www.gentoo.org/doc/en/alsa-guide.xml
Kernel modifizieren, dabei ALSA aktivieren und den Treiber für die verwendete Soundkarte als Modul compilieren, siehe hier.
Soundkarte in /etc/make.conf konfigurieren:
ALSA_CARDS="emu10k1"
Dann:
emerge alsa alsa-libs rc-update add alsasound boot
Die Datei /etc/modules.d/alsa wird dabei automatisch generiert. Dann neu booten.
Wenn das Modul für die Soundkarte nicht automatisch von udev geladen wird:
alsaconf
Evtl. Stummschaltung aufheben:
alsamixer
Wenn ein Programm (z.B. MythTV) das Device ALSA:default nicht findet, mit /dev/dsp aber funktioniert, dann legt man im Homeverzeichnis die Datei .asoundrc an:
pcm.!default { type hw card 0 } ctl.!default { type hw card 0 }
Die Nummer der Karte kann man herausfinden mit:
aplay -l
Wenn -arts in den USE-Flag steht, funktioniert der KDE Sounddaemon arts nicht. Das KDE Sound-System muss also im KDE Kontrollzentrum abgeschaltet werden. Dafür dort bei "Systemnachrichten/Wiedergabe-Einstellungen" einen externen Abspieler einstellen, z.B. /usr/bin/mplayer oder /usr/bin/ogg123 von den vorbis-tools (falls installiert).
LIRC
Quelle: http://gentoo-wiki.com/HOWTO_LIRC
/etc/make.conf:
LIRC_DEVICES="serial"
Dann:
emerge lirc modules-rebuild populate echo lirc_serial >> /etc/modules.autoload.d/kernel-2.6 rc-update add lircd default
/etc/modules.d/lirc:
options lirc_serial irq=4 io=0x3f8 type=4 pre-install lirc_serial setserial /dev/ttyS0 uart none
Dann neu booten.
/etc/lircd.conf von alter Installation übernehmen oder neu erstellen. Dann:
/etc/init.d/lircd restart
Fernbedienung prüfen:
irw
Runlevels ähnlich Fedora/Suse (optional)
Standardrunlevel auf 5 ändern
/etc/inittab:
id:3:initdefault:
ändern nach
id:5:initdefault:
Runlevel von X auf 5 ändern
- Neuen Runlevel "console" (3) anlegen in /etc/inittab:
l3:3:wait:/sbin/rc default
ändern nach
l3:3:wait:/sbin/rc console
Runlevel "default" kopieren nach "console" und xdm darin entfernen
cp -a /etc/runlevels/default /etc/runlevels/console rc-update -d xdm console
Ab sofort muss man Services immer in "default" und "console" aktivieren!
KDE installieren
Hinweis
KDE kann mit den (bei KDE üblichen) monolithischen Paketen (kdebase, kdemultimedia, ...) oder mit einzelnen Programmen installiert werden, die man allerdings auch wieder mit Meta-Paketen in Gruppen installieren kann. Letzteres wird bevorzugt. Man muss dann aber bei Gruppen auch später immer wieder die Meta-Pakete und nicht die monolithischen Paketen installieren.
Basisinstallation
emerge kdebase-meta kde-i18n kdemultimedia-meta
Alles installieren
emerge kde-meta
Sprache
Sprache "Deutsch" im KDE Control Center hinzufügen, wenn nicht schon vorhanden.
Weitere Programme installieren
Wenn man weitere Meta-Pakete (z.B. kdeaddons) installieren will, dann muss "-meta" angehängt werden, z.B.:
emerge kdeaddons-meta
Gleicher Look in KDE- und in GTK(Gnome)-Programmen mit QtCurve
Quelle: http://gentoo-wiki.com/HOWTO_Same_look_for_QT,_GTK_2_and_GTK_1_apps
/etc/portage/package.keywords:
x11-themes/qtcurve ~x86 x11-themes/gtk-engines-qtcurve ~x86
Dann:
emerge qtcurve gtk-engines-qtcurve cp /usr/share/themes/QtCurve/gtk-2.0/gtkrc /etc/gtk-2.0/
Dann in Kontrollzentrum/Erscheinungsbild/Stil "QtCurve" auswählen.
Displaymanager ändern nach kdm
Der Displaymanager wird in /etc/conf.d/xdm und/oder /etc/rc.conf festgelegt:
DISPLAYMANAGER="kdm"
NFS
emerge nfs-utils /etc/init.d/nfs start rc-update add nfs default
Falls Runlevel console angelegt:
rc-update add nfs console
Drucker (HP)
Quelle: http://gentoo-wiki.com/HPLIP.
Folgende USE-Flags in /etc/make.conf hinzufügen:
ppds foomaticdb fax scanner
Evtl. noch parport für parallele Drucker oder snmp für Netzwerkdrucker.
Dann:
emerge --update --newuse --deep world emerge cups hplip /etc/init.d/hplip start /etc/init.d/cupsd start rc-update add hplip default rc-update add cupsd default
Dann den HP Device Manager aus dem KDE-Menü starten und Device/Setup New Device aus dem Menü anwählen. Weitere Vorgehensweise siehe hier.
Mit http://localhost:631/ kommt man zur Web-GUI von CUPS.
Drucken mit gimp
/etc/portage/package.use:
media-gfx/gimp gimpprint
Dann:
emerge gimp-print gimp
Samba
Quelle: http://gentoo-wiki.com/HOWTO_Setup_Samba
Falls man eine Web-Admin-GUI ("Swat") für Samba möchte, in /etc/portage/package.use:
net-fs/samba swat
Dann
emerge samba
Dann /etc/samba/smb.conf anlegen:
[global] workgroup = <Name der Arbeitsgruppe> printcap name = cups disable spoolss = Yes show add printer wizard = No printing = cups cups options = raw print command = lpq command = %p lprm command = [printers] comment = All Printers path = /var/tmp create mask = 0600 printable = Yes browseable = No [homes] valid users = %S read only = No browseable = No
Ein Read-Only Share hinzufügen (Beispiel):
[work] path = /work
Dann Passwort für root setzen:
smbpasswd -a root
Für jeden weiteren Samba-Benutzer:
smbpasswd -a <Benutzer>
Dann:
/etc/init.d/samba start rc-update add samba default
Swat
emerge xinetd
/etc/xinetd.d/swat:
disable = no
Dann:
/etc/init.d/xinetd start rc-update add xinetd default
Dann kommt man mit http://localhost:901/ zur Swat-GUI.
Beschreibung einer minimalen Mail-Konfiguration, sodass Mails an root (z.B. von Logwatch) an einen Bemutzer auf einem anderen Rechner (z.B. auf dem Mailserver) umgeleitet werden.
/etc/mail/aliases:
root: <Benutzer>@<Rechner> operator: <Benutzer>@<Rechner>
Dann:
newaliases
Dann:
emerge --unmerge ssmtp emerge postfix
/etc/postfix/main.cf:
mydomain = <Domäne> myhostname = <Hostname>.<Domäne> smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination disable_dns_lookups = yes
Dann:
/etc/init.d/postfix start rc-update add postfix default
Komplettes Mailsystem einrichten, siehe z.B. hier.
D-Bus
emerge dbus revdep-rebuild rc-update add dbus default
HAL
rc-update add hald default
NTP
emerge ntp
Optional /etc/conf.d/ntp-client und /etc/ntp.conf anpassen (Server ändern).
rc-update add ntp-client default rc-update add ntpd default /etc/init.d/ntp-client start /etc/init.d/ntpd start
Prüfen:
ntpq -c peers
VNC
/etc/portage/package.use:
net-misc/vnc server
Dann:
emerge vnc
autofs
Kernel modifizieren und dabei autofs aktivieren.
Nach Reboot:
emerge autofs /etc/init.d/autofs start rc-update add autofs default
Splashscreen bei Boot/Shutdown
Quelle: http://gentoo-wiki.com/HOWTO_gensplash
/etc/portage/package.use:
media-gfx/splashutils mng
Dann:
emerge splashutils splash-themes-livecd
Dann:
genkernel --splash=livecd-2007.0 --no-clean all
oder (kleinere initrd):
genkernel --splash=livecd-2007.0 --splash-res=1024x768 --no-clean all
/dev/tty1 beim Booten verfügbar machen:
mkdir /temp mount --bind / /temp mknod /temp/dev/tty1 c 4 1 umount /temp rmdir /temp
In /boot/grub/menu.lst folgende Kernelparameter hinzufügen:
vga=791 splash=silent,theme:livecd-2007.0 console=tty1 quiet
Dann Kernel modifizieren und dabei Optionen für Splashscreens aktivieren.
TrueType-Fonts
- gewünschten Font downloaden (Liste siehe http://www.slovo.info/unifonts.htm)
- Font entpacken nach /usr/share/fonts/<Fontname>
- Font-Cache aktualisieren
Beispiel für Arial:
mkdir temp cd temp wget http://prdownloads.sourceforge.net/corefonts/arial32.exe cabextract arial32.exe mkdir /usr/share/fonts/ttf-arial cp *.TTF /usr/share/fonts/ttf-arial/ fc-cache cd .. rm -rf temp
Weitere Informationen: http://gentoo-wiki.com/HOWTO_Xorg_and_Fonts
Bluetooth
Quelle: http://www.gentoo.org/doc/en/bluetooth-guide.xml
Vorbereitung
In /etc/make.conf das bluetooth USE-Flag hinzufügen.
Kernel modifizieren und dabei die benötigen Optionen aktivieren, siehe hier.
Mit Bluez 2.x
emerge bluez-libs bluez-utils bluez-firmware kdebluetooth
/etc/bluetooth/hcid.conf:
options { pin_helper /etc/bluetooth/pin-helper; } device { name "BlueZ (%h)"; }
/etc/bluetooth/pin:
<PIN>
Dann:
/etc/init.d/bluetooth restart
Dann neu anmelden.
Mit Bluez 3.x (unstable)
/etc/portage/package.keywords:
net-wireless/bluez-libs ~x86 net-wireless/bluez-utils ~x86 net-wireless/kdebluetooth ~x86
Dann:
emerge bluez-libs bluez-utils bluez-firmware kdebluetooth
/etc/bluetooth/hcid.conf:
options { #passkey "BlueZ"; } device { name "BlueZ (%h)"; }
Dann:
/etc/init.d/bluetooth restart
Dann neu anmelden.
Kontrolle
hciconfig -a
Autostart
rc-update add bluetooth default
Benutzer für rfcomm
Benutzer, die rfcomm verwenden wollen, müssen in der Gruppe uccp sein:
usermod -a --groups uucp <Benutzer>
Mit Palm ins Internet über Bluetooth
Quellen: http://gentoo-wiki.com/HOWTO_Iptables_for_newbies + http://forums.gentoo.org/viewtopic.php?t=121109 + http://www.metacon.ca/bcs/view.php?page=bluetooth
Im Kernel muss NAT-Support aktiviert sein, siehe http://gentoo-wiki.com/HOWTO_Iptables_for_newbies#Kernel_Support.
emerge ppp iptables
/etc/ppp/options.rfcomm0:
# You usually need this if there is no PAP authentication noauth # do not use modem control lines we aren't using a real serial line local # do not determinate local ip from hostname noipdefault # usefull ARP proxing proxyarp # Your own IP Address and the IP Address of the remote system 192.168.0.2:192.168.0.47 # And the netmask netmask 255.255.255.0 # dns ms-dns 192.168.0.1 # this is required for the non standard microsoft PPP negotiation connect "sleep 2; echo -n CLIENTSERVER"
Dann (einmalig und auch in /etc/conf.d/local.start eintragen):
echo 1 >/proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE dund --listen
Notebook mit Centrino-Chipsatz
Touchpad-Treiber
emerge synaptics
WLAN 2200bg
Quelle u.a.: http://gentoo-wiki.com/HARDWARE_ipw2200
SSID
Der Router muss die SSID senden!
ipw2200 im Kernel aktivieren
Kernel modifizieren und dabei ipw2200 aktivieren.
module-rebuild rebuild update-modules force
Pakete installieren
emerge ipw2200-firmware wireless-tools wpa_supplicant
ipw2200 laden
modprobe ipw2200
Device festlegen
Mit iwconfig das Device nachschauen und gegebenenfalls in /etc/udev/rules.d/70-persistent-net.rules ändern und neu booten.
wpa_supplicant
<SSID>, <PASSWORT> und <DEVICE> entsprechend ersetzen.
/etc/wpa_supplicant/wpa_supplicant.conf:
#WPA network={ ssid="<SSID>" scan_ssid=1 psk="<PASSWORT>" priority=8 }
/etc/conf.d/net:
routes_<DEVICE>=( "default via 192.168.0.1" ) iface_<DEVICE>="192.168.0.6 broadcast 192.168.0.255 netmask 255.255.255.0" modules=( "wpa_supplicant" ) wpa_supplicant_<DEVICE>="-D wext -c /etc/wpa_supplicant/wpa_supplicant.conf" wpa_timeout_eth1=60
Dann:
ln -s /etc/init.d/net.lo /etc/init.d/net.<DEVICE> rc-update add net.<DEVICE> default /etc/init.d/net.<DEVICE> start
Debugging
wpa_supplicant -Dwext -i<DEVICE> -c /etc/wpa_supplicant/wpa_supplicant.conf -w -dd
Verhindern, dass Coldplug das WLAN startet und es sich dann mit einem beliebigen AP verbindet
/etc/conf.d/rc:
RC_PLUG_SERVICES="!net.<DEVICE>"
WLAN und LAN beim Booten nicht automatisch starten
/etc/conf.d/rc:
RC_PLUG_SERVICES="!net.*"
CPU-Stepping
Kernel modifizieren und dabei folgende Kernel-Optionen ändern:
- Power Management Options:
- [*] Power Management Support
- ACPI( Advanced Configuration and Power Interface ) Support:
- [*] ACPI Support
- [*] AC Adapter
- [*] Battery
- <*> Processor
- CPU Frequency Scaling:
- [*] CPU Frequency scaling
- <*> 'performance' governor
- <*> 'powersave' governor
- <*> 'ondemand' cpufreq policy governor
- <*> 'conservative' cpufreq governor
- <*> CPU frequency table helpers
- <*> ACPI Processor P-States driver
- <*> Intel Enhanced SpeedStep
module-rebuild rebuild update-modules force
Reboot.
emerge cpufrequtils acpid rc-update add acpid default
/etc/conf.d/local.start:
cpufreq-set -d 600MHz -u 1.50GHz -g ondemand
Audio-Support für ASUS M6Ne
/etc/make.conf:
ALSA_CARDS="intel8x0"
Dann:
emerge alsa-lib alsa-utils rc-update add alsasound boot
/etc/modules.d/alsa (nur notwendig, wenn das Modul nicht schon automatisch geladen wird):
alias snd-card-0 snd-intel8x0
Dann:
modules-update /etc/init.d/alsasound start amixer set Master 60% unmute amixer set PCM 60% unmute amixer set Headphone 60% unmute
Test:
aplay /usr/share/sounds/alsa/Noise.wav
Powersave und Suspend to RAM mit ASUS M6Ne
Voraussetzung: D-Bus und HAL müssen installiert sein und laufen. klaptopdaemon darf nicht installiert sein!
Bootparameter "acpi_sleep=s3_bios" in /boot/grub/menu.lst hinzufügen.
emerge powersave kpowersave hibernate-script rc-update add powersaved default
/etc/powersave/events:
EVENT_BUTTON_LID_CLOSED="hibernate_ram"
/usr/libexec/powersave/scripts/hibernate_ram:
#!/bin/bash # parameters: # - $1 event type # - $2 current scheme # - $3 ACPI event line # - $4 Event-ID. Needed for $SCRIPT_RETURN # # source helper_functions to get $PATH, $SCRIPT_RETURN, EV_ID (among others) . /usr/lib/powersave/scripts/helper_functions # Note: this sets a trap on "EXIT", so you must exit the script via the # (also provided) EXIT function after calling $SCRIPT_RETURN # If you don't call EXIT, the trap will call $SCRIPT_RETURN with return code 1 # hibernate-ram # always call $SCRIPT_RETURN before exiting: $SCRIPT_RETURN $EV_ID 0 "hibernate_ram script succeeded" EXIT 0
Dann:
chmod +x /usr/libexec/powersave/scripts/hibernate_ram /etc/init.d/powersave restart
Danach sollte in der Taskleiste ein Batteriesymbol sein und beim Schließen des Deckels sollte Suspend to RAM gemacht werden. "Suspend to RAM" vom Menü (Symbol in der Taskleiste) von kpowersave funktioniert jedoch nicht, deswegen kann man das disablen in /etc/powersave/sleep:
DISABLE_USER_SUSPEND2RAM="yes"