Formation Evolix

installation Linux

Méthode d'installation

  • par CD/ROM ou clé USB (machine physique ou virtuelle)
  • par le réseau, via boot PXE+DHCP+TFTP
  • Image préinstallée par un hébergeur
  • Conteneur minimal (LXC/Docker)
  • Compatibilité du matériel

    enjeu principal : carte réseau et controleur disque/RAID test avec Live-CD Compatibilité du matériel lspci -n sur http://kmuto.jp/debian/hcl/ plus à jour :( Listes de diffusion Recherche Google avec “site:lists.debian.org/debian-boot”

    Choix pour un serveur

    carte réseau : 1G ou 10G ? CPU Intel Xeon : fréquence ? nombre de cores ? https://www.cpubenchmark.net/ Quantité de mémoire Importance du stockage : local ou distant (NFS, iSCSI) Type : SATA, SAS, SSD ? Performance lecture/écriture : Mo/s, IOPS Gestion du cache

    Focus sur le RAID

    RAID0 RAID1 RAID5 RAID6 RAID10 RAID hardware ou logiciel

    Focus sur le stockage

    parted

    Partitionnement

    Partitionnement DOS limité à 2,2 T Partitionnement GPT Outils : fdisk, cfdisk, sfdisk, parted /boot / /var /usr /tmp 2xswap /srv /home systèmes de fichiers : ext3/ext4, reiserfs, xfs, btrfs

    Focus sur RAID logiciel

    Focus sur LVM

    Réseau

    Fichiers de paramètres : Fichiers spécifiques /etc/resolv.conf, /etc/hosts Configuration dynamique DHCP (Dynamic Host Configuration Protocol) Paramètres réseau sont automatiquement mis en place. Configuration statique Configuration manuelle des fichiers Outils réseaux (ifconfig, ping, route, ip, netstat, traceroute...)

    Installation de logiciels

    - Méthode classique de compilation des sources. - Utilisation du système de packages Les packages sont des binaires précompilés qui sont prêts à être installés de façon simple et rapide. Les dépendances sont gérées, ainsi que la mise à jour et la suppression des packages déjà installés (varie selon les distributions).

    TP : installation Debian GNU/Linux

    Choix de la version

    Debian GNU/Linux « Sid » : actuelle version unstable Debian GNU/Linux 10 (« Buster ») : actuelle version testing Debian GNU/Linux 9 (« Stretch ») : actuelle version stable Debian GNU/Linux 8 (« Jessie ») : actuelle version oldstable Debian GNU/Linux 7 (« Wheezy ») : actuelle version oldoldstable Debian GNU/Linux 6 (« Squeeze ») Debian GNU/Linux 5 (« Lenny ») Debian GNU/Linux 4 (« Etch ») Debian GNU/Linux 3.1 (« Sarge ») Debian GNU/Linux 3.0 (« Woody ») Debian GNU/Linux 2.2 (« Potato ») Debian GNU/Linux 2.1 (« Slink ») Debian GNU/Linux 2.0 (« Hamm »)

    boot sur CD/DVD ou USB choix de la langue : anglais (en_US.UTF8) réglage du clavier réseau partitionnement choix des miroirs mot de passe choix de packages installation GRUB

    console de debug à l'installation

    lspci | grep Eth ip addr show dmesg | grep sd cat /proc/cpuinfo

    Focus sur Vim

    # apt install vim # select-editor # vi /etc/vim/vimrc let g:skip_defaults_vim = 1 # vi ~/.vimrc "musthave syntax on set background=dark set nocompatible "dev set expandtab set shiftwidth=4 set softtabstop=4 set tabstop=4

    Vim basics

    Mode "commandes" <-> Mode "insertion" [Échap] <-> i Mode "commandes" ---------------- :w enregistrer :wq enregistrer et quitter :q! quitter sans enregistrer gg aller tout en haut G aller tout en bas $ aller en fin de ligne /foo chercher "foo" dd supprimer (ou couper) la ligne actuelle yy copie la ligne actuelle x supprimer (ou couper) le caractère courant p coller après le curseur P coller avant le curseur v mode visuel pour couper ou copier facilement rX remplace le caractère courant par X u annule la dernière commande Ctrl+r restaure la dernière commande Passer en mode insertion ------------------------ i passer en mode insert avant le curseur a passer en mode insert après le curseur I passer en mode insert au début de la ligne A passer en mode insert à la fin de la ligne o sauter une ligne et passer en mode insert
    # apt install locales $ LANG=fr_FR.UTF8 /usr/bin/vimtutor

    Focus sur dpkg / APT

    - Utilitaire principal : dpkg dpkg -l dpkg --unpack dpkg --configure dpkg -i dpkg -r dpkg -P dpkg -L dpkg -S dpkg -s dpkg-reconfigure - Gestion avancée de paquets : APT (Advanced Package Tool) Dépendances, mises à jour, conflits [Packages.gz]
    - Sources de paquets : /etc/apt/sources.list netselect / apt-cdrom / apt-config - Interface pour APT : apt, apt-cache, apt-get, aptitude apt update apt upgrade apt install paquet apt remove paquet apt purge paquet apt-cache show / search / -n search / depends / rdepends / policy etc.
    apt -s install apt-file apt-show-versions apt-listchanges apt clean/autoclean apt upgrade/full-upgrade apt changelog rmadison apt-get check apt source apt build-dep debuild -us -uc
    # vim /etc/apt/sources.list deb http://mirror.evolix.org/debian/ stretch main deb http://security.debian.org/ stretch/updates main deb http://mirror.evolix.org/debian/ stretch-updates main deb http://mirror.evolix.org/debian/ stretch main
    # dpkg-reconfigure -plow debconf # vim /etc/apt/apt.conf.d/99custom APT::Install-Recommends "false"; APT::Install-Suggests "false"; DPkg::Pre-Invoke { "mount -oremount,exec /tmp && mount -oremount,rw /usr || true"; };" DPkg::Post-Invoke { "mount -oremount /tmp && mount -oremount /usr || true"; };"
    # vim /etc/fstab /dev/sda2 / ext4 defaults,errors=remount-ro 0 1 /dev/sda1 /boot ext4 defaults 0 2 /dev/sda3 /var ext4 defaults 0 2 /dev/sda5 /usr ext4 defaults,ro 0 2 /dev/sda6 /tmp ext4 defaults,noexec,nosuid,nodev 0 2 /dev/sda7 none swap sw 0 0 /dev/sda8 none swap sw 0 0 /dev/sda9 /home ext4 defaults,noexec,nosuid,nodev 0 2 tmpfs /var/tmp tmpfs defaults,noexec,nosuid,nodev 0 2
    On installe Postfix : # apt install postfix On renvoie tous les alias vers root : # getent passwd | cut -d":" -f1 | sed "s/$/: root/" > /etc/aliases # vim /etc/aliases # newaliases
    Installons les outils de base : # apt install ssh less mailx sudo munin htop iotop iftop
    Mesure des performances disque # time dd if=/dev/zero of=/home/32gb bs=1024k count=32768 # time dd if=/home/32gb of=/dev/null bs=1024k count=32768 # time rm /home/32gb # apt install postgresql-contrib # /usr/lib/postgresql/9.6/bin/pg_test_fsync
    Mesure des performances réseau # apt install iperf mtr-tiny $ ping -4 google.fr $ mtr -4 google.fr $ iperf -c debit.k-net.fr

    Comment choisir sa version de Linux ?

    • Versions logiciels fixes : Apache / PHP / MySQL / etc.
    • Version nue / panel (cpanel, plesk)
    • apt-get / yum install

    Récapitulatif

    Choix matériel Choix version de Linux Premières optimisations Validation des performances