Administration - Système et Réseau,  Philippe.Dax@enst.fr,  © ENST - 1996-2003

Plan

  1. Plan
  2. Rôle de l'administrateur
  3. Niveaux d'administration
  4. Connaissances de l'administrateur
  5. Les commandes d'administration
  6. Répertoires d'administration
  7. /etc
  8. Super utilisateur
  9. Découpage des partitions disque
  10. Gestion de l'espace disque
  11. Gestion des imprimantes
  12. Gestion des périphériques
  13. Crontab
  14. Journaux d'administration (logs)
  15. Gestion des sauvegardes
  16. Installations
  17. Services réseaux TCP/IP
  18. Inetd
  19. NFS
  20. NIS
  21. DNS
  22. Sendmail, Postfix
  23. News
  24. Administration réseau
  25. Références

Rôle de l'administrateur

La profession

ne pas confondre avec l'Administration

profession de généraliste peu connue

mais très recherchée

Ses fonctions

maintenir le bon fonctionnement de son parc

résoudre tout type d'incidents

gérer les utilisateurs (création, expiration, limitations)

organiser et maintenir les systèmes de fichiers

surveiller la sécurité du système

configurer au mieux les machines

installer et mettre à jour les nouveaux logiciels

enrichir l'environnement de base fourni par le constructeur

administrer le réseau local et l'accès au réseau public

planifier l'évolution de son parc

choisir de nouveaux équipements

participer à des développements

guider et conseiller les utilisateurs

fonction de pilote

Niveaux d'administration

Une seule machine

serveur: forte responsabilisation sur la disponibilité des services

poste individuel: peut être délégué aujourd'hui à son propriétaire

Un parc de machines homogènes

distribution des ressources

mise en commun des ressources

Un parc de machines hétérogènes

s'efforcer de rendre l'ensemble intéropérable dans la transparence

la complexité croît avec le taux d'hétérogénéité

Un site entier (machines + réseau)

rechercher un point d'équilibre puis le maintenir stable en permanence

par l'ampleur de la tâche, on peut devenir un gourou :-)

Un site entier dans le temps (moyen et long terme)

cohabitation des anciennes et nouvelles versions pour assurer une pérennité

on peut accéder au grade de wizard :-)

Connaissances de l'administrateur

Connaître Unix

ses concepts et son architecture (noyau, processus, file-system)

ses utilitaires et ses outils

ses langages

ses forces et ses faiblesses

Connaître l'environnement

les équipements matériels

les produits logiciels

les besoins des utilisateurs

s'entendre avec les autres administrateurs système

Suivre l'évolution

être en état permanent de veille technologique

Les commandes d'administration

Langages d'administration

shell (Bourne)

expressions régulières

awk

perl

Outils d'administration de base

sed

grep

find

Outils d'administration spéfifiques

admintool (Sun), smit (Aix), sysadm (SysV)

tivoli (général)

Manuels: section 8

man

Répertoires d'administration

/etc

répertoire au coeur de l'administration

tables système (mapping, configs)

/dev

périphériques (mknod)

/usr

utilitaires et bibliothèques du constructeur ou du distributeur

/usr/local

utilitaires et bibliothèques du domaine public

/opt

progiciels optionels sous licences

/var, /var/adm, /var/spool, /var/tmp

données variables à longue durée de vie

/tmp

fichiers temporaires à très courte durée de vie

/etc

Démarrage du système

/etc/rc.boot

/etc/rc.single (montage de / et /usr)

/etc/rc (lu par le processus init, passage en "multi-user"

/etc/rc.local (lancé par /etc/rc)

/etc/rc.inittab (changement de modes en SystemV)

/etc/init.d, /etc/rc0.d/, /etc/rc1.d/, /etc/rc2.d/, /etc/rc3.d/ (SysV)

Utilisateurs

/etc/passwd, /etc/shadow

/etc/group

Système de fichiers

/etc/fstab (BSD), /etc/vfstab (SysV)

/etc/exports (BSD), /etc/dfs/dfstab (SysV)

Réseau

/etc/hosts, /etc/services, /etc/networks, /etc/netmask

/etc/netgroup (NIS)

/etc/inetd.conf

Super utilisateur

login root (uid=0)

tous les droits sur tous les objets sur une machine locale

aucun droits sur les machines distantes (NFS)

droit de contrôle sur les processus

droit d'accès à tous les fichiers (rwx)

inconvénient: pas d'identité de la personne

possibilité d'interdire ce login (/etc/ttytab)

seul à pouvoir travailler en mode "single-user"

responsable de la cohérence des informations au boot

Commande su

passage en super-utilisateur

cette action (réussite ou échec) est enregistrée

Découpage des partitions disque

Partitions, slices

formatage, labélisation

8 partitions (a à h, partition c = tout le disque)

sur certains systèmes il est impossible de partitionner

sur certains systèmes partitionnement à chaud (AIX)

Système de fichier (file-system)

4 zones (boot-block, super-block, i-list, data)

construction d'un file-system (mkfs, newfs)

newfs -o space -m 1 -i 8192 -c 32 /dev/rsd0h

montage d'un file-system (mount)

mkdir /home/hostname
mount /home/hostname /dev/sd0h

le montage d'un fs peut occulter l'ancienne arborescence

démontage d'un file-system (umount)

umount /home/hostname

Fichiers

/etc/format.dat (caractéristiques physiques)

Commandes

format, newfs, mkfs, dkinfo, df -t ufs, df -i, fsck

Gestion de l'espace disque

Espace système

évaluer la taille des file-systems et leur évolution

croissance des journaux (problème des boucles d'erreurs)

/var/log/, /var/adm/, /var/spool/

confiner certains répertoires dans des file-systems

/, /tmp, /var, /var/log/, /var/spool/mail/, /var/spool/news/

Espace swap

évaluer la taille du swap selon les applications requises

généralement: espace swap = double espace mémoire RAM

placer /tmp dans le swap (si possible), droits 1777

Espace utilisateur

prévoir et contrôler les débordements (df, du)

df : état courant d'un file-system (taux d'occupation)

df -t ufs (disques locaux), df -i (inodes), df -k (SysV)

du -s (sommation)

procéder à des migrations d'arborescences utilisateur

Gestion des imprimantes

Alternatives

serveur de spool

direct

Fichiers

répertoire de spool: /var/spool/lpd/

configuration (BSD): /etc/printcap

configuration (System V): /usr/adm/lp/

journal d'erreurs: /var/adm/lpd-errs

socket Unix: /dev/printer

autorisations d'accès: /etc/hosts.lpd

Commandes

BSD: lpd (daemon), lpr, lpq, lprm, lpc, pac (comptabilité)

SysV: lpd (daemon), lp, lpsched, lpshut, lpstat, cancel, lpadmin

Gestion des périphériques

Fichiers

répertoire /dev

/dev/MAKEDEV

terminaux: /etc/ttytab, /etc/gettytab, /usr/lib/terminfo/*

imprimantes: /etc/printcap

modem: /etc/remote, /etc/modemcap

Commandes

mknod type major minor device (type = c ou b)

mknod c 7 21 /dev/tty21

réseau: ifconfig

ifconfig le0
ifconfig le0 monhote netmask 0xfffffe0 broadcast 137.194.161.255

man (section 4)

man 4 le

Crontab

Principe

déclenchement d'actions à des dates pré-programmées

Fichiers

répertoire /var/spool/cron/crontabs/

minutes heures jours mois jour/semaine commande

"*" = toutes les occurrences, "," = liste, "-" = intervalle

0,15,30,45 * * * * /usr/local/adm/check-nis 1>/dev/null 2>&1
00 01 * * * nice -10 find /inf -name core -exec rm -f {} \;
10 03 * * 1-6 nice -10 /usr/local/adm/sauvegarde-daily
30 05 * * 0 /usr/local/adm/savelog-weekly
30 06 1 * * /usr/local/adm/savelog-monthly
00 00 1 1 * /usr/local/bin/happy-new-year

pipe nommé /var/spool/cron/FIFO

Commandes

cron: analyse des fichiers crontabs et exécute les actions

crontab -l loginname (lister), crontab -e loginname (éditer)

at et batch

echo "commande args" | at 08.00 (date ultérieure)
batch <<! (immédiatement)
commande args
!

Journaux d'administration (logs)

Principe

notifier les actions dans un fichier en rallongement (>>)

les journaux peuvent être gérés par le daemon syslogd

orientation des journaux: console, mail, fichier, machine

types de journaux (kern, daemon, mail, news,...)

niveaux de sévérité d'erreurs (critic, debug, notice, info,...)

Fichiers

répertoires: /var/log/, /var/adm/

configuration: /etc/syslog.conf

Commandes

daemon syslogd

Fonctions C

openlog()

syslog(message)

closelog()

Gestion des sauvegardes

File-system (totales ou incrémentales)

dump, restore, ufsdump, ufsrestore, rdump, rrestore

umount /file-system
dump 0uf /dev/rst0 /file-system

Arborescences

tar

tar cvbf 200 /dev/rst0 ./directory
tar xpvf /dev/rst0
tar cvBf - directory | (cd /new; tar xpBf -)

bar (noms de fichiers très longs - syntaxe identique à tar)

cpio (orienté filtre et expressions régulières)

find ./directory -print -depth | cpio -oBc /dev/rst0

pax (tar/cpio)

Installations

Fichiers

lire les README, INSTALL, ChangeLog, TODO, Copyright

maîtriser les Makefile, Imakefile, configure.{in,ac}

cible install:

souvent adapter les Makefile et parfois les configure.in

Commandes

configure (création des Makefile adaptés à l'environnement local)

install:

install -m 755 -s -o root -g staff commande /usr/local/bin

diffusion d'installation: rdist, rsync

Services réseaux TCP/IP

Principe

correspondance nom symbolique <-> numéro TCP/IP

Fichiers

/etc/hosts (mapping no. IP/nom de hôte au boot seulement)

127.0.0.1 localhost
137.194.160.21 horla

/etc/services (mapping nom de service/no. de service)

ftp 21/tcp telnet 23/tcp smtp 25/tcp mail

/etc/rpc (mapping nom de procédure/no. de procédure)

/etc/networks (mapping nom de réseau/no de réseau)

/etc/protocols (mapping nom de protocole/no. de protocole)

/etc/ethers (mapping nom de machine/no. Ethernet)

/etc/inetd.conf

Commandes

ping, spray, netstat, route, traceroute

Inetd

Principe

sous-traiter l'écoute des demandes de services réseaux

soulager l'occupation de l'espace swap

prétraiter l'établissement de la communication

le service sollicité voit l'entrée stdin et la sortie stdout

Fichiers

/etc/inetd.conf

service type proto flags owner path args

telnet stream tcp nowait root /usr/etc/in.telnetd in.telnetd
talk dgram udp wait root /usr/etc/in.talkd in.talkd

Commandes

daemon inetd

kill -HUP inetd pour prise en compte de /etc/inetd.conf

NFS

Principe

montage de file-systems distants

indépendance des architectures (milieu hétérogène)

transparence de l'aborescence

serveurs sans états

Fichiers

/etc/fstab, /etc/vfstab

/dev/sd0h /home/hostname 4.2 rw,soft,intr 1 4
ulysse:/usr/local /usr/local nfs rw,soft,intr 0 0

/etc/exports, /etc/dfs/dfstab

/etc/mtab

Commandes

mount, umount, exportfs, showmount

daemons: rpc.mountd, nfsd, biod, keyserv, portmap

Automounter

daemons: automount, amd

fichiers: /etc/auto.master, /etc/auto.direct

NIS

Principe: administration centralisée

avantage: faciliter l'administration

inconvénient: charge du réseau, problèmes de sécurité

Fichiers

tables de référence dans /etc

passwd, group, netgroup, hosts, rpc, services, networks,...

déterminer un domaine: domainname

maps NIS dans /var/yp/nom_du_domaine

/var/yp/Makefile

Commandes

serveur maître (daemons: ypserv, ypxfrd)

refaire les maps: ypmake map ...

serveur esclave (daemons: ypserv, rpc.ypupdated)

client (daemon: ypbind)

changement de mots de passe (daemon: rpc.yppasswdd)

lister une map: ypcat -k mapname

connaître son serveur: ypwhich

DNS

Principe: service de nommage

associer un nom à un numéro IP (échelle mondiale)

fonctions: gethostbyname(), gethostbyaddr()

structure hiérarchisée de domaines (enst.fr)

autorité déléguée sur le serveur primaire (SOA)

Fichiers

/etc/named.conf sur un serveur (primaire ou secondaire)

/etc/resolv.conf (resolver)


domain  enst.fr
nameserver 137.194.2.81
nameserver 137.194.2.16

bases de données: domain.zone, domain.rev


horla.enst.fr.  IN  A  137.194.160.21
                IN  MX 10  inf.enst.fr.
                IN  MX 50  enst.enst.fr.


21.160.194.137  IN  RR horla.enst.fr.

Commandes

nslookup

dig

host

Sendmail, Postfix

Principe: agent MTA

acheminement par le mécanisme du "store and forward"

aiguillage du mail selon son adresse dans les champs To: Cc: Bcc:

délivrance du mail selon son adresse dans le champ From:

réécriture de l'adresse sous forme canonique

détermination du triplet (mailer, relai, user)

Fichiers

/etc/sendmail.cf

/var/spool/mail/

/var/spool/mqueue/

/etc/aliases

~/.forward

Commandes

/usr/lib/sendmail -bd -q1h (lancement du daemon smtp)

/usr/lib/sendmail -q (reprocessing des queues)

/usr/lib/sendmail -bt (tests des règles)

mailq (lister les queues)

mail -v user

telnet host smtp

News

Gestionnaires de news

Bnews

Cnews

Inn

Fichiers

répertoire d'administration: /usr/local/news

répertoire de dépot des articles: /var/spool/news

catalogue des news actives: /usr/local/news/active

historique des news (format dbm): /usr/local/news/history*

abonnement du site: /usr/local/news/newsfeeds

autorisations d'accès: /usr/local/news/hosts.nntp

Commandes

inews

expire

ctlinnd (client admin pout Inn)

Administration réseau

SNMP (Simple Network Management Protocol)

Base d'objets: MIB (Management Information Base)

Structure SMI (arbre numéroté, noeuds et feuilles)

attribut = valeur

types: string, integer, counter

accessibilité: read-only, community

commandes SNMP: get, getnext, put, trap

Implémentation de la MIB: objets du noyau (/dev/kmem)

daemon: snmpd

commandes utilisateur: snmpi (Isode), snmpget (MIT)

Références

Administration et Sécurité

Ressources Informatique et Réseau