2014 Entraide-Info Entraide pour les informaticiens LINUX FEDORA CORE 4 : ADMINISTRATION DU SYSTEME OLIVIER D.
1 Introduction... 2 2 Installation... 3 3 L aide... 5 4 Gestion des paquets... 6 4.1 Installation à partir des sources (.tar.gz)... 6 4.2 Installation à partir des paquets d installation (.rpm /.deb)... 6 5 Démarrage et arrêt du système... 8 6 Gestion des utilisateurs...10 7 Gestion des disques...12 8 Gestion de la mémoire et des ressources système...15 Olivier D. Page 1 http://www.entraide-info.fr
1 Introduction 1969 : Ken Thompson crée Multics qui deviendra ensuite Unix 1970 : Ken Thompson + Dennis Ritchie créent le language C 1973 : Unix écrit en C Portabilité (juste besoin d un compilateur) Outils adaptables sur plusieurs plates-formes 1976 : Diffusion d Unix. BerkeleySoftwareDistribution et AT&T améliorent le produit 1984 : Richard Stallman crée GNU qui est un équivalent libre d Unix (récup sources + diffusion) 1989 : Richard Stallman crée la licence GPL (règles d utilisation logiciels libres. Différent de gratuit) Freeware : logiciel gratuit + copyright Open-Source : sources : compilation (binaire payant) GNU / GPL : sources + modification + distribution gratuit (FR = Cecill) 1991 : Linus Toswald crée un noyau pour GNU (essor de Linux grâce à Internet) Caractéristiques Linux : Distributions : Multitâches : exécuter plusieurs processus en même temps. Ordonnanceur : PID CPU Multiprocesseurs Multi-utilisateurs : UID (identifiant utilisateur) + GID (groupe utilisateur) Multi plateforme : Intel, AMD, ARM Système de fichiers : Ext2, Ext3, NTFS, FAT Mémoire : Swap, support 64Go PAE Réseau : tous les standards Standards : POSIX (dont bases de données) Noyau Linux + Logiciels libres (open source + GPL) + Programmes commerciaux (flash + drivers tiers) + Manuels d utilisation Distributions orientées entreprise : Red Hat (payant + Open Source). A inspiré CentOS (gratuit + GPL) Fedora est la version grand public de Red Hat Olivier D. Page 2 http://www.entraide-info.fr
2 Installation Gestion du matériel : Récupération des infos matérielles dans le gestionnaire de périphériques Windows Tester avec le LiveCD (utile aussi pour le dépannage) «rescue mode» de RedHat remplace le LiveCD Recommandations : CPU : 400MHz RAM : 64Mo (texte) ; 256Mo (graphique) HDD : 1,1Go pour l install Serveur Olivier D. Page 3 http://www.entraide-info.fr
Gestion du disque dur : Volumes logiques Partitions : Disques : Nommage des disques et partitions sous Linux 3 principales IDE : hda hdd 1 étendue SCSI (SATA) sda sdz /boot noyau + GRUB /home données personnelles /var données variables (www ) /tmp données temporaires /data données pour serveur de fichier (pas obliqué que ça s appelle data!!) Amorçage de l installation : Installation manuelle : utilisation du DVD CentOS Installation réseau : utilisation de Boot.iso (dans DVD\images) puis http ou FTP ou NFS Choix d installation : Linux rescue : Installation automatisée : utilisation de kickstart boot : linux ks=floppy ou (fichier.cfg sur disquette) linux ks=nfs:[serveur]:/chemin/kickstart.cfg [serveur] = utiliser le nom DNS ou l adresse IP :/chemin/kickstart.cfg = méthode d installation Montage de / dans /mnt/sysimage Pas de mot de passe root (aucune sécurité) chroot /mnt/sysimage : accès à toutes les commandes Boot sur le DVD Boot> linux rescue Olivier D. Page 4 http://www.entraide-info.fr
3 L aide <cmd> --help man <cmd> man -k <expression> (ex. : cat --help) (ex. : man ps) (recherche d une aide sur l expression) Sections de man man -s5 passwd /usr/share/doc emplacement des paquets installés (contient des fichiers README) Sur internet : http://linuxfr.org site francophone, communautaire http://lea-linux.org site d aide en français, tous niveaux http://www.howtoforge.com tutoriels et aide en anglais http://www.framasoft.net réseau d autre pour le logiciel libre http://fr.wikipedia.org attention : contributeurs pas toujours fiables Olivier D. Page 5 http://www.entraide-info.fr
4 Gestion des paquets Deux types d installations : Installation à partir des sources o fichier.tar.gz Installation à partir des paquets d installation o fichiers.rpm sous RedHat. Méthode yum o fichiers.deb sous Debian. Méthode apt-get 4.1 Installation à partir des sources (.tar.gz) Avantages : Inconvénients : liberté d adaptation indépendant des distributions compilation (+complexe) manuel gestion des dépendances non-gestion des mises à jour besoin d outils de développement (gcc) Marche à suivre : $ tar -zxf fichier.tar.gz décompresser $ cd fichier se placer dans le répertoire de décompression $ less README INSTALL consulter $./configure [options] génère un fichier Makefile $ make compilation (utilise Makefile pour créer les bin et fichiers) # make install copie les fichiers dans système 4.2 Installation à partir des paquets d installation (.rpm /.deb) Avantages : Inconvénients : automatisation outils de recherche gestion des mises à jour 1 seule version du logiciel moins adaptable lié à la distribution et à l architecture Marche à suivre : rpm -ivh <paquet.rpm> -i install -v verbose -h progression -U installation ou mise à jour -F mise à jour seulement -e suppression (ne pas indiquer.rpm) Si paquet déjà installé : rpm qi <paquet> rpm ql <paquet> rpm qf <nom_fichier> infos du paquet liste des fichiers renvoie le paquet qui a installé le fichier Olivier D. Page 6 http://www.entraide-info.fr
Si paquet pas encore installé : rpm qpi <paquet.rpm> rpm qpl <paquet.rpm> Script de recherche de dépendances : ScriptDependances.sh <paramètre> rpm) infos du paquet liste fichiers (permet de trouver les dépendances) (à exécuter en se positionnant dans le dossiers des Nota : Le nom du fichier est passé en paramètre (correspond à $1) #!/bin/bash on passe chmod a+x sur le fichier.sh pour pouvoir l exécuter for a in *.rpm do rpm qpl $a 2>/dev/null grep $1 && echo "$1 dans $a" done Installation automatique des dépendances : yum install <nom> yum remove <nom> yum check-update vérifie les mises à jour yum search <nom> yum update met à jour yum update <nom> yum list all /etc/yum.conf : paramètres / proxy / chemin des dépôts Gestion des dépôts : /etc/yum.repo.d/centos-base.repo : dépôts internet /etc/yum.repo.d/centos-media.repo : dépots DVD (activer : mettre 1 en paramètre + mettre à jour les chemin DVD ; désactiver : mettre 0 en paramètre) Olivier D. Page 7 http://www.entraide-info.fr
5 Démarrage et arrêt du système Amorçage : Le MBR (Main Boot Record) est le 1 er secteur de démarrage. Il fait 512 octets 446 octets : Gestionnaire d amorçage (GRUB) 64 octets : Table des partitions (16 octets par partition) 2 octets : Vérification (valeur hexadécimale AA55) Sauvegarde du MBR dd if=/dev/sda of=/root/sauv-mbr bs=512 count=1 Restauration du MBR linux rescue dd if=/root/sauv-mbr of=/dev/sda bs=512 count=1 Chargeur : LILO (Linux Loader) : /etc/lilo.conf GRUB (Grand Unified Bootloader) : /boot/grub/grub.conf dispose d un shell GRUB /etc/grub.conf /boot/grub/menu.lst fichier de configuration de GRUB entrées du menu de GRUB GRUB2 (version pour Ubuntu) http://doc.ubuntu-fr.org/grub-pc Réinstallation du GRUB (après une installation de Windows par exemple) : linux rescue chroot /mnt/sysimage grub-install /dev/sda réinstalle le grub (en mode rescue) : pas sûr à 100% Autre méthode : Au démarrage, entrée de le menu de Grub, appuyer sur la touche [e] puis grub> root (hd0,0) grub> setup (hd0) Olivier D. Page 8 http://www.entraide-info.fr
Démarrage : Init /etc/inittab rc.sysinit niveau d exécution id:5:initdefault: Nota : le niveau d exécution par défaut est 5 Scripts : S00/K00 S99/K99 (S = start ; K = kill) /etc/rc.d/rc5.d/lien_vers_les_scripts Scripts système : ID : niveau : action /etc/rc.d/init.d/scripts_systeme (exemple : network) Nota : quand on invoque un niveau d exécution, on invoque les scripts service network reload est égal à /etc/rc.d/init.d/network reload chkconfig --list chkconfig <service> off on liste l état de tous les services selon le niveau d exécution désactive active le service pour tous les niveaux d exécution head /etc/rc.d/init.d/iptables # chkconfig 2345 08 92 # niv. d execution. ordre de Start ordre de Kill init 3 init t 30 3 shutdown <option> time passage en niveau d exécution 3 (5 secondes max / service) passage en niveau d exécution 3 (30 secondes max / service) (éteindre ou redémarrer) Olivier D. Page 9 http://www.entraide-info.fr
6 Gestion des utilisateurs Un utilisateur est défini par : UID : ID Utilisateur GID : Groupe principal Groupes secondaires Login + mot de passe permet l ouverture de session (locale distante : ssh, nfs ) Hiérarchie : root UID = 0 C est le n UID / GID qui est important Services UID = 1 à 499 fonctionnement services pas de shell Utilisateurs UID supérieur à 500 Changement d identité : su bob su - bob sudo <commande> /etc/sudoers Informations : prendre l identité prendre l identité + les variables (PATH, HOME ) exécuter la commande avec les droits root configuration des droits sudo (avec visudo) logname utilisateur terminal qui a ouvert la session (= who am i) whoami utilisateur en cours ( = id) id appartenance de groupes détaillés ( ~ groups) Fichiers de configuration : /etc/passwd comptes vipw /etc/shadow mots de passe + validité passwd pour les mots de passe /etc/group groupes vigr Commandes utilisateur : useradd [options] login usermod userdel Commandes groupes : groupadd [options] groupe1,groupe2 groupmod groupdel Options de création : /etc/default/useradd options par défaut d useradd /etc/skel fichiers par défauts dans $HOME des utilisateurs créés useradd -d /home2/toto m toto g gusers G ginfo,gtest s /bin/bash déplacement du répertoire home si usermod d... -g : groupe principal -G : groupes secondaires -s /bin/bash shell utilisé par défaut -s /bin/false pas de shell (pas d ouverture de session possible) Créer un utilisateur : useradd -d /home/toto -m -g utils -G groupe1,groupe2 s /bin/bash toto ou useradd toto Les paramètres sont définis dans /etc/default/useradd useradd D en affiche les options) Olivier D. Page 10 http://www.entraide-info.fr
passwd toto modifie /etc/shadow -l lock : verrouille le compte -u unlock : déverrouille le compte -S status du compte /etc/login.defs paramètres par défaut des mots de passe Olivier D. Page 11 http://www.entraide-info.fr
7 Gestion des disques /dev/ emplacement des périphériques Périphérique Disques IDE Disques SCSI / SATA / USB Disquettes DVD IDE DVD SCSI Point de montage /dev/hd[a-d] /dev/sd[a-zz] /dev/fd[0-7] /dev/hd[a-d] /dev/scd[0-7] fdisk (utilitaire de gestion des disques) : fdisk -l liste les partitions dans fdisk, m ouvre le menu (liste des commandes) fdisk /dev/sda w (écrire) n (nouvelle partition) q (quitter fdisk) p (lister les partitions) t (changer le tag), ensuite utiliser L pour lister les tags disponibles Lecteurs virtuels (.iso) : Ils sont contenus dans /dev/loop[0-7] LVM : dd if=/dev/hdc of=/root/boot-rso.iso mount -o loop /root/boot-rso.iso /mnt Créer un.iso Monter un.iso pvcreate vgcreate lvcreate vgextend lvextend Systèmes de fichiers (FileSystem, FS) : La taille dépend du groupe, pas des disques physiques Olivier D. Page 12 http://www.entraide-info.fr
Les fichiers L arborescence - fichier /bin binaires (commandes) d répertoire /sbin binaires système (ou root) l lien symbolique /dev gestion du matériel b type bloc (sda1 ) /boot noyau c caractère (tty ) /etc configuration du système p pipe /var fichiers variables (www, mail, spool) s socket /usr copie du contenu du DVD de la distrib. Olivier D. Page 13 http://www.entraide-info.fr
Concepts des FS Unix : Créer un FS revient à créer une structure de blocs Superbloc 1 er bloc : info sur le FS. Recopie tous les 8 ou 16Mo Inode infos sur les données Blocs de données données elles-mêmes (fichiers type d contiennent le nom des fichiers) Bloc d indirection Création des FS (1 ère étape) : obtenir de l aide sur le FS de type EXT3 Ext2 (FS Linux de base) mke2fs /dev/sdb1 Ext3 = Ext2 + journalisation mke2fs -j /dev/sdb2 Transformer de l Ext2 en Ext3 tune2fs j /dev /sdb1 Vérification du FS fsck Redimensionner le FS resize2fr man -k ext3 Montage La commande mount (2 ème étape) : mount [options] périphérique emplacement_existant # mount /dev/sdb1 /home/perso/disque mount liste des montages Options Types de FS -t ntfs cifs (partages windows) Autres -o ro (read only) default loop Démonter: umount /home/perso/disque umount -f /media/data (coupe directement), donc avant : fuser vm /media/data (voir les users) Montage au démarrage : /etc/fstab mount -a contient les montages définis au démarrage monte les lecteurs de fstab (pour vérifier) Périphérique point de montage Type de fs Options Dump Ordre fsck /dev/sda1 / ext3 default 1 1 LABEL=CentOS /media/centos iso9660 ro 0 2 /dev/sdb2 /data cifs noauto 0 2 Contenu de la fstab noauto permet à un utilisateur non root de faire un mount /data Nota : l automontage est possible avec autofs. Le fichier /etc/auto.master liste les montages possibles avec autofs. Ce point sera vu plus tard. Olivier D. Page 14 http://www.entraide-info.fr
8 Gestion de la mémoire et des ressources système Gestion de la mémoire par les systèmes Unix free utilisation mémoire (Mem = RAM, Swap) vmstat statistiques mémoire top état mémoire (temps réel) Swap sur partition : mkswap /dev/sdb5 créer le swap (1) swapon /dev/sdb5 activer le swap (2) swapon -s liste les swap swapoff /dev/sdb5 désactiver le swap Swap sur fichier: dd if=/dev/zero of=/swapfile bs=512 count=1024 crée un fichier /swapfile vide de 512Mo swapon /swapfile active le swap sur /swapfile Gestion des processus : Init 1 er processus PID=1 Daemon en tâche de fond (crond / httpd) Priorité des processus : De -20 (très prioritaire : seul root peut définir cette priorité) à +19 (peu prioritaire) nice n5 <commande> démarrer une commande avec un niveau de +5 renice <valeur> <PID> modifier la priorité d un PID existant Etats des processus : Z (zombi) cas d un processus dont le parent est killé. Il existe mais n agit plus Olivier D. Page 15 http://www.entraide-info.fr