This file is indexed.

/usr/share/doc/HOWTO/fr-html/ADSM-Backup.html is in doc-linux-fr-html 2013.01-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.69">
<title>Linux ADSM Mini-Howto</title>
</head>
<body>
<h1>Linux ADSM Mini-Howto</h1>
<h2>par Thomas K&ouml;nig,
<code>Thomas.Koenig@ciw.uni-karlsruhe.de</code></h2>
v, 15 Janvier 1997
<hr>
<em>Ce document d&eacute;crit l'installation et l'utilisation sur
un poste de travail Linux d'un client pour le syst&egrave;me de
sauvegarde commercial ADSM.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<p>ADSM est un syst&egrave;me de sauvegarde en r&eacute;seau vendu
par IBM que l'on retrouve dans de nombreuses organisations. Les
programmes clients existent pour une large palette de
syst&egrave;mes&nbsp;: diff&eacute;rents Unix, Windows, Novell,
Mac, Windows NT. Malheureusement, &agrave; la date de
r&eacute;daction de ce document, aucune version sp&eacute;cifique
&agrave; Linux n'existe.</p>
<p>L'utilisation d'ADSM implique donc le recours au binaire SCO et
&agrave; l'&eacute;mulateur iBCS2. Il est ici question d'ADSM
v2r1.</p>
<p>A ce jour, je ne connais qu'une version fonctionnant sous Linux,
et uniquement sur plate-forme i386.</p>
<h2><a name="s2">2. Installation du module iBCS</a></h2>
<p>Le module iBCS est disponible &agrave; l'adresse suivante&nbsp;:
<a href=
"ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2">ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2</a>.
[NdT&nbsp;: un miroir fran&ccedil;ais <a href=
"ftp://ftp.lip6.fr/pub/linux/tsx-11/BETA/ibcs2">ftp://ftp.lip6.fr/pub/linux/tsx-11/BETA/ibcs2</a>
] Si vous employez une version 1.2.13 du noyau,
r&eacute;cup&eacute;rez <code>ibcs-1.2-950721.tar.gz</code>,
d&eacute;compactez-le et appliquez les patches
<code>ibcs-1.2-950808.patch1</code> et
<code>ibcs-1.2-950828.patch2</code>. Vous pouvez alors invoquer
"<code>make</code>" et ins&eacute;rer le module iBCS via
"<code>insmod</code>".</p>
<p>Pour un noyau 2.0, r&eacute;cup&eacute;rez
<code>ibcs-2.0-960610.tar.gz</code>, d&eacute;compressez-le dans un
r&eacute;pertoire ad&eacute;quat, allez dans ce r&eacute;pertoire
et appliquez le patch ci-dessous&nbsp;:</p>
<pre>

--- 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-&gt;esp) + (5));
                        is_p = (struct ibcs_semid_ds *)get_fs_long(arg4-&gt;buf);
 #ifdef IBCS_TRACE
                        if ((ibcs_trace &amp; TRACE_API) || ibcs_func_p-&gt;trace)
</pre>
Copiez ensuite <code>CONFIG.i386</code> en <code>CONFIG</code> et
invoquez <code>make</code>.
<p>S'ils ne sont pas d&eacute;j&agrave; pr&eacute;sents,
cr&eacute;ez les p&eacute;riph&eacute;riques requis en
ex&eacute;cutant&nbsp;:</p>
<pre>
# cd /dev
# ln -s null XOR
# ln -s null X0R
# mknod socksys c 30 0
# mknod spx c 30 1
</pre>
<h2><a name="s3">3. Installation du client ADSM</a></h2>
<p>Le binaire SCO est divis&eacute; en trois fichiers
<code>tar</code>. Positionnez-vous &agrave; la racine de votre
syst&egrave;me de fichiers, v&eacute;rifiez la valeur de umask et
d&eacute;compactez-les en tant qu'utilisateur <code>root</code>. Un
script d'installation appara&icirc;tra dans votre r&eacute;pertoire
<code>/tmp</code>. Invoquez-le.</p>
<p>&Eacute;ditez ensuite <code>/usr/adsm/dsm.sys</code> et
<code>/usr/adsm/dsm.opt</code>. Certaines lignes du fichier
<code>dsm.sys</code> requi&egrave;rent une attention
particuli&egrave;re&nbsp;:</p>
<dl>
<dt><b>Servername</b></dt>
<dd>
<p>le nom du serveur</p>
</dd>
<dt><b>TCPServeraddress</b></dt>
<dd>
<p>le nom complet du serveur (FQDN)</p>
</dd>
<dt><b>NODename</b></dt>
<dd>
<p>le nom de votre station</p>
</dd>
</dl>
Vous pr&eacute;ciserez dans le fichier <code>dsm.opt</code>&nbsp;:
<dl>
<dt><b>Server</b></dt>
<dd>
<p>comme pr&eacute;c&eacute;demment</p>
</dd>
<dt><b>Followsymbolic</b></dt>
<dd>
<p>s'il faut suivre les liens symboliques (c'est rarement une bonne
id&eacute;e)</p>
</dd>
<dt><b>SUbdir</b></dt>
<dd>
<p>faut-il sauvegarder les sous-r&eacute;pertoires&nbsp;?
(g&eacute;n&eacute;ralement oui)</p>
</dd>
<dt><b>domain</b></dt>
<dd>
<p>le syst&egrave;me de fichiers &agrave; archiver</p>
</dd>
</dl>
<p>Cr&eacute;ez ensuite un fichier <code>/etc/mnttab</code>
&agrave; la mode SCO &agrave; partir de votre
<code>/etc/fstab</code>. Le script Perl suivant,
<code>fstab2mnttab</code>, le fera pour vous.</p>
<blockquote>
<hr>
<pre>
<code>#!/usr/bin/perl

$mnttab_struct = "a32 a32 I L";

open(MTAB, "/etc/mtab") || die "Impossible d'ouvrir /etc/mtab: $!\n";
open(MNTTAB, "&gt;/etc/mnttab") || die "Impossible d'ouvrir /etc/mnttab: $!\n";

while(&lt;MTAB&gt;) {
    next if /pid/;
    chop;
    /^(\S*)\s(\S*)\s(\S*)\s.*$/;
    $device = $1;
    $mountpt = $2;
    $fstype = $3;
    if($fstype ne "nfs" &amp;&amp; $fstype ne "proc") {
        $mnttab_rec =
            pack($mnttab_struct, $device, $mountpt, 0x9d2f, time());
        syswrite(MNTTAB, $mnttab_rec, 72);
        print "Entr&eacute;e cr&eacute;&eacute;e pour : $device $mountpt $fstype\n";
    }
}

close(MNTTAB);
exit 0;
</code>
</pre>
<hr></blockquote>
Le client ne r&eacute;clame aucune biblioth&egrave;que
dynamique&nbsp;: il est li&eacute; statiquement.
<h2><a name="s4">4. Fonctionnement du client</a></h2>
<p>Il existe deux clients. <code>dsm</code> propose une interface
X11 tandis que <code>dsmc</code> reste en ligne de commande. Votre
service informatique vous en dira davantage &agrave; leur sujet. Un
script de d&eacute;marrage du style&nbsp;:</p>
<pre>
dsmc schedule -quiet 2&gt;&amp;1 &gt;/dev/null &amp;
</pre>
s'av&egrave;rera vraisemblablement n&eacute;cessaire.
<h2><a name="s5">5. Probl&egrave;mes identifi&eacute;s</a></h2>
<p>SCO se r&eacute;v&egrave;le malheureusement incapable de
supporter les noms de machines d&eacute;passant les 8
caract&egrave;res. Si le nom de votre machine d&eacute;passe cette
limite ou qu'il inclut le nom de domaine, vous devrez le
pr&eacute;ciser dans la ligne <code>NODename</code> du
<code>/usr/adsm/dsm.sys</code>.</p>
<p>Le recours &agrave; la variable DISPLAY requiert de la part de
celle-ci qu'elle comprenne le nom complet de votre machine, c'est
&agrave; dire <code>DISPLAY=maMachine.monDomaine:0</code> au lieu
de <code>DISPLAY=maMachine:0</code>.</p>
</body>
</html>