Dans ce numéro, on achève de présenter les commandes Unix de base, et on se lance dans les choses sérieuses en matière de sécurité informatique. On attaque aussi des sujets plus techniques en LATEX.
À suivre au mois de janvier, le prochain stage informatique: on y
parlera de LATEX, de forum, du logiciel de dessin xfig
... et de
ce que vous nous suggérerez!
Comme dans chaque numéro, les conseils de lecture et les bonnes adresses:
http://www.eleves.ens.fr:8080
http://www.eleves.ens.fr:8080/tuteurs/docs/hublot/
Nous sommes toujours à votre disposition pour toutes questions et
suggestions: tuteurs@clipper
.
Vous pouvez aussi mettre un mot dans le casier de Marie-Lan Nguyen.
Enfin, n'oubliez pas que quand vous tapez qui
, les tuteurs
ont leur nom souligné: n'hésitez pas à nous solliciter!
Cette rubrique porte sur l'utilisation pratique des machines Unix et de LATEX. Ce mois-ci, on présente les commandes pour renommer, déplacer copier et détruire des fichiers. La section «Config conscrits» explique comment faire du copier-coller. système de fenêtrage. Enfin, la rubrique LATEX explique ce que sont les packages, et quels sont les plus courants.
On achève ce mois-ci le tour d'horizon des commandes Unix de base, pour la
gestion quotidienne des fichiers. Les mois suivants, on verra divers petits
logiciels, ainsi que la façon d'enchaîner des commandes, et les «jokers».
Si vous êtes allergiques au clavier, n'oubliez pas qu'il existe aussi des
gestionnaires de fichiers à la souris sur les stations (le spartiate
xfm
et le plus joli et plus lourd kfm
). Cela dit, si vous
êtes connectés à distance, vous ne pourrez utiliser que les commandes clavier;
il est donc utile de les connaître...
Sert à faire une copier d'un fichier, selon la syntaxe suivante:
brick ~ $ cp fichier nouveau
fichier
est le nom du fichier existant, nouveau
est le nom de la copie.
Cette commande sert à la fois à renommer et à déplacer les fichiers. Pour renommer, la syntaxe est la suivante:
brick ~ $ mv fichier nouveau
Le
premier nom est le nom actuel du fichier, nouveau
est le
nouveau nom du fichier. Pour déplacer un fichier, on indique le nom du
fichier, suivi du nom du répertoire où l'on veut placer le fichier:
brick ~ $ mv commentaires DEA/
Cette commande place le fichier commentaires
dans le
sous-répertoire DEA/
de votre compte.
rm
sert à effacer un fichier, avec la
syntaxe suivante:
brick ~ $ rm fichier
rm: remove fichier (yes/no)? y
À la demande de confirmation, répondez pas yes
ou simplement
y
. Si vous répondez autre chose, le fichier ne sera pas
effacé.
mv
et
rm
. rm
ne fonctionne pas sur le principe de la corbeille des
Macs ou des PC Windows, il ne déplace pas les fichiers dans un «endroit» de
stockage avant destruction. Un fichier effacé est vraiment effacé (mais
le SPI fait des sauvegardes toutes les nuits, adressez-vous à eux si vous
effacez un fichier par mégarde: spi@clipper
).cp
, mv
et
rm
sont en fait des alias* sur les commandes cp -i
,
mv -i
, rm -i
(ou, pour le dire autrement, par défaut,
l'option -i
est mise). C'est l'option interactive, qui demande
confirmation avant d'écraser un fichier, ou de l'effacer. C'est donc une
sécurité.
Mais cette option n'est pas activée partout: le plus souvent, quand vous vous
retrouverez sur un système Unix hors de l'ENS, il n'y aura pas cette sécurité,
et rm
effacera vos fichiers sans demander confirmation. Soyez donc
prudents...
Ces trois commandes sont expliquées sur le site des tuteurs:
/tuteurs/unix/fichiers.html
. Vous trouverez également des
exercices corrigés sur mv
et cp
:
/tuteurs/unix/exercices/cp_mv.html
.
Le mois prochain, on présentera l'utilitaire less
, qui sert à
regarder des fichiers texte sans les modifier.
Le copier-coller consiste à recopier un bout de texte pour le coller ailleurs, soit dans le même document, soit ailleurs. Les logiciels manipulant du texte comportent des commandes permettant de faire du copier-coller, avec raccourcis claviers ou menus; on peut aussi utiliser la souris (ce que la souris sélectionne est gardé en mémoire, le «presse-papier» des Macs et de Windows).
On ne va parler ici que du copier-coller à la souris, sans évoquer les commandes spécifiques des éditeurs et des traitements de textes. D'autre part, il ne s'agit que de copier du texte, et rien d'autre.
Pour faire du copier-coller, on sélectionne le texte avec le bouton gauche, et on colle avec le bouton du milieu:
Un double-clic sur un mot le sélectionne automatiquement. C'est particulièrement utile pour des noms de fichiers, des adresses électroniques, ou encore des URL*. Un triple clic sélectionne toute la ligne. Ça ne sert pas à grand chose, mais c'est rigolo.
Voici quelques conseils pour utiliser plus efficacement le copier-coller avec les logiciels courants:
pine
, pico
: rien à dire de spécial... N'oubliez pas
l'existence de la commande ^J
(«justifier») pour reformater un
paragraphe, quand les lignes sont de longueur inégale. Pour l'utiliser,
placez-vous au début du paragraphe et tapez ^J
.netscape
: vous pouvez récupérer le texte de pages Web en
utilisant le copier-coller. Il est cependant souvent plus simple de
télécharger le document, en sélectionnant Save As
dans le menu
File
.Location
, commencez par
effacer l'adresse de la page courante (sélectionnez-là avec le bouton gauche
et appuyez sur Backspace
). Ensuite, coller la nouvelle adresse dans
le cadre.nedit
: le principe «sélectionner avec le bouton gauche, coller
avec le bouton du milieu» fonctionne; le texte sera collé à l'endroit où vous
cliquez avec le bouton du milieu (comme avec emacs
).Cut
, Copy
et
Paste
.emacs
: sélectionner le texte avec le bouton gauche. Le texte
sera collé à l'endroit où vous cliquerez avec le bouton du milieu. Vous n'avez
donc pas à placer préalablement le curseur à l'endroit voulu.vim
: il faut être en mode insertion pour coller un bout de
texte avec la souris.Pour les éditeurs en général, n'oubliez pas qu'ils incluent des commandes pour
insérer des fichiers extérieurs (^R
avec pico
donc
pine
, ^I
ou Include File
dans le menu File
pour nedit
, :r
fichier
avec vim
, ^XI
ou Include File
dans le menu File
de
emacs
).
Le mois prochain, on parlera des raccourcis clavier de la config conscrits.
Les packages sont des ensembles de commandes qui permettent d'étendre
les fonctionnalités de LATEX ou de changer son comportement. Certains
s'appliquent automatiquement à l'ensemble du texte, d'autres rendent
simplement disponibles des commandes particulières. Ils correspondent à des
fichiers qui ont un suffixe .sty
.
Note: «package» est un mot anglais, et comme tel, nous devrions le mettre en
italiques dans tout ce texte... Mais comme l'alternative francophone
«paquetage» est très rare et guère plus explicite, nous assumons l'usage de
package en français dans le texte.
Pour charger un package, on utilise la
commande \usepackage{
nom
}
, où nom est le
nom du package. Cette commande se place dans le préambule du document, avant
le \begin{document}
.
Certains packages prennent des options; celles-ci sont écrites entre crochets,
avant le nom du package lui-même; quand il y a plusieurs options, on les met à
la suite, séparées par des virgules:
\usepackage[
option1,option2
]{
package
}
Pour garantir que vos accents passent bien d'une machine à l'autre, et que votre DVI aura des accents, et pour franciser vos documents (titres prédéfinis, typographie, etc), voici les trois packages à utiliser dans tous vos fichiers:
\usepackage[francais]{babel} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc}
inputenc
, c'est l'encodage des accents du fichier source (le fichier
.tex
). On lui donne l'option latin1
, car l'encodage standard
des accents occidentaux est l'isolatin1. C'est le même principe pour
fontenc
(encodage de la fonte dans le DVI).
babel
est un système qui permet de gérer une ou plusieurs langues
dans un même document; ici, on lui passe l'option francais
. Il
connaît un certain nombre de langues (bahasa
, breton
,
catalan
, croatian
, czech
, danish
,
dutch
, english
, esperant
, estonian
,
finnish
, galician
, german
, greek
,
irish
, italian
, lsorbian
, magyar
,
norsk
, polish
, portuges
, romanian
,
russian
, scottish
, slovak
, slovene
,
spanish
, swedish
, turkish
, usorbian
,
welsh
, ouf).
Note importante: c'est bien francais
et pas french
que
l'on vous conseille; french
n'est pas tout à fait compatible
avec le reste de Babel, et il redéfinit des choses, comme l'espacement à
l'intérieur des listes, qui n'ont rien à voir avec la francisation. Les
Français qui l'ont écrit ont un peu trop intériorisé la notion
d'«exception culturelle»...
Ce que gère Babel, ce sont les titres des parties et des tables
générées automatiquement, la date écrite dans la langue choisie (commande
\today
), et aussi certaines macros spécifiques. Pour le
français, en voici quelques-unes: 1\ier
: 1er; 2\ieme
: 2e;
1\iere
: 1re.
Quand on lui passe plusieurs langues en argument, celle qui domine dans le
texte est la dernière indiquée. Des commandes spécifiques servent à passer
dans l'autre langue; par exemple, \textgreek{}
pour mettre des mots en
grec, ou \cyr{}
pour mettre des mots en cyrillique (en supposant que
vous avez indiqué greek
ou russian
dans les options de
babel
).
Il en existe un tas, qui font un tas de choses... On va voir ici les plus courants, et les plus utiles:
amsmath,amsfonts,amssymb
Ces trois packages définissent des commandes vraiment indispensables pour taper des maths avec LATEX. Et également quelques symboles qui peuvent servir ailleurs. AMS, c'est l'American Mathematical Society.
epsfig
Pour inclure des images au format EPS (PostScript
encapsulé), avec la commande \epsfig{}
. On en parlera au mois de
février.
multicol
Pour faire un document en plusieurs colonnes. Pour
cela, on utilise l'environnement multicols
(avec un «s», piège
diabolique). Par exemple, pour un document écrit sur trois colonnes:
%BEGIN LATEX \begin{multicols}{3} %END LATEX Le texte... %BEGIN LATEX \end{multicols} %END LATEX
url
Pour afficher correctement des adresses électroniques et des URL.
vmargin
Pour redéfinir la taille de la page. On le verra plus précisément dans le prochain numéro.
Bien sûr, il ne s'agit que d'une très petite
partie de tous les packages existants. En fait, chaque fois que quelqu'un
écrit une fonctionnalité supplémentaire pour LATEX (par exemple,
supertabular
pour faire des tableaux sur plusieurs pages), il écrit
un package.
Le LATEX companion, dont on trouve normalement un exemplaire (souvent en très mauvais état hélas) dans toutes les salles informatiques, contient une énumération beaucoup plus complète, ainsi qu'une description beaucoup plus détaillée des possibilités.
Notons qu'il y a aussi quelques notices pour les packages les plus utiles
installés chez gourous, dans le répertoire
/usr/local/util/tex/doc
.
Le mois prochain, on expliquera comment régler la taille de la page.
Nicolas George, Émilia Robin
Cette rubrique a pour but de présenter diverses utilisations des machines Unix, en indiquant à chaque fois les logiciels disponibles, et en présentant certains d'entre eux. Ce mois-ci, on va expliquer ce que sont les disquettes, et comment on s'en sert sur les stations.
Voyons un peu la longue histoire des disquettes, aussi appelées floppy disk, c'est-à-dire disques souples. J'en vois déja me dire que les disquettes que vous utilisez sont en plastique rigide, mais ce terme désigne en fait le disque magnétique souple qui se trouve à l'intérieur de l'enveloppe rigide. Il s'oppose aux disques durs (hard disk en anglais), dans lesquels les disques magnétiques (appelés des plateaux) sont rigides.
Il y a bien longtemps, il n´existait pas de CD-ROM, ni de disques durs ou même de disquettes. On utilisait des cartes perforées. C'était un moyen de stockage et de transmission peu efficace et peu pratique, mais il n'y avait rien d'autre.
On a alors eu l'idée d'utiliser le même principe que pour le stockage de musique, à savoir une surface magnétisée, constituée d'une multitude de minuscules aimants. Ces aimants peuvent être orientés à volonté, et ils gardent alors cette orientation, stockant ainsi de l'information. On a commencé par garder la même forme que pour les cassettes, c'est à dire des bandes magnétiques enroulées sur des bobines, et qu'on déroule pour lire l'information dessus. Ça marchait, mais c'était assez lent, et pour lire les données placées à un endroit précis il fallait dérouler toute la bobine pour atteindre le bon endroit.
Cela avait quand même quelques bons côtés, comme une capacité assez importante. D'ailleurs, le principe est encore utilisé aujourd'hui. Par exemple les sauvegardes des comptes sur clipper sont faites sur des cassettes DAT (Digital Audio Tape, qui sont à la base des cassettes utilisées pour l'enregistrement numérique de musique). D'autres systèmes utilisent des cassettes de caméscope.
Pour pallier ces défauts, on a donc pris cette fois comme surface magnétique un disque souple, qui tournait autour de son axe, qu'on a inséré dans une pochette en plastique souple, laquelle gardait des ouvertures pour accéder à la surface magnétique. De cette manière, on pouvait accéder (presque) instantanément à n'importe quelle partie du disque en question, simplement en le faisant tourner et en déplaçant la tête de lecture le long d'un rayon.
C'est ainsi qu'est apparue la première disquette, qui était alors un mastodonte, connu sous le nom de disquette 8" (lire «8 pouces», c'est à dire un peu plus de 20 centimètres de large, le pouce mesurant exactement 2,54 centimètres) Ce monstre possédait une capacité absolument délirante pour l'époque, à savoir 80 Ko.
Plus tard sont apparues les disquettes 5"1/4 (cinq pouce un quart), qui avaient à la base une capacité de 180 Ko par face, et qui furent utilisées par la majorité des micro-ordinateurs du début des années 1980 (IBM PC, Commodore 64...).
En 1982, Sony créa un nouveau type de disquette qui devait très vite s'imposer, la disquette 3"1/2 (trois pouce et demi), toujours en usage actuellement, et donc la capacité pouvait alors aller jusqu'à 720 Ko. Outre sa taille réduite et sa plus grande capacité, elle comportait deux innovations:
Du fait de leur plus grande capacité et fiablité (même si la fiabilité d'une disquette n'est jamais très élevée), ces disquettes furent rapidement adoptées par Apple (dont le Macintosh fut la première machine à l'utiliser), puis par Atari et Commodore (dans les Ataris ST et les Amigas), puis arrivèrent sur les PC avec le PS/2 d'IBM, et devinrent le standard.
Les disquettes 5"1/4 et 3"1/2 ont vu par la suite leurs capacités portées à 1,2 Mo et 1,44 Mo (en 1984 et 1987), et ce sont les capacités utilisées actuellement. Il y a eu une tentative infructueuse pour introduire des disquettes 3"1/2 à 2,88 Mo, mais devant le peu d'enthousiasme du public, cela fut abandonné.
Signalons également le format 3", qui ressemble au format 3"1/2, avec une capacité de 180 Ko par face. Très peu répandu, il ne fut utilisé que par quelques machines (Stratos ou Téléstrat, et surtout l'Amstrad CPC), et à cause du succès soudain de l'Amstrad, ces disquettes connurent des périodes de pénurie assez mémorables pendant lesquelles les prix s'envolèrent.
La première chose à savoir quand on utilise des disquettes est leur manque total de fiabilité: quand on copie un fichier sur une disquette, on n'est jamais sûr de pouvoir le relire. C'est pourquoi il est fortement déconseillé d'utiliser les disquettes comme sauvegarde principale ou comme archive; et quand l'on transfère des fichiers à l'aide de disquettes, il est préferable de tout transférer en double sur des disquettes séparées pour avoir des chances raisonnables d'avoir au moins un exemplaire lisible de chaque fichier.
Une disquette est en effet très sensible aux conditions extérieures, à savoir température, humidité et surtout champs magnétiques. Bon nombre de disquettes ont succombé à un séjour au soleil, dans une pièce humide, ou simplement à un passage à côté de haut-parleurs mal isolés...
De plus, une capacité de 1,44 Mo peut se réveler insuffisante, et s'il existe des outils pour répartir un fichier entre plusieurs disquettes, cela n'est jamais pratique.
Aussi les disquettes possèdent maintenant un certain nombre d'alternatives:
On reprend ici un article paru dans le numéro 7 du Hublot, en mai 2000.
Les plantages des ordinateurs fonctionnant sous Windows ou MacOS peuvent entraîner des pertes irréparables de données. Sachez que vous ne pourrez pas vous retourner contre le fabricant du logiciel, car la licence vous avez acceptée possède une clause qui exclut toute responsabilité pour les dégâts que pourrait causer le produit. D'autre part, quel que soit le système, un disque dur est un dispositif électromécanique pouvant être sujet à des pannes matérielles. Vous devez donc faire des sauvegardes régulières de vos données, au moins tous les mois1. Voici quelques conseils:
Enfin, sachez qu'à l'ENS, le Service de Prestations Informatiques effectue une sauvegarde des comptes des élèves (sur les Suns et les PC sous Linux) toutes les nuits, sur des bandes magnétiques.
On vous montre ici une façon d'utiliser les disquettes qui peut paraître barbare et pas simple. Mais des commandes au clavier sont le seul moyen de partager un lecteur de disquettes entre plusieurs machines, et de pouvoir l'utiliser à distance. Les Suns, traditionnellement, n'avaient pas de lecteur, seule une machine dans la salle en avait un, utilisé par tout le monde.
En revanche, les interfaces graphiques pour Unix, comme KDE, que vous pouvez avoir sur votre PC Linux, permettent une gestion à la souris des disquettes, pour copier des fichiers ou les mettre sur la disquette. Unix ne se réduit pas à ce que vous en voyez à l'École...
Pour utiliser les disquettes au format PC sur les stations Sun, il existe une ensemble de commande appelées mtools. Il faut savoir qu'à l'ENS les machines Unix ne sont pas toutes équipées d'un lecteur de disquettes, mais on peut se servir du lecteur d'une station sans être physiquement devant. Pour cela, il suffit d'introduire la disquette dans le lecteur (en essayant de ne pas trop déranger la personne devant le clavier), et de se connecter à distance sur la machine en question.
Pour indication, voici la liste des machines équipées de lecteurs de disquettes en salle S (galion, kayak, bireme, brick, jonque, chaland et drakkar), au 46 (belandre et barge), en Infi (jangada, plate, aviso, allege, buyse) à Jourdan (vedette, chaloupe, nave, selandre, gondole), montrouge (ponton, polacre). Cela évolue en fonction des nouvelles machines installées (les Ultra 5 ont toutes des lecteurs).
Une fois la disquette dans le lecteur, voici quelques commandes utilisables (il peut y avoir des fichiers et des répertoires sur une disquette):
mdir |
Affiche le contenu de la disquette |
mcd toto |
Se déplacer dans le répertoire toto
de la disquette |
mmd toto |
Crée le répertoire toto |
mrd toto |
Supprime le répertoire toto , à
condition que celui-ci soit vide |
mcopy a:bla . |
Copie le fichier bla de
la disquette vers la station dans le répertoire courant |
mcopy bla a: |
Copie le fichier bla vers la
disquette |
mdel bla |
Supprime le fichier bla |
mdeltree toto |
Supprime le répertoire toto ,
ainsi que tous les sous-répertoires et fichiers qu'il contient (à
utiliser avec précaution!) |
mformat a: |
Formate la disquette, donc efface tout. |
Ceux qui connaissent les commandes MS-DOS les auront reconnues dans les
mtools, précédées d'un «m» (pourquoi un «m», personne ne le
sait). Le lecteur de disquettes est désigné par a:
, et la syntaxe
pour les répertoires est la syntaxe habituelle, c'est-à-dire que les
répertoires sont indiqués par /
, et ..
correspond au répertoire précédent.
L'utilisation des disquettes est détaillée sur le site des tuteurs,
avec des exemples: /tuteurs/cours/unix/disquettes.html
.
Gilles Radenne
Ce mois-ci, nous nous étendons sur le Web, ses principes et ses fonctionnement, des conseils pour identifier les bons sites, et une présentation des moteurs de recherche. Dans la rubrique «Forum», on continue à expliquer comment lire forum, en abordant ce mois-ci la façon d'aller de conti en conti.
Le Web, c'est le truc dont on parle à la télé: les pages, les machins multimédia, les «savoirs en ligne», etc. On en parle tellement qu'on dit «Internet» à la place de «Web» («Je surfe sur Internet», «J'ai trouvé un super site Internet»). Pire encore, il y a des gens qui confondent le logiciel utilisé pour naviguer sur le Web, et le réseau lui-même (ce qui donne des «Tiens, je ne connais pas cette version d'Internet»).
Le Web est l'un des aspects d'Internet. Internet, c'est la mise en réseau mondiale d'ordinateurs. Ça implique une infrastructure matérielle (câbles, routeurs...), et une série de protocoles pour faire transiter les informations. Par exemple, le Web utilise le protocole HTTP (hypertext transfert protocol, protocole de transfert des fichiers hypertexte).
Mais Internet c'est aussi le courrier électronique, le transfert de fichiers, la connexion à distance (telnet), les news... Pour chacune de ces fonctions, on utilise un logiciel: navigateur pour le Web, logiciel de courrier, etc.
Si vous voulez, Internet c'est comme une route que les gens utilisent pour différentes fonctions (transport de marchandises, vacances, trajet boulot-dodo, balade à vélo...), et ces fonctions c'est le courrier, le Web, etc.
Sur le Web2, une
adresse s'appelle une URL (Uniform Resource Locator). Prenons
pour exemple l'adresse du serveur des élèves de l'ENS: http://www.eleves.ens.fr:8080/
.
Le http
au début indique le protocole à utiliser, et signale
qu'il s'agit d'une page Web (cependant, toutes les pages Web ne sont pas
servies par HTTP). Le .fr
est un nom de domaine, qui indique
ici que la page se trouve en droit en France (mais il se pourrait que le
serveur, en tant que machine physique, matérielle, soit aux États-Unis).
www.eleves.ens
désigne en réalité une machine qui héberge le
site des élèves de l'institution ENS. Le 8080
désigne un
numéro de port.
Enfin, le /
(slash) qui termine l'adresse indique qu'on se
rend au point de départ de l'arborescence du site, en pratique la page
d'accueil.
Tout ceci indique la machine à contacter pour rejoindre la page Web. Ensuite,
il peut y avoir d'autres informations quelle page précisément on demande à
voir. Par exemple, http://www.eleves.ens.fr:8080/COF/CineClub/
correspond la page d'accueil du Ciné-Club de l'ENS, elle-même un sous-ensemble
logique de COF/
.
Quand vous sélectionnez un lien, votre ordinateur envoie une requête sur le serveur désigné par l'URL. Ce serveur renvoie la page demandée par votre navigateur («client» du serveur).
L'ensemble de ces données circulent sur des liens physiques, les câbles, qui ont un débit maximal. La réponse d'un serveur physiquement très éloigné mettra un peu plus de temps à arriver; une grosse quantité de données mettra plus de temps à arriver qu'une petite quantité; enfin, à certaines heures, le réseau est encombré par l'ensemble des données transférées par tous les utilisateurs connectés à ce moment-là. C'est ce qui explique que parfois, une page soit longue à charger.
Il y a un certain nombre de noms de domaine. Une
partie indique un pays, dont dépend en droit le serveur: .fr
pour
les serveurs français, .es
pour l'Espagne, .ru
pour la
Russie, .jp
pour le Japon, etc.
Il en existe d'autres, comme .edu
pour les universités américaines,
.org
pour les institutions à but non lucratif, .gov
pour le
gouvernement américain. .int
est utilisé en particulier par les
organisations établies par traités internationaux, par exemple l'Union
européenne.
De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
exemple, .com
désignait à l'origine des sites d'entreprises, et
.net
des fournisseurs d'accès au réseau. Mais AOL, fournisseur
d'accès, a comme adresse aol.
com
(pour des raisons
historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
un suffixe .net
, à cause de leur fournisseur d'accès.
C'est aussi une question de modes: .com
est à la mode en ce moment,
donc les sites veulent absolument un suffixe en .com
, y compris si
c'est aberrant. Je pense ici au Mur pour la Paix (au Champ de Mars). Le
monument a un site Web, sur lequel on peut déposer des messages, qui seront
ensuite affichés sur les écrans du monument. Et leur adresse est
http://www.murpourlapaix.com/
, alors que c'est un suffixe .org
,
réservé aux organisations à but non lucratif, qui s'imposait...
Un autre exemple: le suffixe .tv
est théoriquement réservé aux îles
Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu quelques
noms de domaines à des chaînes de télévision qui voulaient une adresse en
.tv
...
Le site des tuteurs propose un certain nombre de cours sur le Web: comment
écrire les pages Web, y insérer des images, concevoir son site
(/tuteurs/internet/html/
, comment utiliser Netscape (cours du
Hublot l'an dernier: /tuteurs/docs/hublot/index.html#annee-1999-2000
).
Qu'est-ce qu'un «bon» site ? En laissant de côté le top site méga cool avec mes photos de vacances, on peut essayer de dresser une liste de choses qu'un site sérieux se doit d'avoir.
On peut d'emblée résumer la qualité principale d'un tel site sous le mot: lisibilité. Et dans le monde des pages Web, ce mot contient la notion d'accessibilité. On en tire les implications suivantes: la page doit pouvoir être lue par n'importe quel navigateur, les informations doivent être précises, la mise à jour doit être régulière, et enfin il doit être facile de circuler non seulement dans le site mais aussi vers l'extérieur.
C'est pourquoi les sites qui respectent ces principes sont agréables et intéressants à consulter. Les «bons» sites possèdent en général 7 traits distinctifs.
1. Le lien permettant de revenir à la page d'accueil, ou «Home»: en général, il se trouve sous la forme d'une icône avec le logo du propriétaire du site, et se trouve conventionnellement en haut à gauche de la page Web; on le trouve parfois en toutes lettres («Home», «Retour à la page d'accueil») en bas au centre de la page. Un tel lien permet de commencer une nouvelle recherche dans l'arborescence du site.
2. Le plan du site («Site map», «Site index»): très utile pour se répérer, il permet d'avoir une vue d'ensemble du site, et d'orienter sa recherche en fonction des catégories (par ex.: météo, loisirs, arts, sports, info).
3. Un moteur de recherche intégré au site («searchable») permet un accès rapide à un concept, permet d'être fixé rapidement sur nos attentes vis-à-vis de ce site.
4. La rubrique help/FAQ (frequently asked questions, «foire aux questions» en français) ou «Présentation»: il peut être utile de commencer la consultation d'un site par cet endroit. On peut y trouver le mode d'emploi du site, son fonctionnement, la périodicité de mise à jour, le nom du propriétaire, les liens.
5. Quoi de neuf? / «Nouveau» (What's new): indique
les dernières modifications de la page, notamment les nouveaux services qui
viennent d'être ajoutés, ou encore une réorganisation du site. Il est possible
d'être tenu au courant de l'actualité d'un site grâce à une lettre
d'information («newsletter») par courrier électronique. Pour cela, il
suffit de s'inscrire en laissant son adresse électronique (voir par exemple le
site du Monde diplomatique: http://www.monde-diplomatique.fr/
).
6. Les liens (links): si par malheur vous n'avez pas trouvé ce que vous cherchiez sur un site, allez visiter ses liens, qui normalement vous dirigeront vers des thèmes similaires à ceux qui vous ont amené là.
7. Contact (feedback): c'est la rubrique qui permet de prendre contact avec les concepteurs du site. Attention! Adressez-vous à la bonne personne et à bon escient. La personne qui a rédigé le contenu de la page (par ex., un article sur les élections présidentielles américaines) n'est pas (pas forcément en tout cas) la même que celle qui a mis la page en langage HTML. À la première personne vous poserez des questions concernant l'article, à la deuxième vous exprimerez vos plaintes ou vos louanges à propos de la mise en page. Dans ce dernier cas, il est recommandé de lire les FAQ au préalable, pour ne pas être le 37e à poser la même question.
Yann Tholoniat
NDLR: on peut ajouter un huitième critère:«lisible» veut le plus souvent dire «sobre»... Pas de débauche de couleurs, pas de trucs qui clignotent, pas de choses écrites en petit dans tous les sens, pas de publicités dans tous les coins, pas de «gratuit!» ou «pas cher!» aux quatre coins de la page, etc.
Il est presque impossible de trouver une information sur le Web sans utiliser de moteurs de recherche. Ce sont des sites qui permettent d'interroger des bases de données constituées par des robots qui parcourent le Web et référencent les pages visitées. Mais il faut bien être conscient que les moteurs de recherche ne référencent au mieux que 15% des pages existantes.
Voici un exemple d'utilisation du moteur de recherche Altavista
(http://www.altavista.com
). Je demande «Iran», sans plus de détails;
j'obtiens 430 665 réponses. Je demande alors que la recherche se fasse
uniquement sur des fichiers en français; je n'ai plus que 12 085 réponses.
Ensuite, je raffine la demande, en la précisant progressivement; voici les
résultats:
Iran |
: |
12 085 |
+Iran +1979 |
: |
1 722 |
+Iran +1979 +révolution |
: |
616 |
+Iran +1979 +révolution +Shah |
: |
48 |
Le signe +
veut dire que le mot qu'il précède (sans espace) doit
obligatoirement figurer dans la page référencée. Vous pouvez également
utiliser le signe -
, pour exclure impérativement le mot des pages
recherchées. En règle générale, quoi que l'on recherche, il est utile
d'ajouter -hotel -restaurant
... Enfin, si vous recherchez une
expression telle quelle, mettez des guillemets américains autour
("guerre et paix"
par exemple). Ces signes s'appellent des
opérateurs booléens.
Raffinez le plus possible vos requêtes: si vous avez plus d'une centaine de pages à consulter, vous ne vous en sortirez pas. D'autre part, soyez conscients que votre requête sera nécessairement ambiguê, même si vous ne vous en rendez pas compte: une recherche sur «cirque» trouvera «arts du cirque» comme «cirque glaciaire».
Tous les moteurs de recherche ne s'utilisent pas comme Altavista. Avec Google
(http://www.google.com/
), il est inutile de mettre des +
.
Yahoo (http://fr.yahoo.com/
pour le site français) classe ses adresses
selon une arborescence. Lycos (http://www.lycos.fr/
) utilise les
opérateurs booléens et aussi une arborescence.
Nous avons présenté le mois dernier les contis (groupes de discussion) existant dans forum. Ce mois-ci, on va voir comment lire forum, au delà de la commande de base (barre d'espace) expliquée dans le numéro d'octobre.
Pour lancer forum, tapez forum
, cliquez sur
l'icône forum ou sur le bouton «Lire forum» de la fenêtre d'information
(xforumco
, conscrits 2000). Si vous voulez lire un conti
spécifique, par exemple kfet
, il suffit de taper:
brick ~ $ forum kfet
Forum se présente comme ceci: une barre avec le nom du groupe de discussion, et à droite le numéro du message, suivi du nombre total de messages, et entre parenthèses le nombre de messages non lus dans le groupe de discussion.
En bas, vous avez une autre barre avec les commandes les plus courantes:
barre d'espace pour aller de message en message, «R
» pour
répondre à un message, «m
» pour en poster un, et «q
»
pour quitter. Sous cette barre, vous avez un prompt «À vous», où
s'affichent les commandes que vous tapez.
Le message lui-même ressemble à un courrier électronique, avec le nom de l'auteur, la date et le sujet du courrier, éventuellement le nom de la personne à qui l'auteur répond, et parfois d'autres informations:
Une fois le message lu, appuyez sur la barre d'espace pour aller au prochain message. Quand tous les messages du conti sont lus, forum affiche «Fin du newsgroup». Si vous rappuyez sur la barre d'espace, forum vous place sur le prochain conti auquel vous êtes abonné, et dans lequel il vous reste des messages non lus. Quand tout est lu, forum affiche «Rien de nouveau».
Vous n'avez plus qu'à taper «q
» pour quitter forum. Lire forum
se résume donc à deux touches: la barre d'espace pour lire, et
«q
» pour quitter.
Les messages de forum sont des discussions: un premier message a des réponses, d'autres répondent à ces réponses, et cela donne ce que l'on appelle une enfilade (thread en anglais). Certains messages ont plusieurs réponses, et de fil en aiguille la conversation dérive souvent sur d'autres sujets.
Le schéma (ou arbre) de la discussion est représenté en haut à droite de
l'écran: les «O
» majuscules représentent les messages encore à
lire, les «o
» minuscules ceux qui sont lus; l'arobase
«@
» représente le message sur lequel vous vous trouvez. On peut
se déplacer dans l'arbre avec les flèches, et taper sur «Entrée» pour
lire le message ainsi sélectionné.
Enfin, on peut utiliser la touche «N
» pour avoir une vue plus
grande de l'arbre de discussion (refaire «N
» pour revenir à la
vue normale).
Quand vous lisez forum à la barre d'espace, vous lisez les messages dans l'ordre de la discussion. Quand celle-ci est terminée, vous passez à une autre discussion.
À l'inverse, la touche «Entrée» affiche les messages dans l'ordre de leur publication, indépendamment de leur ordre logique.
Pour se rendre dans un conti donné, tapez
«G
» suivi du nom du conti et de la touche «Entrée». S'il y a
plusieurs possibilités (par exemple, les contis d'annonces), le programme
proposera un menu; utilisez les flèches du clavier pour vous déplacer
dans le menu et appuyez sur «Entrée» pour sélectionner le conti à lire.
Une fois dans un conti (ou dans la liste de ceux-ci) on peut utiliser «A» pour s'abonner et «D» pour se désabonner.
Quand on s'abonne à un nouveau conti, on risque de trouver qu'il y a un
nombre considérable de messages non encore lus; les conscrits 2000 sont
chanceux, ils n'auront à lire que les messages vieux de sept jours au
plus (ne vous laissez pas impressionner par ce qu'affirme
xforumco
sur les 1 420 messages non lus).
Cela dit, si vous ne voulez pas lire tous les messages en retard (surtout
si vous n'êtes pas conscrit), utilisez la touche «z
» (comme
zapper), suivie d'«Entrée», pour marquer tous les messages comme lus.
On peut avoir la liste des contis en
tapant «L
» suivi d'«Entrée». Plusieurs listes s'affichent à la
suite:
Pour quitter ces listes, tapez q
jusqu'à récupérer le
prompt «À vous» en bas d'écran. S'il y a deux listes, c'est pour avoir
plus rapidement accès à celle des contis que vous fréquentez
habituellement.
Vous remarquez des lettres devant les noms de certains contis: un
«T
» veut dire que vous êtes abonné (vous lisez tout
ce conti), un «U
» veut dire que vous êtes désabonné
(unsubscribe)3. Quand il n'y a aucune lettre, c'est que vous n'avez
jamais mis les pieds dans ce conti. Pour les promotions antérieures, ces
marqueurs peuvent être différents.
Maintenant que vous connaissez les deux listes de contis, sachez que vous pouvez les utiliser pour vous rendre dans un conti donné: sélectionnez-le avec les flèches et tapez «Entrée».
Barre d'espace | Aller au prochain message |
N |
Afficher/cacher l'arbre de la discussion |
L |
Afficher les listes de contis |
G conti |
Aller dans ce conti |
z |
Zapper tous les messages du conti |
A |
S'abonner au conti |
D |
Se désabonner du conti |
R |
Répondre |
m |
Poster un message |
q |
Quitter |
Le mois prochain, on expliquera comment poster dans forum.
David Madore, Émilia Robin
Ce cours explique progressivement ce qu'est un ordinateur. Le mois dernier, on a vu en quoi consistait la mémoire, et comment l'information circulait à l'intérieur de la bête. Ce mois-ci, on va voir à quoi sert le processeur.
«Grand Maître, maintenant que nous savons où est l'information, et comment elle voyage, où donc va-t-elle?» «Elle affronte son destin, jeune apprenti. Le sort de toute information est d'être répétée, amplifiée, déformée, cuisinée et pressée jusqu'à ce que sa substantifique moëlle en soit extraite. Et le morceau responsable de cela, c'est le processeur.»
«Il n'est point de domaine de la pensée qui échappe à la logique militaire. C'est en vertu de cet adage que l'informatique est universelle et le champ du manipulable par ordinateur est étendu (et, réciproquement, les choses qui échappent aux militaires sont aussi celles à propos desquelles l'ordinateur n'est d'aucun secours). Car le processeur est le vrai tâcheron de l'affaire, le composant qui sait faire le plus de choses et qui a le moins d'initiative.
Le processeur, souvent dit central, ou encore CPU (Central Processing Unit), est une puce de format classique (c'est-à-dire un peu de sable dans une boîte en plastique), et il est caché sous un amoncellement de ventilateurs et de circonvolutions métalliques (structure destinée à le refroidir, car il chauffe beaucoup). Son boulot: le règlement, tout le règlement, rien que le règlement. Il comprend des ordres simples, ordres qui sont codables par des 0 et 1, et que le processeur va chercher en mémoire.
Chaque ordre, il l'exécute à la lettre, sans chercher à comprendre le sens de cet ordre, si tant est qu'il en ait un. La machine n'a pas d'objection a afficher que deux et deux font cinq. Elle peut le faire plusieurs millions de fois par seconde, si on lui demande. Elle peut aussi calculer que deux et deux font quatre si un tel calcul est ordonné. Elle n'est ni psychotique, ni névrosée. Les ordres compréhensibles par le processeur sont de deux types: ceux qui demandent d'effectuer un vrai travail (additionner deux nombres, par exemple), et ceux qui servent à faire tourner la machine, c'est-à-dire de l'administration interne; et, comme sa grande soeur en uniforme, le processeur passe beaucoup de temps à s'occuper de lui-même. Plus précisément, voyons au juste quels sont les ordres possibles. Le processeur peut aller chercher des données en mémoire; c'est-à-dire envoyer sur un bus en direction de la mémoire une requête disant «envoie-moi le contenu à l'adresse numéro tant» (car chaque bit de la mémoire a une adresse, qui l'identifie uniquement).
En réponse, la mémoire renvoie la donnée requise, ou un code de protestation si les données demandées n'existent pas (comme cela peut arriver si le processeur demande le bit 1 934 675 208 et que la mémoire ne contient que 805 306 368 bits). Dans la pratique, le processeur demande ainsi des suites de quelques dizaines de bits consécutifs (guère plus, car ils ne tiendraient pas tous dans le bus). Le processeur peut envoyer des données à la mémoire, pour stockage. Le mécanisme est similaire à celui de la lecture. Le processeur peut additionner, soustraire, multiplier, voire diviser et trifouiller de quelques autres manières des nombres. Ces nombres sont représentés par des suites de 0 et de 1, et ne peuvent pas dépasser certaines valeurs (car le processeur ne peut pas manipuler des suites trop longues d'un seul coup -- il reste limité). Le processeur va chercher ses instructions en mémoire, à la suite: il peut recevoir pour ordre d'aller dorénavant les chercher à une autre adresse. On appelle ça un saut, c'est comme un renvoi dans un formulaire de la Sécurité Sociale («Si vous n'êtes pas demandeur d'emploi, ne remplissez pas le cadre suivant et allez en 11»).
Toutes ces fonctions ont des ordres spécifiques, représentés par des suites bien définies de 0 et de 1. Et une suite d'ordre, c'est un programme. Parfois, on appelle le programme un logiciel si on veut faire smart, ou software si on veut faire smart et british à la fois.»
«Mais, Guide Suprême, si les données et les ordres sont des suites de 0 et de 1, comment le processeur distingue-t-il les données des ordres?» «Et comment fais-tu la différence entre une averse et un crachin fortement vivifiant?» «C'est une question de contexte; le crachin n'apparaît qu'en Bretagne et Normandie. Dans le Midi, là, il pleut.» «Ben là c'est pareil, petit scarabée. Si le processeur a demandé une instruction, ce qu'il a obtenu, c'est pour lui une instruction. S'il a demandé des bits censés coder un nombre, il a obtenu un nombre. D'ailleurs, les différents ordres exécutés par le processeur passent leur temps à utiliser des informations pour ce qu'elles ne sont pas; par exemple, un nombre devient rapidement une adresse d'un bit en mémoire, et vice-versa.
Et si un jour le processeur tombe sur quelque chose qu'il ne comprend pas (par exemple, une donnée qu'il prend pour un ordre, mais ces 0 et 1 ne codent aucun ordre valide), alors le règlement prévoit des instructions alternatives d'urgence, à exécuter.
Ainsi travaille le processeur, toujours obéissant, sans initiative, il est l'exécutant irresponsable qui amplifie toute erreur jusqu'à l'absurde, éventuellement jusqu'au suicide; le processeur n'a pas de capacité propre d'auto-destruction4 mais peut se stopper et ne plus fonctionner jusqu'à ce qu'on coupe et remette le courant. Et paf le rapport de vingt pages. Et c'est la faute du programmeur, qui a conçu une suite d'ordres absurdes.
Une telle erreur de programmeur, ça s'appelle un bug. Tout logiciel un tant soit peu utile à un quelconque travail comporte des dizaines de bugs5, voire même beaucoup plus. Ainsi va le Monde.»
Thomas Pornin
Le problème de base du chiffrement, c'est la confiance... De même qu'on fait confiance à des gens pour envoyer des jolis programmes, et pas des virus. Ou qu'on fait confiance à son destinataire pour ne pas faire n'importe quoi avec les messages qu'on lui envoie. Ou qu'on fait confiance à l'administrateur système pour ne pas regarder n'importe où. Quand on se rend compte que tout le monde il est pas Beau et tout le monde il est pas Gentil, on se dit qu'on voudrait bien un peu de confidentialité... Ça s'appelle le chiffrement. NDLR: ce qui suit est parfois dit sur un ton ironique; ne vous laissez pas abuser, son auteur est un spécialiste de cryptographie...
rendre inintelligible une donnée à toute personne ne connaissant pas un certain secret, nommé «clé».
utiliser la clé pour rendre à nouveau intelligible une donnée chiffrée.
rendre à nouveau intelligible une donnée chiffrée, sans connaissance préalable de la clé (action normalement impossible si le protocole de chiffrement est correct).
ce terme n'existe pas ; il est néanmoins souvent employé en lieu et place de chiffrer. Au bûcher les crypteurs.
art du chiffrement, de la signature, de l'authentification et de la vérification d'intégrité.
art du décryptage, de la production de faux, de la tromperie et de la corruption silencieuse des données.
science regroupant la cryptographie, la cryptanalyse et l'analyse scientifique de ces deux domaines.
On a envie de chiffrer ses données dès que l'on transfère des choses privées: informations personnelles, mots de passe, numéro de compte en banque, etc. Sans chiffrement, tout ceci circule comme des cartes postales, lisible par qui veut s'en donner la peine.
Le chiffrement assure un peu de confidentialité aux données sensibles. Il permet aussi de se la jouer superhéros défenseur de la liberté quand on n'a pas de données sensibles à protéger.
Signer/authentifier/vérifier servent à faire des opérations légales, et surtout du commerce, sur un support informatique aléatoire, espionnable et falsifiable à loisir par des hordes de méchants dont on n'imagine pas, d'habitude, le nombre ni l'acharnement (exemple: Internet).
Le chiffrement est utile pour certaines entités. Un exemple-type est un réseau informatique entre une entreprise et ses filiales délocalisées.
Signature/authentification/vérification: oui. Ça permet de lire son courrier sereinement depuis l'université de Pétaouchnok-les-oies.
Mais la cryptographie ne fait pas tout; par exemple, la meilleure cryptographie n'empêche personne d'espionner un écran à 200 mètres de distance avec un télescope.
Ça dépend du pays. En France, pour la plupart des systèmes, oui. Le décret du 17 mars 1999 règle les modalités d'usage, de fourniture, d'importation et d'exportation des systèmes cryptographiques; il en ressort qu'un particulier a accès, légalement, à des outils dont la sécurité est à l'épreuve de l'espèce humaine (dans son intégralité), au regard du niveau technologique atteint actuellement par ladite espèce.
Une loi libéralisant totalement l'usage de la cryptographie a été promise par Lionel Jospin pour la fin 1999 (là c'est raté) puis repromise par Laurent Fabius pour «courant 2001».
Dans la plupart des pays, l'usage est libre, l'import/export réglementé. Dans certaines contrées (Chine, Iran, Syrie...), la possession et l'usage sont sévèrement interdites.
En termes de sécurité, on sait fabriquer des systèmes inviolables. Il existe aussi plein de systèmes parfaitement nuls. D'autre part, la cryptographie établit des tuyaux sécurisés entre deux points de l'espace-temps, mais ne protège pas ces points. Si l'information existe, en clair, quelque part à un moment donné, elle y est vulnérable. Attention aux gens qui regardent par dessus votre épaule. N'écrivez pas vos mots de passe sur un post-it collé sous le clavier.
En termes de performances, c'est raisonnable pour lire son courrier à distance via un ssh ou chiffrer un courrier avec PGP6. C'est encore trop lourd pour faire une sécurité complète et transparente dans certains cas (chiffrement automatique d'un disque dur, par exemple).
Pour l'utilisateur de base, oui, ce n'est pas difficile. Sinon, la cryptographie rentre dans le cadre de la sécurité informatique, ce qui est un métier et ne s'improvise pas.
Les deux prochains numéros détailleront l'utilisation de logiciels sécurisés: en janvier, PGP (pour encrypter le courrier électronique), et en février ssh (pour sécuriser les connexions à distance).
On mélange tout, suivant une méthode précise, un peu comme une recette de cuisine. La recette, tout le monde la possède, mais les proportions exactes utilisées, c'est la clé. On peut faire, quand on est très fort, un chiffrement dit «asymétrique», où la clé pour chiffrer et celle pour déchiffrer ne sont pas la même (elles sont liées ensemble, forcément, mais on ne peut pas deviner l'une en fonction de l'autre). Ça permet de rendre une des clés publiques (on la publie dans un annuaire, par exemple) tout en gardant l'autre secrète. Ceci permet de réaliser des opérations intrinsèquement asymétriques:
Les méthodes de chiffrement asymétriques demandent des constructions mathématiques un peu lourdes; dans la pratique, ça va nettement moins vite que les méthodes de chiffrement symétriques, où la même clé sert pour le chiffrement et le déchiffrement. Donc des outils tels que PGP (chiffrement et signature de mails) et SSL (établissement d'une connexion authentifiée et chiffrée) utilisent une mixture: de l'asymétrique pour arriver à transmettre de façon sûre un secret commun, utilisation de ce secret commun pour chiffrer efficacement les données.
Thomas Pornin
On appelle alias une traduction que vous définissez
pour un mot que vous tapez en ligne de commande; c'est le plus souvent un
raccourci. Par exemple, si vous tapez rm
, la machine comprendra
rm -i
. Les alias qui sont définis de façon permanente le sont
dans le fichier .zshrc
de votre compte (config conscrits). La
commande alias
permet d'avoir la liste des alias actuellement
définis.
Uniform Resource Locator. C'est ce que les médias
appellent une «adresse Web», C'est un bout de texte, possible à taper au
clavier, qui indique comment accéder à un document ou une autre donnée.
Les plus courantes sont en «http://
», ce qui indique le
protocole (pour ce mot, voir le numéro 9 du Hublot) à utiliser, et
précisent un ordinateur à contacter et le fichier à lui
demander.
Le Hublot est le journal des tuteurs informatiques de l'ENS. Il paraît chaque mois à 350 exemplaires. Il est également disponible sur le Web:
http://www.eleves.ens.fr/tuteurs/docs/hublot/
Rédaction: Émilia Robin.
Ont collaboré à ce numéro: Marc Espie, Nicolas George, David Madore, Thomas Pornin, Jérôme Plût, Gilles Radenne, Yann Tholoniat.
Merci à Olivier Verzelen pour ses relectures.
Une sauvegarde tous les mois, ça veut dire que vous vous autorisez à perdre, éventuellement, un mois de travail.
On reprend ici un article paru dans le numéro 5 du Hublot, en mars 2000.
On l'a déjà dit ailleurs, on le redit: il y a une certaine part d'arbitraire, et aussi d'habitudes antérieures, dans le choix des commandes de forum, de l'emplacement des contis, ou encore ici des marqueurs.
Enfin, quelques-uns si, mais on préfère éviter, parce qu'après ça fait des histoires.
Tous sauf un: car Knuth est Grand.
Patience, ces termes mystérieux seront expliqués dans les prochains numéros.