HOWTO SLIS-HOWTO

Moreau Laurent

Carmi-Internet, Académie de Grenoble.

$Id: howto-slishowto.xml,v 1.4 2003/05/15 13:59:09 laurent Exp $


1. Introduction
2. Spécifications XML
2.1. DTD utilisée
2.2. Version XML
3. Structure du livre
3.1. Trame du projet de documention SLIS
3.2. Document "root"
3.2.1. Définition
3.2.2. Source
3.3. Entités externes
3.3.1. Définition
3.3.2. Source
3.4. Nommage
3.5. Arborescence
3.5.1. simple
3.5.2. détaillée
4. Rédaction d'un document
4.1. Tutoriel
4.2. Chapitres
4.3. Sections de niveau 1
4.4. Sections de niveau 2, 3, 4 et 5
4.5. Encodage des caractère spéciaux (Norme ISO-8859-1)
4.6. Validité d'un document
4.7. Sortie
5. Quelques balises utiles
5.1. Documention officielle
5.2. Commentaires
5.3. Liens
5.3.1. Internes (link)
5.3.2. Externes (ulink)
6. Travail coopératif
6.1. Contribuer au travail de rédaction
6.2. Utiliser CVS
7. Liens utiles

1. Introduction

Ce document à pour objectif de faciliter la rédaction du livre de documention relatif au projet SLIS

L' état d'avancement du travail de rédaction peut être consulté ici : http://slis.ac-grenoble.fr/doc/docbook/slis-howto

Commentaires, remarques :

2. Spécifications XML

2.1. DTD utilisée

Nous utilisons une DTD de type "Docbook"

Aujourd'hui :

  • Version : 4.1.2-1.0-14
  • Chemin : /usr/share/sgml/docbook/xml-dtd-4.1.2-1.0-14/docbookx.dtd (Redhat)

Hier :

  • Version : 4.1.2-1.0-8
  • Chemin : /usr/share/sgml/docbook/xml-dtd-4.1.2-1.0-8/docbookx.dtd (Redhat)

2.2. Version XML

  • Version 1.0

3. Structure du livre

Ce chapitre traite de la structure du livre "SLIS-HOWTO"

3.1. Trame du projet de documention SLIS

Cette "trame" à été rédigé lors de la rénion de travail du lundi 10 février 2003

******************************************

1  - Introduction générale
2  - Que fait SLIS ?
3  - Système et architecture réseau
4  - Installation d'un SLIS
5  - Mise en oeuvre du site local
6  - Le serveur web du SLIS
7  - Description de l'interface
8  - Déannage
9  - FAQ
10 - Développement
11 - Annexes

******************************************

Résumé

===========================================
Introduction générale :
===========================================

# comment utiliser cette documentation
# Historique
# objectif
# Evolution/développement
# Articulation
# license GPL


===========================================
Que fait SLIS ?
===========================================

# Résumé des caractéristiques (liens pointant vers les différentes sections)

	* routage avec translation d'adresse dynamique (masquerading)
    	* serveur de messagerie (SMTP/POP) avec gestion de files d'attentes optimis?s.
		(dialogue avec le routeur Numéris si celui-ci est compatible),
    	* proxy-cache web/ftp avec config automatique,et/ou proxy transparent.
	* authentification des accès au web via le proxy cache pour les utilisateurs
    	* Serveur DNS (cache),
    	* mise à jour automatique par réseau,
    	* maintenu et supervision à distance,
    	* configuration par interface web (avec possibilité de création automatique de
		comptes de messagerie par importation).
    	* maintenance d'une base permettant la sauvegarde des opérations de
		configuration pour une réinstallation du système en cas de crash-disque,
    	* serveur http pouvant être répliqué sur un serveur externe.
	* serveur http pouvant être redirigé de manière sécurisé vers un autre
		serveur du réseau local
    	* installation automatisée
    	* filtrage IP de sécurité
    	* planning horaire de fonctionnement par sous-réseaux prédéfinis,
    	* filtrage d'URLs avec bases maintenues (mise en oeuvre de l'outil squidGuard),
    	* serveur DHCP (non activé par défaut) et interface d'administration DHCP.
    	* serveur de fichiers local pour les rôles (fontions CyberEcole),
    	* possibilité de prise en main distante des stations du réseau de l'établissement
		par redirection de port temporaire
    	* possibilité de raccordement par VPN (vtun/IPSec)
	* annuaire LDAP.
	* filtrage de la messagerie sur le champ d'exp?iteur
	* anti-spam (anti relaying, filtrage des spams)
	* activation de modules (Bii, anti virus)

