Linux/Tipps/Gentoo

Aus VivaLV
Zur Navigation springen Zur Suche springen

Installation

Von CD

LiveCD booten und alles installieren außer OpenOffice und Gnome.

Hostname setzen

/etc/conf.d/hostname:

HOSTNAME="<Name>"

Einmalig:

hostname <Name>

Gewünschte USE-Flags setzen

Siehe USE-Flags.

Regionale Einstellungen

Quelle: http://www.gentoo.org/doc/en/guide-localization.xml

Deutsche UTF-8 Locale setzen

/etc/env.d/02locale:

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"

System aktualisieren

Repository

emerge --sync

Kernel

Siehe Kernel updaten.

Rest

emerge --update --newuse --deep world
etc-update

xdm installieren

emerge xdm

OpenOffice installieren

OpenOffice benötigt zum Compilieren sehr lange und sehr viel Platz. Also besser das Binärpaket installieren:

emerge openoffice-bin

Runlevels ähnlich Fedora/Suse

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

KDE installieren

KED 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.

emerge kdebase-meta
emerge kde-i18n

Dann Sprache "Deutsch" im KDE Control Center hinzufügen.

Wenn man weitere Meta-Pakete (z.B. kdeaddons) installieren will, dann muss "-meta" angehängt werden, z.B.:

emerge kdeaddons-meta

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

VNC

/etc/portage/package.use:

net-misc/vnc server

Dann:

emerge vnc

Firefox/Thunderbird

Damit nur englische Sprache installiert wird, in /etc/portage/package.use:

www-client/mozilla-firefox -linguas_de
mail-client/mozilla-thunderbird -linguas_de

Dann:

emerge mozilla-firefox
emerge mozilla-thunderbird

ivtv

http://ivtvdriver.org/index.php/Howto:Gentoo

mysql

Bei Verwendung von MythTV, in /etc/portage/package.use:

dev-db/mysql latin1

Dann:

emerge mysql
emerge --config mysql
/etc/init.d/mysql start
rc-update add mysql default

Falls Runlevel console angelegt:

rc-update add mysql console

mythtv

emerge mythtv
passwd mythtv

Programme installieren

USE-Flags

Dateien

  • vom Profile vorgegebene globale USE-Flags: /etc/make.profile/make.defaults
  • eigene USE-Flags: /etc/make.conf
  • Paket-spezifische USE-Flags: /etc/portage/package.use

USE-Flag setzen:

<Flag>

USE-Flag löschen:

-<Flag>

LINGUAS-Flag löschen (Beispiel: de):

-linguas_de

Abfragen

Die effektiv aktiven USE-Flags anzeigen:

emerge --info

Welche Pakete verwenden ein bestimmtes USE-Flag?

equery hasuse <Flag>

Welche USE-Flags verwendet ein bestimmtes Paket?

equery uses mysql

Sonstiges

Nach Änderung der USE-Flags die betroffenen Pakete neu compilieren und zusätzlich benötigte Pakete installeren:

emerge --update --newuse --deep world

Editor für USE-Flags:

emerge ufed

Repository aktualisieren

emerge --sync

Suchen

emerge --search <String>
emerge --searchdesc <String>

Installieren

emerge <Paket>

Updaten

emerge --update <Paket>

Vorcompilierte Pakete bevorzugen

Quelle und Liste der BINHOSTs: http://gentoo-wiki.com/TIP_Using_PORTAGE_BINHOST

Vorbereitung in /etc/make.conf (Beispiel):

PORTAGE_BINHOST="https://e.ututo.org.ar/i686/"

Dann immer beim Installieren -kg angeben:

emerge -kg <Paket>

Bei vom Hersteller vorcompilierten Versionen:

emerge <Paket>-bin

Bestimmte Version installieren

emerge =<Paket>-<Version>

Maskierte Pakete freigeben

/etc/portage/package.keywords:

<Bereich>/<Paket>

bzw.

<Bereich>/<Paket> ~x86

Oder /etc/portage/package.unmasked:

<Bereich>/<Paket>

Kernel updaten

Einmalig:

emerge genkernel
emerge module-rebuild

Dann:

emerge gentoo-sources
genkernel all
module-rebuild rebuild
update-modules force

Dann /boot/grub/menu.lst erweitern und neu booten.

