Auf dieser Seite: http://gentoo-portage.com/ findest du viele Informatonen, zu den verschiedenen Versionen.
Zuerst brauchst du den neusten Quell-Code:
# emerge gentoo-sources
Dann wechseln wir in das Verzeichnis:
# cd /usr/src/linux
… und erstellen die Konfiguration.
Wichtig: Es müssen alle Dateisysteme und Treiber im Kernel drinn sein, welche nötig sind um das System zu starten. Fehlt etwas während dem Booten, kann das vielfältige Folgen haben.
# make menuconfig
Ist die Konfiguration in Ordnung, wird der Kern mit 'make' kompiliert.
# make # make modules_install
Zum Schluss muss der Kernel noch kopiert werden:
# cp arch/x86_64/boot/bzImage /boot/kernel-2.6.XX-gentoo-rY
Wird dieser Schritt übersprungen, werden die Änderungen nicht übernommen.
Es empfielt sich die Beispiele im GRUB-Artikel durchzulesen.
Wichtig: sollten Fehler bezüglich des „Nichtfindes“ des Root-Devices auftreten, lohnt es sich
'sdaX' durch 'hdaX' zu ersetzen.Will man nicht bei jedem Start die nötigen Treiber laden oder suchen lassen (es braucht schliesslich Zeit), kann man die Module manuell in der autoload-Konfig eintragen:
# cp /etc/modules.autoload.d/kernel-2.6 /etc/modules.autoload.d/kernel-2.6.original
# lsmod | cut -f 1 -d " " >> /etc/modules.autoload.d/kernel-2.6
'lsmod' das Wort 'Module' steht, muss man es vonhand entfernen bzw. auskommentieren: # nano /etc/modules.autoload.d/kernel-2.6
title Gentoo Linux 2.6.30-r5 (static) uuid 28af12ac-1234-abcd-bf42-0123456789ab kernel /boot/kernel-2.6.30-gentoo-r5 root=/dev/sda3
Muss der Kernel mehrfach kompiliert werden, weil z.B. nur die nötigsten Treiber installiert werden sollen, kann es helfen die temporären Dateien zu löschen. Dazu muss man im Ordner mit dem Source-Code sein (meistens /usr/src/linux) und dann folgenden Befehl abschicken:
# make clean
Bei anderen Distributionen ist es vergleichsweise einfach, die neusten Versionen zu installieren. Unter Gentoo müssen alle Pakete jedesmal neu kompiliert werden. Dies ist jedoch meistens nicht notwendig. Nach einem Kernel-Update ist es jedoch zu empfehlen:
# emerge --sync /* ... Viel Text & ein paar Statusmeldungen */
Jetzt musst du entscheiden, ob du nur die Programme, welche du installiert hast neukompilieren willst,
# emerge --update --ask world
oder ob du alles, also jedes einzelne Softwarepaket, welches mit emerge installiert worden ist, neukompilieren willst:
# emerge --update --deep --ask world
Meine persönlich Empfehlung:
# emerge -aDu --newuse world
In der Datei '/etc/udev/rules.d/70-persistent-net.rules' gelistete Module können umbenannt werden.
Die Einstellungen müssen in der Datei '/etc/sysctl.conf' vorgenommen werden und sollten mit den iptables gesichert werden.
Zuerst, der grafische Installer ist in dieser Version noch nicht vollstaendig ausgereift.
Zuerst brauchen wir ein ISO von Gentoo.org. Das ISO fuer die amd64-Architektur findest du hier: http://bouncer.gentoo.org/fetch/gentoo-2008.0-livecd/amd64/
Im naechsten Schritt wird das Abbild/Image auf eine CD gebrannt oder mit etwas hoeherem Aufwand auf einen Memorystick kopiert. Zum Schluss musst du den PC nur noch neustarten.
Nach dem Booten brauchst du zuerst ein Terminal (in Menue oder unten in der Startliste. Dann muessen wir zwei Befehle ausfuehren, welche wegen eines Fehlers im Startprozess (genauer in der Datei '/etc/conf.d/local.start') noch nicht ausgefuehrt worden sind (Bug 230998):
sudo cp /mnt/cdrom/extlinux/gentoo /boot/`uname -r` sudo cp /mnt/cdrom/extlinux/gentoo.igz /boot/initrd sudo cp /usr/livecd/System.map* /boot
Um die Installation zu starten gibst du am einfachsten noch folgenden Befehl ein und folgst dann den Anweisungen:
sudo installer-dialog
Wenn die Meldung 'Install done!' erscheint, musst du nur noch neustarten und die Installationsmedien entfernen.
Dieses Tutorial ist noch nicht fertig! Wer es benutzen möchte, sollte zuerst ein Backup von allem machen, was ihm/ihr lieb ist.
Wenn du solche eingriffe in deinen Computer machst, solltest du zumindest wissen, was du tust. Ich schreibe das hier nach dem Motto 'Learning by Doing'! Hab keine Angst es auch Mal zu probieren. Das was du hier siehst ist mein zweite Versuch. Den ersten habe ich ausversehen verschossen.
Greets The TUX! 8.7.08
http://www.gentoo.org/doc/de/handbook/handbook-x86.xml
… kommt noch …
mount /dev/sda8 /mnt mount -t proc none /mnt/proc mount -o bind /dev /mnt/dev chroot /mnt /bin/bash
env-update source /etc/profile export PS1="(chroot) $PS1"
passwd
echo 'de_CH.UTF-8 UTF-8' >> /etc/locale.gen locale-gen
TIMEZONE auf 'Europe/Zurich' setzen: nano /etc/conf.d/clock
cp /usr/share/zoneinfo/Europe/Zurich /etc/localtime
'Hardware-Clock' auf 'UTC' (Linux/Unix Standard) oder 'Localtime' (Bei Dual-Boot mit Windows) läuft. Dazu muss die Variabel CLOCK in der Datei '/etc/conf.d/clock' entweder auf 'UTC' oder 'local' gesetzt werden.emerge -a gentoo-sources emerge -a genkernel genkernel all
emerge -a grub
Hier findest du eine Anleitung.
'/etc/conf.d/keymaps': # /etc/conf.d/keymaps # Use KEYMAP to specify the default console keymap. There is a complete tree # of keymaps in /usr/share/keymaps to choose from. #KEYMAP="us" KEYMAP="de_CH-latin1" # Should we first load the 'windowkeys' console keymap? Most x86 users will # say "yes" here. Note that non-x86 users should leave it as "no". SET_WINDOWKEYS="yes" # The maps to load for extended keyboards. Most users will leave this as is. EXTENDED_KEYMAPS="" #EXTENDED_KEYMAPS="backspace keypad euro" # Tell dumpkeys(1) to interpret character action codes to be # from the specified character set. # This only matters if you set UNICODE="yes" in /etc/rc.conf. # For a list of valid sets, run `dumpkeys --help` DUMPKEYS_CHARSET=""
emerge -a syslog-ng app-admin/logrotate rc-update add syslog-ng default
emerge -a vixie-cron rc-update add vixie-cron default
emerge -a dhcpcd
Automatisches laden von Modulen:
nano -w /etc/modules.autoload.d/kernel-2.6
Kommen nach der installation von 'net-wireless/wireless-tools' folgende Fehler ist die installation des Pakets 'net-wireless/iwl3945-ucode' nötig.
Aus '/var/log/messages':
iwl3945 0000:03:00.0: firmware: requesting iwlwifi-3945-2.ucode iwl3945: iwlwifi-3945-2.ucode firmware file req failed: Reason -2 iwl3945 0000:03:00.0: firmware: requesting iwlwifi-3945-1.ucode firmware.sh[28754]: Cannot find firmware file 'iwlwifi-3945-2.ucode' iwl3945: iwlwifi-3945-1.ucode firmware file req failed: Reason -2 iwl3945: Could not read microcode: -2 iwl3945 0000:03:00.0: PCI INT A disabled
Nach 'ifconfig':
# ifconfig wlan0 up SIOCSIFFLAGS: No such file or directory #
* All the packages built against mozilla-firefox won't compile, * if after installing firefox 3.0 you get some blockers, * please add 'xulrunner' to your USE-flags.
* Messages for package net-libs/xulrunner-1.9.1.6: * You are enabling system sqlite. Do not file a bug with gentoo if you have * issues that arise from enabling system sqlite. All bugs will be considered * invalid. All patches are welcomed to fix any issues that might be found with * system sqlite. If you are starting with a fresh profile you can enable sqlite * without any major issues. * If firefox fails to start with "failed to load xpcom", run revdep-rebuild * If that does not fix the problem, rebuild dev-libs/nss * Try dev-util/lafilefixer if you get build failures related to .la files * Please remember to rebuild your browser(s) after update to prevent an xpcom error. * This bump is needed in order to bring icecat to the tree to replace iceweasel useflag. * Messages for package www-client/mozilla-firefox-3.5.6: * You are enabling official branding. You may not redistribute this build * to any users on your network or the internet. Doing so puts yourself into * a legal problem with Mozilla Foundation * You can disable it by emerging mozilla-firefox _with_ the bindist USE-flag * Fallback PaX marking -m * /var/tmp/portage/www-client/mozilla-firefox-3.5.6/image///usr/lib64/mozilla-firefox/firefox * All the packages built against mozilla-firefox won't compile, * any package that fails to build warrants a bug report.
* Messages for package app-portage/portage-utils-0.1.29: * //etc/portage/postsync.d/q-reinitialize has been installed for convenience * If you wish for it to be automatically run at the end of every --sync simply chmod +x //etc/portage/postsync.d/q-reinitialize * Normally this should only take a few seconds to run but file systems such as ext3 can take a lot longer. * If ever you find this to be an inconvenience simply chmod -x //etc/portage/postsync.d/q-reinitialize
* Messages for package sys-devel/gcc-4.3.4: * If you have issues with packages unable to locate libstdc++.la, * then try running 'fix_libtool_files.sh' on the old gcc versions. * Regenerating GNU info directory index... * Processed 116 info files.
* Messages for package media-libs/libogg-1.1.4: * This version of libogg has stopped installing .la files. This may * cause compilation failures in other packages. To fix this problem, * install dev-util/lafilefixer and run: * lafilefixer --justfixit
* Messages for package dev-libs/boost-1.35.0-r2: * Using the following options to build: * gentoorelease --without-mpi --user-config=/var/tmp/portage/dev-libs/boost-1.35.0-r2/work/boost_1_35_0/user-config.jam --boost-build=/usr/share/boost-build
* Messages for package net-fs/samba-3.0.36:
* It is possible to start/stop daemons separately:
* Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to
* /etc/init.d/samba. Calling /etc/init.d/samba directly will start
* the daemons configured in /etc/conf.d/samba
* The mount/umount.cifs helper applications are not included anymore.
* Please install net-fs/mount-cifs instead.
* If you're upgrading from 3.0.24 or earlier, please make sure to
* restart your clients to clear any cached information about the server.
* Otherwise they might not be able to connect to the volumes.
Das Einstellen der Bildschirmauflösung wird mit dem Programm 'xrandr' gemacht.
* * USE flag 'truetype' needs one of these additional flag(s) set: * gd gd-external * * 'gd' was automatically selected and enabled. * You can change that by enabling/disabling those flags accordingly * in /etc/portage/package.use. * * Enabling ZTS for Apache2 MPM * Enabling ZTS for Apache2 MPM * If you have additional third party PHP extensions (such as * dev-php5/phpdbg) you may need to recompile them now. * * USE="pic" slows down PHP but has to be enabled on setups where TEXTRELs * are disabled (e.g. when using PaX in the kernel). On hardened profiles this * USE flag is enabled automatically *
* Berkeley DB support is deprecated and will be removed in future versions! * MySQL MY_DATADIR is /var/lib/mysql * Berkeley DB support was disabled due to build failures * on multiple arches, go to a version earlier than 5.0.60 * if you want it again. Gentoo bug #224067. * You might want to run: * "emerge --config =dev-db/mysql-5.0.84-r1" * if this is a new install. * Berkeley DB support is deprecated and will be removed in future versions!
* You must reinstall perl-core/PodParser ! * You must reinstall perl-core/Test-Harness !
* "bsddb" module is out-of-date and no longer maintained inside dev-lang/python. It has * been additionally removed in Python 3. You should use external, still maintained "bsddb3" * module provided by dev-python/bsddb3 which supports both Python 2 and Python 3. * It is highly recommended to additionally install Python 3, but without configuring Python wrapper to use Python 3.
* If you use startx to start X instead of a login manager like gdm/kdm, * you can set the XSESSION variable to anything in /etc/X11/Sessions/ or * any executable. When you run startx, it will run this as the login session. * You can set this in a file in /etc/env.d/ for the entire system, * or set it per-user in ~/.bash_profile (or similar for other shells). * Here's an example of setting it for the whole system: * echo XSESSION="Gnome" > /etc/env.d/90xsession * env-update && source /etc/profile
Wichtigste Änderungen:
* udev-146 does not support Linux kernel before version 2.6.25! * For a reliable udev, use at least kernel 2.6.27 * * Updating persistent-net rules file * * restarting udevd now. * * If after the udev update removable devices or CD/DVD drives * stop working, try re-emerging HAL before filling a bug report * * persistent-net does assigning fixed names to network devices. * If you have problems with the persistent-net rules, * just delete the rules file * rm /etc/udev/rules.d/70-persistent-net.rules * and then reboot. * * This may however number your devices in a different way than they are now. * * If you build an initramfs including udev, then please * make sure that the /sbin/udevadm binary gets included, * and your scripts changed to use it,as it replaces the * old helper apps udevinfo, udevtrigger, ... * * mount options for directory /dev are no longer * set in /etc/udev/udev.conf, but in /etc/fstab * as for other directories. * * You have devfs-compat use flag enabled. * This enables devfs compatible device names. * If you use /dev/md/*, /dev/loop/* or /dev/rd/*, * then please migrate over to using the device names * /dev/md*, /dev/loop* and /dev/ram*. * The devfs-compat rules will be removed in the future. * For reference see Bug #269359. * * For more information on udev on Gentoo, writing udev rules, and * fixing known issues visit: * http://www.gentoo.org/doc/en/udev-guide.xml
* The HAL daemon needs to be running for certain applications to * work. Suggested is to add the init script to your start-up * scripts, this should be done like this : * `rc-update add hald default` * Access to hal is not protected by either policykit or the plugdev group. * If you have problems discovering/configuring hardware, try adding * yourself to plugdev. * IF you have additional applications which consume ACPI events, you * should consider installing acpid to allow applications to share ACPI * events. * If you wish to use a non US layout, you may do so by executing: * setxkbmap <layout> or by utilizing your Desktop Environment's * Keyboard Layout Settings mechanism. * Under GNOME, this is gnome-keyboard-properties, and under KDE * it is kxkb. * In order have suspend/hibernate function with HAL or apps that use HAL * (such as gnome-power-manager), you should build HAL with the laptop * useflag which will install pm-utils. * X Input Hotplugging (if you build xorg-server with the HAL useflag) * reads user specific configuration from /etc/hal/fdi/policy/. * You should remove the Input sections from your xorg.conf once you have * migrated the rules to a HAL fdi file.
* Installation of SQLite with "tcl" USE flag enabled provides more (TCL-unrelated) functionality.
* Please note that this ebuild makes the assumption that you're * using /boot/grub/ for your grub configuration. * * To use your new grub splashes edit your /boot/grub/grub.conf * You can see available splash screens by running * `ls /boot/grub/ | grep xpm`
* Please install app-text/evince for print preview functionality. * Alternatively, check "gtk-print-preview-command" documentation and * add it to your gtkrc.
* Old versions of installed libraries were detected on your system. * In order to avoid breaking packages that depend on these old libs, * the libraries are not being removed. You need to run revdep-rebuild * in order to remove these old dependencies. If you do not have this * helper program, simply emerge the 'gentoolkit' package. * * # revdep-rebuild --library libhistory.so.5 * # revdep-rebuild --library libreadline.so.5 * * Once you've finished running revdep-rebuild, it should be safe to * delete the old libraries. Here is a copy & paste for the lazy: * # rm '/lib64/libhistory.so.4' * # rm '/lib64/libhistory.so.5' * # rm '/lib64/libreadline.so.4' * # rm '/lib64/libreadline.so.5'