ref => http://slis.ac-grenoble.fr/home.php)

# Avantages de SLIS

	* Des fonctions adaptées aux situations d'enseignement
	* Une administration locale facilitée
	* Une architecture évolutive
	* La maintenance à distance

ref => http://www.cndp.fr/DOSSIERSIE/som41.htm

===========================================
Système et architecture réseau
===========================================

# architecture standard (trop D'IP, pas implémenté ...)
# variantes d'architecture
	* NAT
	* PPP
	* VPN
	* mixtes
# technologies utilisées
	* ADSL
	* câble
	* liaisons hertzienne
	* fibre optique
# intégration dans le réseau académique
	* Serveur DNS
	* Rsync
	* supervision
	* réseau de collecte (régional)
	* concentrateur VPN
	* messagerie
	* filtrage IP
	* plan d'adressage IP

ref => http://slis.ac-grenoble.fr/archi-slis.html


===========================================
Installation d'un SLIS
===========================================

# matériel nécessaire
	* hardware
		- HDD
		- RAM
		- cartes ethernet
		- Onduleur ...
	* software
		- dkb
		- dks (en possession de la dks, lien vers annexe DKS (contenu),et pointeur vers SLIM...)
		- cd
# procédure d'installation
# branchement du SLIS
# validation du fonctionnement

===========================================
Mise en oeuvre du site local
===========================================

# configuration de l'intranet
	* TCP/IP
	* sous réseaux
	* messagerie
	* navigation
	* cyber-école
# définition des rles
	* administrateur
	* webmaster
# Autres serveurs
	* Serveur de fichier (Harp, altair, mrpet ...)
	* SambaEdu (LDAP)
	* serveur Http intranet autre que SLIS (redirection)
	* serveur SQL

===========================================
Le serveur web du SLIS
===========================================

# serveur web
	* repertoire de stockage (public)
	* transfert FTP
# réplication serveur extranet
# bii
# php et base SQl

===========================================
Guide d'utilisation de l'interface d'administration
===========================================

# introduction (mode novice, mode expert)
On reprends ensuite l'ensemble de l'interface point par point :
# utilisateur
# fonctions avancées
# aide
# valider
# annuler

===========================================
Dépannage
===========================================

# d'un point de vue administrateur locale
# d'un point de vue des techniciens en charge de la maintenance (niveau académique)


===========================================
FAQ
===========================================

# Voir FAQ Creteil (http://aleu.ac-creteil.fr/faqclient/index.php?voir=2)

===========================================
DEVELOPPEMENT
===========================================

===========================================
Annexes
===========================================

# disquette setup (DKS)


===========================================

"#" => section de niveau 1
"*" => section de niveau 2
"-" => section de niveau 3

===========================================

3.2. Document "root"

3.2.1. Définition

  • Chaque document XML a une structure LOGIQUE et une structure PHYSIQUE.
  • Le document root slishowto.xmlcontient uniquement la "structure logique" du livre, du chapitrage aux sections de niveau 1.
  • A chaque section de niveau 1 correspond une entit?externe (Les "contenus physiques" = fichiers XML)

Note

Le document root slishowto.xml n'a pas lieu d'être modifié

3.2.2. Source

Source du document root "slishowto.xml" :