Falls die .config selbst modifiziert wurde, muss genkernel mit --no-clean aufgerufen werden.

Alles updaten

emerge --update --deep world

Mit Rückfrage:

emerge --update --ask --deep world

Nach Änderung der USE-Flags

emerge --update --ask --deep --newuse world

Config-Files nach Updates mergen

etc-update

Reste von Abbrüchen löschen

rm -rf /var/tmp/portage/<Bereich>/<Paket>

Security-Fixes

Quelle: http://www.gentoo.org/doc/en/security/security-handbook.xml?part=1&chap=14

Prüfen, ob es nicht installierte Security-Fixes gibt:

glsa-check -d affected

oder

glsa-check -t all

Einspielen eines bestimmten Fixes simulieren:

glsa-check -p <Fix>

Einen bestimmten Fix installieren:

glsa-check -f <Fix>

Abfragen

Welche Dateien enthält ein Paket?

equery files <Paket>

Welche Pakete hängen von einem Paket ab?

equery depends <Paket>

Welche Pakete sind installiert?

equery list <String>

Zu welchem Paket gehört eine Datei?

equery belongs <Datei>

Wenn dabei der Fehler "Unrecognized CONTENTS entry on line 1" auftritt, dann stimmt mit einem Paket etwas nicht. Dies kann man herausfinden mit:

strace emerge belongs <Datei> >log.txt 2>&1

Und dann nach dem Fehler in log.txt suchen. Der Fehler liegt in der Datei /var/db/pkg/<Bereich>/<Paket>/CONTENTS. Um den Fehler zu beheben das betroffene Paket deinstallieren bzw. neu installieren.

Wieviel Compilierzeit benötigte ein Paket?

qlop -tH <Paket>

Deinstallieren

emerge --unmerge <Paket>

Dabei werden Abhängigkeiten nicht berücksichtigt! Deswegen vorher mit equery depends <Paket> prüfen!

Unnötige Pakete löschen

Nach Deinstallation von Paketen gibt es meistens damals mitinstallierte Pakete, die nicht mehr benötigt werden. Diese kann man löschen mit:

emerge --depclean
revdep-rebuild -i

Abhängigkeiten prüfen und reparieren

revdep-rebuild -i

Tarballs löschen

rm /usr/portage/distfiles/<Name>

oder http://elusseau.free.fr/index.php/en/page/2

Zusätzliche Repositories einbinden

Vorbereitung

emerge eix
emerge layman

/etc/make.conf:

source /usr/portage/local/layman/make.conf

Externe Programmliste updaten

update-eix-remote update

Standard-Programmliste für eix aktualisieren

update-eix

Suchen

eix <Paket>

Einbinden

layman -a <Repository>

Externe Programme in lokales Repository legen

Quelle: http://gentoo-wiki.com/HOWTO_Installing_3rd_Party_Ebuilds

Vorbereitung

/etc/make.conf:

PORTDIR_OVERLAY="/usr/local/portage"

Durchführung

mkdir -p /usr/local/portage/<Bereich>/<Paket>
cd /usr/local/portage/<Bereich>/<Paket>
wget <ebuild>

/etc/portage/package.keywords:

<Bereich>/<Paket>

ebuild <Paket>-<Version>.ebuild digest

Programmverfügbarkeit

Standardrepository

  • mozilla-firefox
  • mozilla-thunderbird
  • ktimemon (kicker-applets)
  • equery (gentoolkit)
  • kdebase-meta
  • win32codecs
  • grip
  • jdk
  • quadkonsole (masked)
  • gaim
  • mplayer
  • kaffeine
  • wine
  • ntp
  • jpilot
  • procmail
  • spamassassin
  • uw-imap
  • ksensors
  • mythtv
  • avidemux
  • amule
  • nxserver-freeedition
  • xdm
  • htop
  • vnc ("net-misc/vnc server" -> /etc/portage/package.use)
  • kuroo
  • slocate
  • mythtv
  • hplip
  • mysqlnavigator

Zusätzliche Repositories

  • kmediafactory

Möglicherweise interessante Programme

  • kentoo

Kernel modifizieren

Die .config in /usr/src/linux mit eine der folgenden Möglichkeiten modifizieren:

  • per Hand/Editor
  • make menuconfig

Dann:

genkernel --no-clean all


USE-Flags: "java"?