gen:gen
Table des matières
Gentoo
Sur la machine ou doit être installé Gentoo
Tuto basé sur: Installer Gentoo facilement 04/07/2016
- on boot sur le livecd
- on arrive sur livecd ~ #
- on fait un ifconfig pour voir les interfaces réseaux
- on configure le réseau avec une ip fixe
on donne un password au root pour pouvoir se connecter
passwd
on configure le réseau
ifconfig (pour repérer la carte filaire) ifconfig enp0s10 down (pour stopper le réseau) ifconfig enp0s10 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0 up route add default gw 192.168.1.254 nano -w /etc/resolv.conf 208.67.222.222 208.67.220.220
on permet une connexion ssh en root et on démarre le service sshd
nano -w /etc/ssh/sshd_conf PermitRootLogin yes
/etc/init.d/sshd start
Sur la machine d’où on installe Gentoo
on se connecte en ssh
ssh root@192.168.1.2
Partition du disque
on partitionne le disk avec cfdisk, on fait trois partitions, une pour le /, une pour le swap, une pour le /home
cfdisk /dev/sda
on format les trois partitions
mkfs.ext4 /dev/sda1 mkswap /dev/sda2 mkfs.ext4 /dev/sda3
on monte la future racine dans un point de montage temporaire pour installer la Gentoo
mount /dev/sda1 /mnt/gentoo
on crée l'arborescence pour les partitions supplémentaires et on monte celle-ci
mkdir /mnt/gentoo/home mount /dev/sda3 /mnt/gentoo/home
on monte le swap
swapon /dev/sda2
On peut vérifier si les partions existent bien avec df -h et free pour la partition swap
on vérifie que la date est bien en UTC et qu'il y a bien deux heures de décalages
date dim oct 9 17:50:21 UTC 2016
Récupération et installation des archives
on récupère l'archive de l'arborescence du système qui se trouve sur le site de Gentoo qui correspond au stage3 car actuellement on n'a que home lost+found
cd /mnt/gentoo wget http://distfiles.gentoo.org/releases/amd64/autobuilds/20161006/stage3-amd64-20161006.tar.bz2
on récupère l'archive portage qui contient toute les informations sur les logiciels qui sont disponibles et on extrait
wget http://distfiles.gentoo.org/snapshots/portage-latest.tar.bz2
- on extrait l'archive stage3
- x pour extraire
- v pour mode verbeux (bavard)
- j pour format bz2
- p pour conserver les permissions qui sont dans l'archive
- f car c'est un fichier
tar xvjpf stage3-amd64-20161006.tar.bz2
- on extrait ensuite l'archive portage dans /usr
tar xvjpf portage-latest.tar.bz2 -C usr/
on peut vérifier que l'on a bien tout
ls ls /usr/portage/
on peut supprimer les deux archives si on veut
rm stage3-amd64-20161006.tar.bz2 rm portage-latest.tar.bz2
Passage en chroot
on copie le fichier resolv.conf dans la racine et monte d'autres fichiers
cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf mount -t sysfs /sys/ /mnt/gentoo/sys/ mount -t proc /proc/ /mnt/gentoo/proc/ mount -o bind /dev /mnt/gentoo/dev/
on change de racine avec chroot, on prend /mnt/gentoo, on écrit que /bin/bash soit l'interpréteur de commande et on se retrouve dans le livecd donc on se retrouve dans la racine de notre future système.
chroot /mnt/gentoo /bin/bash
on met à jour l'environnement
env-update
on prend une nouvelle source
source /etc/profile
on définit la nouvelle variable du prompt et pour éviter de se méler les pinceaux on lui dit qu'il affiche chroot pour savoir dans quel environnement on est. On sait bien que l'on est dans le chroot est plus dans le livecd.
export PS1="[chroot] $PS1"
On utilise nano -w pour éviter d'avoir des problèmes avec les sauts de lignes===
on edite le make.conf
nano -w /etc/portage/make.conf on lui ajoute ceci MAKEOPTS="-j3" LINGUAS="fr" VIDEO_CARDS="nvidia" INPUT_DEVICES="evdev"
on configure les locale qui sont la langue et les entrées clavier
nano -w /etc/locale.gen fr_BE.UTF-8 UTF-8
nano -w /etc/env.d/02locale LANG="fr_BE.UTF-8" LC_COLLATE="C"
on génère les locales
locale-gen
on configure le clavier
nano -w /etc/conf.d/keymaps keymap="be-latin1"
on met à jour l'environnement
env-update && source /etc/profile
on remet l'environnement
export PS1="[chroot] $PS1"
on met la date à jour car on est décallé de 2 heures
cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime
on vérifie que l'horloge est bien sur UTC
nano -w /etc/conf.d/hwclock clock="UTC"
Configuration, compilation et installation du noyaux
outils pour détecter le matériel
| Utility | Package | Description |
|---|---|---|
| Hwinfo | sys-apps/hwinfo | The hardware detection utility of OpenSUSE. |
| inxi | sys-apps/inxi | A system information script for IRC and system administrators. |
| kudzu | sys-apps/kudzu | The hardware detection utility of Red Hat. |
| lpinfo | net-print/cups | Lists all printers and the used drivers (via CUPS). |
| lshw | sys-apps/lshw | Generates a structured list of detected hardware and their features. |
| lspci | sys-apps/pciutils | Includes command-line tools for identifying PCI system hardware. |
| lsusb | sys-apps/usbutils | Includes command-line tools for identifying USB system hardware. |
| lsi2c | sys-apps/i2c-tools | I2C tools for bus probing, chip dumping, register-level access helpers, EEPROM decoding, and more. |
| scan mdem | Not applicable | scanModem.sh is a script used for finding suited driver for connected modems. |
| hdparm | sys-apps/hdparm | hdparm is a command line utility to set and view ATA & SATA hard disk drive hardware parameters. |
pour l'installation d'une imprimante Brother en réseau
avant d'installer des logiciels on synchronise la base de donnée des logicielles, il va mettre à jour les portage
emerge --sync
- on installe le noyau, dans notre cas uniquement les sources
- a ask pour poser la question
- v pour verbeux (montre les USE) USE=“-build -experimental -symlink”
- q quiet pour avoir des infos sans les lignes de compilation
emerge -avq gentoo-sources [ebuild N ] sys-devel/bc-1.06.95-r1 USE="readline -libedit -static" [ebuild N ] sys-kernel/gentoo-sources-4.4.21 USE="-build -experimental -symlink"
on va dans les sources du noyaux
cd /usr/src/
on va dans linux
cd linux
on appel Mr Propre pour nettoyer les sources
make mrproper
on prépare notre fichier de configuration
make menuconfig
- Networking support
- Amateur radio support –> on vire
On sauve et on sort
on compile le noyau
make -j3
on compile les modules
make modules_install
on installe le noyau
make install sh ./arch/x86/boot/install.sh 4.4.21-gentoo arch/x86/boot/bzImage \ System.map "/boot"
on vérifie
ls -lh /boot -rw-r--r-- 1 root root 3,3M 10 oct 00:10 System.map-4.4.21-gentoo -rw-r--r-- 1 root root 101K 10 oct 00:10 config-4.4.21-gentoo -rw-r--r-- 1 root root 6,0M 10 oct 00:10 vmlinuz-4.4.21-gentoo
On configure les partitions, le nom de la machine, le réseau et le service sshd
on ajoute un mot de passe à root
passwd
on configure le fstab
nano -w /etc/fstab /dev/sda1 / ext4 noatime 0 1 /dev/sda2 none swap sw 0 0 /dev/sda3 /home ext4 noatime 0 0 /dev/cdrom /mnt/cdrom auto noauto,ro 0 0 /dev/fd0 /mnt/floppy auto noauto 0 0
on configure et on définit le nom d’hôte de la machine
nano -w /etc/hostname hostname="ok"
on configure le fichier hosts
nano -w /etc/hosts
activer le réseau au démarrage et activation de la carte enp0s10 au démarrage
ip a (on repère la carte réseau)
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:24:8c:3f:92:27 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 brd 192.168.1.255 scope global enp0s10
valid_lft forever preferred_lft forever
inet 192.168.1.64/24 brd 192.168.1.255 scope global secondary enp0s10
valid_lft forever preferred_lft forever
3: wlp1s9: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether 00:08:a1:94:d1:c7 brd ff:ff:ff:ff:ff:ff
cd /etc/init.d
ln -sv net.lo net.enp0s10 (on crée le lien symbolique)
rc-update add net.enp0s10 default
si besoin du dhcp
emerge -q dhcpcd
on configure le sshd et on ajoute sshd par défaut au démarrage de la machine
nano -w /etc/ssh/sshd_config PermitRootLogin yes
rc-update add sshd default
Gestionnaire de démarrage Grub
Installation de Grub
emerge -avq grub
[ebuild N ] media-libs/freetype-2.6.3-r1 USE="adobe-cff bindist bzip2 -X -debug -doc -fontforge
-harfbuzz -infinality -png -static-libs -utils" ABI_X86="(64) -32 (-x32)"
[ebuild N ] sys-boot/grub-2.02_beta3-r1 USE="fonts nls themes -debug -device-mapper -doc -efiemu
(-libzfs) -mount -multislot -sdl -static {-test} -truetype" GRUB_PLATFORMS="-coreboot -efi-32 -efi-64 -emu
-ieee1275 -loongson -multiboot -pc -qemu -qemu-mips -uboot -xen -xen-32"
on installe Grub sur le mbr et on génère le fichier de configuration Grub
grub-install /dev/sda Installation pour la plate-forme i386-pc Installation terminée, sans erreur.
grub-mkconfig -o /boot/grub/grub.cfg Création du fichier de configuration GRUB… Image Linux trouvée : /boot/vmlinuz-4.4.21-gentoo fait
on ajoute un user et on le place dans le groupe wheel
useradd -m aiko passwd aiko usermod -G wheel -a aiko
on quit le chroot
exit
on revient à la racine
cd /
on démonte les partitions et on reboot
umount /dev/sda3 swapoff /dev/sda2 reboot
Après le reboot
Si le réseau ne fonctionne pas
Gentoo Linux x86 Handbook: Network configuration
nano -w /etc/conf.d/net # For DHCP #config_enp0s10="dhcp" # For static IP using CIDR notation #config_enp0s10="192.168.1.2/24" #routes_enp0s10=default via 192.168.1.254" #dns_servers_enp0s10="208.67.222.222 208.67.220.220" # For static IP using netmask notation config_enp0s10="192.168.1.2 netmask 255.255.255.0" routes_enp0s10="default via 192.168.1.254" dns_servers_enp0s10="208.67.222.222 208.67.220.220"
on configure le sshd et on ajoute sshd par défaut au démarrage de la machine
nano -w /etc/ssh/sshd_config PermitRootLogin yes
rc-update add sshd default
on installe gpm pour avoir une souris dans la bash et on ajoute gmp par défaut au démarrage de la machine
emerge -avq gpm * IMPORTANT: 12 news items need reading for repository 'gentoo'. * Use eselect news read to view new items. [ebuild N ] sys-libs/gpm-1.20.7-r2 USE="(-selinux) -static-libs" ABI_X86="(64) -32 (-x32)" Would you like to merge these packages? [Yes/No] Yes >>> Verifying ebuild manifests >>> Emerging (1 of 1) sys-libs/gpm-1.20.7-r2::gentoo >>> Installing (1 of 1) sys-libs/gpm-1.20.7-r2::gentoo >>> Recording sys-libs/gpm in "world" favorites file... >>> Jobs: 1 of 1 complete Load avg: 0.44, 0.17, 0.07 * IMPORTANT: 12 news items need reading for repository 'gentoo'. * Use eselect news read to view new items.
rc-update add gpm default
installation de mc
emerge -avq mc
!!! The short ebuild name "mc" is ambiguous. Please specify
!!! one of the following fully-qualified ebuild names instead:
app-misc/mc
sci-libs/mc
emerge -avq app-misc/mc
* IMPORTANT: 12 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
[ebuild N ] sys-libs/slang-2.2.4-r1 USE="pcre readline zlib -cjk -png -static-libs" ABI_X86="(64) -32 (-x32)"
[ebuild N ] app-misc/mc-4.8.15 USE="edit nls slang xdg -X -gpm -mclib -samba -sftp -spell {-test}"
Would you like to merge these packages? [Yes/No] Yes
>>> Verifying ebuild manifests
>>> Emerging (1 of 2) sys-libs/slang-2.2.4-r1::gentoo
>>> Installing (1 of 2) sys-libs/slang-2.2.4-r1::gentoo
>>> Emerging (2 of 2) app-misc/mc-4.8.15::gentoo
>>> Recording app-misc/mc in "world" favorites file...
>>> Jobs: 2 of 2 complete Load avg: 1.63, 0.68, 0.25
* Messages for package app-misc/mc-4.8.15:
* To enable exiting to latest working directory,
* put this into your ~/.bashrc:
* . /usr/libexec/mc/mc.sh
gen/gen.txt · Dernière modification : de 127.0.0.1