<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE book PUBLIC
"-//OASIS//DTD DocBook XML V4.1.2//EN"
"/usr/share/sgml/docbook/xml-dtd-4.1.2-1.0-8/docbookx.dtd"
[<!ENTITY % content SYSTEM "content.ent">%content;]>

<!--===================== Ouverture du livre ==============================-->

<book>

<!--====================== Informations livre ==============================-->

<bookinfo>
<title>SLIS-HOWTO
  <mediaobject>
   <imageobject>
    <imagedata fileref="img/slis.png" format="PNG" scalefit="1"/>
  </imageobject>
  </mediaobject>
</title>
<authorgroup>
<affiliation><orgname>Carmi-Internet, Académie de Grenoble</orgname></affiliation>
</authorgroup>
<edition>User's Guide version 1.0 for SLIS V3.0</edition>
<releaseinfo>$Id: howto-slishowto.xml,v 1.4 2003/05/15 13:59:09 laurent Exp $</releaseinfo>
</bookinfo>

<!--===================== Introduction ==================================-->

<chapter id="introduction">
 <title>Introduction</title>
   &utilisation_doc;
   &historique;
   &objectif;
   &evolution_et_developpement;
   &articulation;
   &license_gpl;
</chapter>

<!--==================== que fait SLIS ==================================-->

<chapter id="que_fait_slis">
 <title>Que fait SLIS</title>
   &resume_des_caracteristiques;
   &avantage_de_slis;
</chapter>

<!--==================== systeme_et_architecture_reseau ===================-->

<chapter id="systeme_et_architecture_reseau">
 <title>Systeme_et_architecture_réseau</title>
   &architecture_standard;
   &technologies_utilisee;
   &variantes_d_architectures;
   &integration_reseau_academique;
</chapter>

<!--==================== Installation d'un slis ============================-->

<chapter id="installation d_un_slis">
 <title>Installation d'un SLIS</title>
   &materiel_necessaire;
   &procedure_d_installation;
   &branchement_du_slis;
   &validation_du_fonctionnement;
</chapter>

<!--==================== mise_oeuvre_du_site_loca ========================-->

<chapter id="mise_oeuvre_du_site_local">
 <title>Mise en oeuvre du site local</title>
   &configuration_de_l_intranet;
   &definition_des_roles;
   &autres_serveurs;
</chapter>

<!--==================== le_serveur_web_du_slis ==========================-->

<chapter id="le_serveur_web_du_slis">
 <title>Le serveur web du SLIS</title>
   &serveur_web;
   &replication_serveur_extranet;
   &bii;
   &php_et_base_sql;
</chapter>

<!--==================== description_de_l_interface_d_administration ==========-->

<chapter id="description_de_l_interface_d_administration">
 <title>Description de l'interface d'adminsitration</title>
   &introduction;
   &utilisateur;
   &valider;
   &annuler;
   &fonctions_avancees;
   &aide;
</chapter>

<!--==================== D?annage ===================================-->

<chapter id="depannage">
 <title>D?annage</title>
   &administrateur_local;
   &techniciens_academique;
</chapter>

<!--==================== FAQ ========================================-->

<chapter id="faq">
 <title>FAQ</title>
    &faq;
</chapter>

<!--==================== developpement ================================-->

<chapter id="developpement">
 <title>Développement</title>
   &developpement;
</chapter>

<!--=================== annexes =====================================-->

<chapter id="annexes">
 <title>Annexes</title>
   &disquette_setup;
</chapter>

<!--=================== Fermeture du livre ==============================-->

</book>


3.3. Entités externes

3.3.1. Définition

  • Physiquement, le document se compose d'unités appelées entités.
  • Le fichier content.ent défini les entités externes utilisées, leurs noms, le fichier *.xml associé ainsi que leur chemin dans l'arborescence adoptée.
  • C'est dans ces fichiers XML que les r?acteurs vont travailler (Les "contenus physiques").

Note

Le fichier de définition des entités content.ent n'a pas lieu d'être modifié !

