Installation de Gentoo sur le serveur GPA435

From NBSWiki
Jump to: navigation, search

Cette section ne fait qu'ajouter à la documentation officielle de Gentoo concernant l'installatin de ce dernier sur AMD64 (voir Le manuel Gentoo Linux/AMD64 2005.1). Il est donc important de lire rapidement celle-ci avant de lire la documentation officielle afin d'effectuer les bonnes étapes aux bon moments.

Contents

Télégraphiquement

NOTE: Cette procédure est spécifique à la machine fournie dans le contexte du cours de GPA435 (Dual Opteron avec 2Gig de RAM et plus de 300Gig d'espace disque sur RAID5).
Après avoir chargé le CD d'installation de Gentoo et avoir partitionné et formaté le disque RAID tel que désiré, voici les commandes à effectuer séquentiellement. Noter que la séquence prend les points suivantes pour acquis:

  1. La partition boot est sur la partition /dev/i2o/hda1,
  2. La partition de SWAP est sur /dev/i2o/hda2,
  3. La partition de Gentoo est sur /dev/i2o/hda3,
  4. La partition de export est sur /dev/i2o/hda4,
  5. La date et l'heure du système est la bonne, vérifier en utilisant la commande date,

Il est possible de changer ces valeurs par défaut en changeant les premières lignes de cette séquence.

Config Réseau

Code: Séquence Télégraphique d'installation
 ifconfig eth0 142.137.40.50 netmask 255.255.255.0 broadcast 142.137.42.255
 route add -net 0.0.0.0 gw 142.137.42.1
 route add -p 10.43.0.0    MASK 255.255.0.0  142.137.40.1
File: /etc/resolv.conf
domain ad.gpa.etsmtl.ca
nameserver 10.18.7.35
nameserver 10.18.7.37

Préparation de l'environnement

Optimisation des I/O des disques

hdparm -d 1 -m 16 -a 8128 /dev/i2o/hda #Optimiser les transfers i/o, très important

Téléchargements

Code: Télécharger
wget http://mirrors.acm.cs.rpi.edu/gentoo/releases/amd64/current/stages/stage1-amd64-2005.1.tar.bz2
wget http://mirrors.acm.cs.rpi.edu/gentoo/releases/amd64/current/stages/stage1-amd64-2005.1.tar.bz2.md5
md5sum -c stage1-amd64-2005.1.tar.bz2.md5   #S'assurer que le résultat est OK!
wget http://mirrors.acm.cs.rpi.edu/gentoo/snapshots/portage-latest.tar.bz2

Note: dès que le fichier stage1-amd64-2005.1.tar.bz2 a fini de télécharger, vous pouvez ouvrir une autre fenêtre de console et lancer sa décompression (suivi de la décompression de portage-latest.tar.bz2:

Code: Décompresser
tar -xjpf stage?-*.tar.bz2 -C /mnt/gentoo/
tar -xjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr

Changement d'environnement

Il est maintenant temps d'entrer dans l'environnement d'installation de Gentoo:

Code: Entrer dans l'environnement Gentoo
export GENTOO_ROOT=/dev/i2o/hda3; export GENTOO_BOOT=/dev/i2o/hda1
mount $GENTOO_ROOT /mnt/gentoo
mkdir /mnt/gentoo/boot
mount $GENTOO_BOOT /mnt/gentoo/boot
mount -t proc none /mnt/gentoo/proc
chroot /mnt/gentoo /bin/bash
mkdir /usr/local/portage
env-update
source /etc/profile
ln -sf /usr/share/zoneinfo/America/Montreal /etc/localtime

Création/modification des fichiers de configuration

Les blocs suivants sont écrits de façon à créer les fichiers simplement en copie-collant ces derniers dans une fenêtre de console (on sous-entend que l'installateur se sert d'une connection ssh vers le serveur).

/etc/conf.d/hostname

echo 'HOSTNAME="delta"' > /etc/conf.d/hostname

/etc/conf.d/domainname

echo 'DNSDOMAIN="ad.gpa.etsmtl.ca"' >> /etc/conf.d/hostname

/etc/init.d/net.eth0

ln -s /etc/init.d/net.lo /etc/init.d/net.eth0

/etc/conf.d/net

echo 'config_eth0=( "142.137.42.144 netmask 255.255.255.0" )
routes_eth0=( "default gw 142.137.42.1" )' > /etc/conf.d/net

/etc/make.conf

echo 'USE="3dfx 3dnow acl bootsplash browserplugin ftp gimpprint jpeg2k
     kdeenablefinal kdexdeltas kerberos nsplugin ppds slang unicode
     xprint -alsa -avi -eds -encode -gnome -ipv6 -mp3 -mpeg -opengl
     -quicktime -xv"
CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -O2 -pipe"
CXXFLAGS="${CFLAGS}"
PORT_LOGDIR=/var/log/portage
PORTDIR_OVERLAY=/usr/local/portage
GENTOO_MIRRORS="http://mirrors.acm.cs.rpi.edu/gentoo/
http://distro.ibiblio.org/pub/linux/distributions/gentoo/
http://gentoo.seren.com/gentoo http://mirror.datapipe.net/gentoo
http://gentoo.mirrors.tds.net/gentoo"
MAKEOPTS="-j3"
PORTAGE_NICENESS=-1
AUTOCLEAN="yes"
PORTAGE_TMPFS="/dev/shm"
FEATURES="buildpkg fixpackages -sandbox"
CLEAN_DELAY=1
LINGUAS="fr en"
IWILLFIXITMYSELF=1
PORT_LOGDIR=/var/log/portage' > /etc/make.conf

/etc/resolv.conf

echo 'search gpa.etsmtl.ca
nameserver 142.137.40.10
nameserver 142.137.40.6
nameserver 142.137.40.3' > /etc/resolv.conf

/etc/hosts

echo '127.0.0.1     delta.ad.gpa.etsmtl.ca delta localhost.localdomain localhost' > /etc/hosts

/etc/portage/package.use

mkdir -p /etc/portage
echo 'sys-libs/glibc userlocales
dev-java/blackdown-jre mozilla
dev-java/blackdown-jdk mozilla' >>/etc/portage/package.use

/etc/locales.build

egrep '(#|fr_|en_).*' /etc/locales.build>.tmp ; mv .tmp /etc/locales.build
echo 'C
en_US
en_US.utf8
fr_CA
fr_CA.utf8
POSIX'>> /etc/locales.build

/etc/env.d/02locale

A CORRIGER...IL NE FAUT PAS QUE ÇA S'APPLIQUE À ROOT!
Note, ceci prédéfini le Français comme étant la langue d'usage sur le système, les usagers ont libre cours de changer cette variable dans leur fichier ~/.bashrc.

echo "LANG=fr_CA.utf8" >>  /etc/env.d/02locale

/etc/portage/package.use

echo 'dev-java/blackdown-jre mozilla
dev-java/blackdown-jdk mozilla' >> /etc/portage/package.use 

/etc/portage/package.keywords

echo 'app-portage/cfg-update ~amd64
sys-apps/dstat ~amd64' >> /etc/portage/package.keywords

/etc/rc.conf

Activation de kdm comme gestionnaire d'ouverture de session

sed -i -e's:#DISPLAYMANAGER="xdm":DISPLAYMANAGER="kdm":' /etc/rc.conf

/etc/skel/.bashrc

echo 'alias ls="ls --color"
alias ll="ls -l"' >>/etc/skel/.bashrc  

Config d'authentification

/etc/ssh/sshd_config

Changer l'entrée suivante pour qu'elle ne soit pas en commentaire et changer le "no" par "yes". (Obtenu avec la commande: grep -ve"#" -ve"^$" /etc/ssh/sshd_config )

Protocol 2
PermitRootLogin no
PasswordAuthentication no
KerberosAuthentication yes
KerberosOrLocalPasswd yes
KerberosTicketCleanup yes
UsePAM yes
X11Forwarding yes
# Empêcher la perte de connection dû au délais de connection pour toute connection extérieure de l'ETS
TCPKeepAlive yes
ClientAliveInterval 300
ClientAliveCountMax 99999

Subsystem       sftp    /usr/lib64/misc/sftp-server
AllowGroups system gpa435

<math>Insert formula here</math>

Compilation du système (bootstrap)

NOTE: Si vous avex déjà des pacakges de compilés ou les codes sources, il est temps de les mettre dans /mnt/gentoo/usr/portage/packages et /mnt/gentoo/usr/portage/distfiles respectivement.

Code: Séquence Télégraphique d'installation (Partie 2)
emerge --sync --quiet
cd /usr/portage
scripts/bootstrap.sh -f &
nohup scripts/bootstrap.sh >~/stage1.log 2>&1 &

Compilation du système

Note: si vous aviez des packages pré-compilés, ne pas oublier dajouter la commande -k à emerge. Ceci fera en sorte que le packages binaires, si non désuets, seront utilisés.
Autre Note: c'est voulu que cfg-update se retrouves deux fois dans la liste.

Code: Séquence Télégraphique d'installation (Partie 3)
emerge -e system

USE="-gnome -kde" emerge cfg-update 
emerge gentoolkit app-portage/eix grub syslog-ng sys-auth/pam_krb5 syslog-ng ntp vim \
sys-apps/coreutils sys-apps/sed app-portage/ufed

emerge kdebase-startkde kicker kate kcalc kpdf kfind kxkb kcontrol \
kfilereplace kcharselect konsole kdeadmin-meta kdeartwork-kwin-styles \
kdeartwork-iconthemes kdepasswd kdeprint umbrello kde-i18n konqueror \
app-admin/kiosktool kde-base/nsplugins kde-base/klipper kde-base/kmenuedit \
openoffice-bin gimp dia nedit xfig xemacs gftp net-print/foomatic app-doc/abs-guide \
net-www/netscape-flash mozilla-firefox cfg-update ark

#Section furteurs, noter que la version -bin (32bit) est nécessaire pour utiliser Flash (pour le moment)
emerge mozilla-firefox-bin 

Finalisation de l'installation

Cette dernière étape assure la consistance du systeèm

emerge sync
update-eix
emerge world --newuse -aDuv

Quelques corrections

Mozilla Firefox ne semble pas bien détecter les plugins Java. il faut donc faire la séquance suivante pour que ces derniers soient détectés correctement:

ln -s /opt/blackdown-jre-1.4.2.02/plugin/amd64/mozilla/libjavaplugin_oji.so \
/usr/lib/mozilla-firefox/plugins/

Évidement, la version de blackdown peut varier.

Installation avec les binaires compilés

Le stricte minimum des fichiers à conserver sont:

Code: Liste des fichiers décrivant le système
/etc/*
/opt/ltsp-4.1.1/i386/etc/lts.conf
/var/lib/portage/world
/root/scripts

Dans le fichies /etc/make.conf, il avait été spécifié de bâtir les packages binaires grâce à l'option buildpkg de la variable FEATURES:

FEATURES="sandbox ccache buildpkg "

Les packages binaires pour le système en entier font en-dessous de 300MB et sont situés dans /usr/portage/packages. Ce répertoire devrait être sauvegardé avant une réinstallation à neuf du système. Il faut aussi conserver les fichiers et le profile de référence pour que portage reconaisse ces applications comme étant les bonnes versions pour l'installation. Ceci est accomplis par la commande suivante:

Code: Commande de sauvegarde du profil de la machine
 tar -cjf portage_snapshot.tbz /etc/make.conf /usr/portage/ --exclude=/usr/portage/distfiles.* --exclude=/usr/portage/packages.*

Cette aproche permet donc de remonter le système très rapidement en suivant la procédure dite GRP dans la documentation d'installation. Bref, il nous est possible d'installer le système en entier avec la command emerge -k [packagename] après avoir décompressé le fichier portage_snapshot.tbz dans le / du système et avoir spécifié

Notes de compilation

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox