Linux ADSM Mini-Howto
par Thomas K�nig,
[email protected]
v, 15 Janvier 1997
Ce document d�crit l'installation et l'utilisation sur un poste de
travail Linux d'un client pour le syst�me de sauvegarde commercial
ADSM.
______________________________________________________________________
Table des mati�res
1. Introduction
2. Installation du module iBCS
3. Installation du client ADSM
4. Fonctionnement du client
5. Probl�mes identifi�s
______________________________________________________________________
11.. IInnttrroodduuccttiioonn
ADSM est un syst�me de sauvegarde en r�seau vendu par IBM que l'on
retrouve dans de nombreuses organisations. Les programmes clients
existent pour une large palette de syst�mes : diff�rents Unix,
Windows, Novell, Mac, Windows NT. Malheureusement, � la date de
r�daction de ce document, aucune version sp�cifique � Linux n'existe.
L'utilisation d'ADSM implique donc le recours au binaire SCO et �
l'�mulateur iBCS2. Il est ici question d'ADSM v2r1.
A ce jour, je ne connais qu'une version fonctionnant sous Linux, et
uniquement sur plate-forme i386.
22.. IInnssttaallllaattiioonn dduu mmoodduullee iiBBCCSS
Le module iBCS est disponible � l'adresse suivante :
ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2. [NdT : un miroir fran�ais
ftp://ftp.lip6.fr/pub/linux/tsx-11/BETA/ibcs2 ] Si vous employez une
version 1.2.13 du noyau, r�cup�rez ibcs-1.2-950721.tar.gz,
d�compactez-le et appliquez les patches ibcs-1.2-950808.patch1 et
ibcs-1.2-950828.patch2. Vous pouvez alors invoquer "make" et ins�rer
le module iBCS via "insmod".
Pour un noyau 2.0, r�cup�rez ibcs-2.0-960610.tar.gz, d�compressez-le
dans un r�pertoire ad�quat, allez dans ce r�pertoire et appliquez le
patch ci-dessous :
--- iBCSemul/ipc.c.orig Wed Jan 15 21:32:15 1997
+++ iBCSemul/ipc.c Wed Jan 15 21:32:31 1997
@@ -212,7 +212,7 @@
switch (command) {
case U_SEMCTL:
cmd = ibcs_sem_trans(arg3);
- arg4 = (union semun *)get_syscall_parameter (regs, 4);
+ arg4 = (union semun *)(((unsigned long *) regs->esp) + (5));
is_p = (struct ibcs_semid_ds *)get_fs_long(arg4->buf);
#ifdef IBCS_TRACE
if ((ibcs_trace & TRACE_API) || ibcs_func_p->trace)
Copiez ensuite CONFIG.i386 en CONFIG et invoquez make.
S'ils ne sont pas d�j� pr�sents, cr�ez les p�riph�riques requis en
ex�cutant :
# cd /dev
# ln -s null XOR
# ln -s null X0R
# mknod socksys c 30 0
# mknod spx c 30 1
33.. IInnssttaallllaattiioonn dduu cclliieenntt AADDSSMM
Le binaire SCO est divis� en trois fichiers tar. Positionnez-vous � la
racine de votre syst�me de fichiers, v�rifiez la valeur de umask et
d�compactez-les en tant qu'utilisateur root. Un script d'installation
appara�tra dans votre r�pertoire /tmp. Invoquez-le.
�ditez ensuite /usr/adsm/dsm.sys et /usr/adsm/dsm.opt. Certaines
lignes du fichier dsm.sys requi�rent une attention particuli�re :
SSeerrvveerrnnaammee
le nom du serveur
TTCCPPSSeerrvveerraaddddrreessss
le nom complet du serveur (FQDN)
NNOODDeennaammee
le nom de votre station
Vous pr�ciserez dans le fichier dsm.opt :
SSeerrvveerr
comme pr�c�demment
FFoolllloowwssyymmbboolliicc
s'il faut suivre les liens symboliques (c'est rarement une bonne
id�e)
SSUUbbddiirr
faut-il sauvegarder les sous-r�pertoires ? (g�n�ralement oui)
ddoommaaiinn
le syst�me de fichiers � archiver
Cr�ez ensuite un fichier /etc/mnttab � la mode SCO � partir de votre
/etc/fstab. Le script Perl suivant, fstab2mnttab, le fera pour vous.
______________________________________________________________________
#!/usr/bin/perl
$mnttab_struct = "a32 a32 I L";
open(MTAB, "/etc/mtab") || die "Impossible d'ouvrir /etc/mtab: $!\n";
open(MNTTAB, ">/etc/mnttab") || die "Impossible d'ouvrir /etc/mnttab: $!\n";
while(<MTAB>) {
next if /pid/;
chop;
/^(\S*)\s(\S*)\s(\S*)\s.*$/;
$device = $1;
$mountpt = $2;
$fstype = $3;
if($fstype ne "nfs" && $fstype ne "proc") {
$mnttab_rec =
pack($mnttab_struct, $device, $mountpt, 0x9d2f, time());
syswrite(MNTTAB, $mnttab_rec, 72);
print "Entr�e cr��e pour : $device $mountpt $fstype\n";
}
}
close(MNTTAB);
exit 0;
______________________________________________________________________
Le client ne r�clame aucune biblioth�que dynamique : il est li� sta�
tiquement.
44.. FFoonnccttiioonnnneemmeenntt dduu cclliieenntt
Il existe deux clients. dsm propose une interface X11 tandis que dsmc
reste en ligne de commande. Votre service informatique vous en dira
davantage � leur sujet. Un script de d�marrage du style :
dsmc schedule -quiet 2>&1 >/dev/null &
s'av�rera vraisemblablement n�cessaire.
55.. PPrroobbll��mmeess iiddeennttiiffii��ss
SCO se r�v�le malheureusement incapable de supporter les noms de
machines d�passant les 8 caract�res. Si le nom de votre machine
d�passe cette limite ou qu'il inclut le nom de domaine, vous devrez le
pr�ciser dans la ligne NODename du /usr/adsm/dsm.sys.
Le recours � la variable DISPLAY requiert de la part de celle-ci
qu'elle comprenne le nom complet de votre machine, c'est � dire
DISPLAY=maMachine.monDomaine:0 au lieu de DISPLAY=maMachine:0.