3.3.2. Source

Détail du fichier content.ent :


<!ENTITY	utilisation_doc				SYSTEM	"010_introduction/utilisation_doc.xml">
<!ENTITY	historique					SYSTEM	"010_introduction/historique.xml">
<!ENTITY	objectif					SYSTEM	"010_introduction/objectif.xml">
<!ENTITY	evolution_et_developpement	SYSTEM	"010_introduction/evolution_et_developpement.xml">
<!ENTITY	articulation					SYSTEM	"010_introduction/articulation.xml">
<!ENTITY	license_gpl				SYSTEM	"010_introduction/license_gpl.xml">

<!ENTITY	resume_des_caracteristiques	SYSTEM	"020_que.../resume_des_caracteristiques.xml">
<!ENTITY	avantage_de_slis			SYSTEM	"020_que.../avantage_de_slis.xml">

<!ENTITY	php_et_base_sql				SYSTEM	"030_systeme.../php_et_base_sql.xml">
<!ENTITY	architecture_standard			SYSTEM	"030_systeme.../architecture_standard.xml">
<!ENTITY	technologies_utilisee			SYSTEM	"030_systeme.../technologies_utilisee.xml">
<!ENTITY	variantes_d_architectures		SYSTEM	"030.../variantes_d_architectures.xml">
<!ENTITY	integration_reseau_academique	SYSTEM	"030.../integration_reseau_academique.xml">

<!ENTITY	materiel_necessaire			SYSTEM	"040.../materiel_necessaire.xml">
<!ENTITY	procedure_d_installation		SYSTEM	"040.../procedure_d_installation.xml">
<!ENTITY	branchement_du_slis			SYSTEM	"040.../branchement_du_slis.xml">
<!ENTITY	validation_du_fonctionnement	SYSTEM	"040.../validation_du_fonctionnement.xml">

<!ENTITY	configuration_de_l_intranet		SYSTEM	"050_mise.../configuration_de_l_intranet.xml">
<!ENTITY	definition_des_roles			SYSTEM	"050_mise.../definition_des_roles.xml">
<!ENTITY	autres_serveurs				SYSTEM	"050_mise.../autres_serveurs.xml">

<!ENTITY	serveur_web				SYSTEM	"060_le_serveur.../serveur_web.xml">
<!ENTITY	replication_serveur_extranet 	SYSTEM	"060.../replication_serveur_extranet.xml">
<!ENTITY	bii						SYSTEM	"060_le_serveur.../bii.xml">
<!ENTITY	php_et_base_sql				SYSTEM	"060_le_serveur.../php_et_base_sql.xml">

<!ENTITY	introduction				SYSTEM	"070_description.../introduction.xml">
<!ENTITY	utilisateur					SYSTEM	"70_description.../utilisateur.xml">
<!ENTITY	fonctions_avancees			SYSTEM	"70_description.../fonctions_avancees.xml">
<!ENTITY	aide						SYSTEM	"70_description.../aide.xml">
<!ENTITY	valider					SYSTEM	"70_description.../valider.xml">
<!ENTITY	annuler					SYSTEM	"70_description.../annuler.xml">

<!ENTITY	administrateur_local			SYSTEM	"080_depannage/administrateur_local.xml">
<!ENTITY	techniciens_academique		SYSTEM	"080_depannage/techniciens_academique.xml">

<!ENTITY	faq						SYSTEM	"090_faq/faq.xml">
<!ENTITY	developpement				SYSTEM	"100_developpement/developpement.xml">

<!ENTITY	disquette_setup				SYSTEM	"110_annexes/disquette_setup.xml">

3.4. Nommage

  • Les sections de niveau 1 sont matérialisées par des fichiers *.xml ( entités ) rangés selon l'arborescence suivante
  • ID : de manière générale, tout nom d'"ID" sera précédé par la valeur numérique correspondant au chapitre auquel ils appartient
  • Les nom des images et schémas seront précédé par la valeur numérique correspondant au chapitre auquel ils appartiennent (EX : "020_mon_image.PNG pour une image relative au chapitre "020_que_fait_slis")"
  • Les espaces sont matérialisés par "_" (underscore)

3.5. Arborescence

  • Chaque section de niveau 1 est défini par un fichier situé dans le sous-repertoire correspondant à son chapitre
  • Les images et schémas sont placés dans le sous repertoire /img

3.5.1. simple

  • Placé à la racine du projet de documentation SLIS, je vois :
/010_introduction
/020_que_fait_slis
/030_systeme_et_architecture_reseau
/040_installation_d_un_slis
/050_mise_oeuvre_du_site_local
/060_le_serveur_web_du_slis
/070_description_de_l_interface
/080_depannage
/090_faq
/100_developpement
/110_annexes
/img
slishowto.xml
content.ent

3.5.2. détaillée

  • Arborescence détaillée laissant apparaitre le nom des fichiers xml définissant physiquement le contenu des sections de niveau 1:
===================================
RACINE SLIS-HOWTO
===================================
	|
-------------------------------------------------
/010_introduction
-------------------------------------------------
	|
	+--/utilisation_doc.xml
	|
	+--/historique.xml
	|
	+--/objectif.xml
	|
	+--/evolution_et_developpement.xml
	|
	+--/articulation.xml
	|
	+--/license_gpl.xml
	|
-------------------------------------------------
/020_que_fait_slis
-------------------------------------------------
	|
	+--/resume_des_caracteristiques.xml
	|
	+--/avantage_de_slis.xml
	|
-------------------------------------------------
/030_systeme_et_architecture_reseau
-------------------------------------------------
	|
	+--/php_et_base_sql.xml
	|
	+--/architecture_standard.xml
	|
	+--/technologies_utilisee.xml
	|
	+--/variantes_d_architectures.xml
	|
	+--/integration_reseau_academique.xml
	|
-------------------------------------------------
/040_installation_d_un_slis
-------------------------------------------------
	|
	+--/materiel_necessaire.xml
	|
	+--/procedure_d_installation.xml
	|
	+--/branchement_du_slis.xml
	|
	+--/validation_du_fonctionnement.xml
	|
-------------------------------------------------
/050_mise_oeuvre_du_site_local
--------------------------------------------------
	|
	+--/configuration_de_l_intranet.xml
	|
	+--/definition_des_roles.xml
	|
	+--/autres_serveurs.xml
	|
-------------------------------------------------
/060_le_serveur_web_du_slis
-------------------------------------------------
	|
	+--/serveur_web.xml
	|
	+--/replication_serveur_extranet.xml
	|
	+--/bii.xml
	|
	+--/php_et_base_sql.xml
	|
-------------------------------------------------
/070_description_de_l_interface
-------------------------------------------------
	|
	+--/introduction.xml
	|
	+--/utilisateur.xml
	|
	+--/fonctions_avancees.xml
	|
	+--/aide.xml
	|
	+--/valider.xml
	|
	+--/annuler.xml
	|
-------------------------------------------------
/080_depannage
-------------------------------------------------
	|
	+--/administrateur_local.xml
	|
	+--/techniciens_academique.xml
	|
-------------------------------------------------
/090_faq
-------------------------------------------------
	|
	+--/faq.xml
	|
-------------------------------------------------
/100_developpement
-------------------------------------------------
	|
	+--/developpement.xml
	|
-------------------------------------------------
110_annexes
-------------------------------------------------
	|
	+--/disquette_setup.xml
	|

4. Rédaction d'un document

4.2. Chapitres

  • Les chapitres sont définis dans le document root et n'ont pas lieu d'être modifiés
  • L' Id d'un chapitre est précédé de la valeur numérique correspondant à son niveau ( "010_introduction" pour le premier chapitre ...)

4.3. Sections de niveau 1

  • On ne fera aucune déclaration relative à la grammaire dans ces documents hormis la version du XML employée et le type d'encodage utilisé. Ces deux spécifications sont résumées dans la ligne suivante :
    
    <?xml version="1.0" encoding="iso-8859-1"?>
    
    
    Cette ligne doit apparaître en tête du document. Ensuite, on commencera directement par la balise "sect2"
  • L' Id d'une section de niveau 1 est précédé de la valeur numérique correspondant au niveau de son chapitre ( "010_utilisation_doc" pour la premiere section de niveau 1 du chapitre 1...)

4.4. Sections de niveau 2, 3, 4 et 5

  • Elles sont inclus dans le fichier de section de niveau 1 auquel elles appartiennent
  • Chaque rédacteur est libre d'ajouter des sous sections pour structurer la section de niveau 1 qu'il rédige
  • on notera la profondeur maximum des sous sections = 5 niveaux

4.5. Encodage des caractère spéciaux (Norme ISO-8859-1)

On trouvera ici la table d'équivalence des caractères spéciaux de la norme "8859-1"

Note

L'editeur de texte avancé de KDE, "Kate", permet de spécifier l'encodage utilisé. On trouvera cette option dans le menu "Setup", section "Editor" commande "spelling".

4.6. Validité d'un document

  • Avant d'ajouter vos documents à l'arborescence CVS, vérifier la validité de ces derniers (utilisation d'un parseur "validant")

4.7. Sortie

Deux commandes connue à ce jour pour sortir une forme à partir d'une structure XML : XSLTPROC et XMLTO

  • xsltproc --param section.autolabel 1 -o /tmp/articles.html /usr/share/sgml/docbook/xsl-stylesheets/html/docbook.xsl articles.xml
  • xmlto html articles.xml

5. Quelques balises utiles

5.1. Documention officielle

La documention officielle "Docbook" se trouve ici

5.2. Commentaires

  • il est impératif de commenter vos écrits afin que chacun s'y retrouve.
    Un commentaire est commencé par "<!--" et se termine par "-->" :
    
    <!-- exemple de commentaire -->
    
    

5.3. Liens

5.3.1. Internes (link)

  • cette balise sert à créer un lien vers une "id" (identité interne au document
    ------------------------------------------------------------------------ Ceci est un <link linkend="link">Liens vers l"id" link</link> ------------------------------------------------------------------------

    Résultat :

    Ceci est un Liens vers l"id" link

5.3.2. Externes (ulink)

  • cette balise sert à créer un lien vers une "URL"
    ------------------------------------------------------------------------ Ceci est un liens pointant vers la page d'acceuil de <ulink url="http://slis.ac-grenoble.fr">SLIS</ulink> ------------------------------------------------------------------------

    Résultat :

    Ceci est un liens pointant vers la page d'acceuil de SLIS

6. Travail coopératif

6.1. Contribuer au travail de rédaction

  • Pour participer au projet de rédaction "slis-howto", contacter :
  • La gestion des versions est assuré par un serveur CVS hébergé par l'académie de lyon (Merci à Jean Navarro et Stéphane Chaudy)
  • On peut visualiser l'ensemble via un "viewcvs" installé à l'adresse suivante : http://slis.ac-lyon.fr/cvs/viewcvs.cgi

6.2. Utiliser CVS

Avant de vous connecter au serveur CVS, créer un repertoire destiné son utilisation sur votre machine.

  • Pour se connecter au serveur CVS de Lyon :
    #cvs -d:pserver:thierry@slis.ac-lyon.fr:/var/lib/cvs/doc login 
  • Pour récupérer la stucture entière :
    #cvs -d:pserver:thierry@slis.ac-lyon.fr:/var/lib/cvs/doc checkout slis-howto
  • Pour qu'une modification soit prise en compte :
    #cvs commit "mon_fichier_?mettre_jour"
  • Pour se déconnecter :
    #cvs -d:pserver:thierry@slis.ac-lyon.fr:/var/lib/cvs/doc logout 

7. Liens utiles