-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathunificar-el-contenido-de-varios-wikis-en-uno-solo.html
432 lines (352 loc) · 27.6 KB
/
unificar-el-contenido-de-varios-wikis-en-uno-solo.html
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
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
<html lang="es">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title> Unificar el contenido de varios wikis en uno solo
| frommelmak</title>
<meta name="author" content="Marcos Martinez">
<meta name="generator" content="Pelican v4.2.0">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.3/css/bootstrap.min.css" integrity="sha512-oc9+XSs1H243/FRN9Rw62Fn8EtxjEYWHXRvjS43YtueEewbS6ObfXcJNyohjHqVKFPoXXUxwc+q1K7Dee6vv9g==" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css" integrity="sha512-+4zCK9k+qNFUR5X+cKL9EIR+ZOhtIloNl9GIKS57V1MyNsYpYcUrUeQc9vNfzsWfV28IaLL3i96P9sdNyeRssA==" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css" integrity="sha512-+EoPw+Fiwh6eSeRK7zwIKG2MA8i3rV/DGa3tdttQGgWyatG/SkncT53KHQaS5Jh9MNOT3dmFL0FjTY08And/Cw==" crossorigin="anonymous">
<link rel="stylesheet" href="https://frommelmak.com/theme/css/main.min.css?3fd22780">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.3/js/bootstrap.bundle.min.js" integrity="sha512-iceXjjbmB2rwoX93Ka6HAHP+B76IY1z0o3h+N1PeDtRSsyeetU3/0QKJqGyPJcX63zysNehggFwMC/bi7dvMig==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js" integrity="sha512-IsNh5E3eYy3tr/JiX2Yx4vsCujtkhwl7SLqgnwLNgf04Hrt9BT9SXlLlZlWx+OK4ndzAoALhsMNcCmkggjZB1w==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fitvids/1.2.0/jquery.fitvids.min.js" integrity="sha512-/2sZKAsHDmHNoevKR/xsUKe+Bpf692q4tHNQs9VWWz0ujJ9JBM67iFYbIEdfDV9I2BaodgT5MIg/FTUmUv3oyQ==" crossorigin="anonymous"></script>
<script src="https://frommelmak.com/theme/js/main.min.js?86e1c044"></script>
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
<meta name="msapplication-TileColor" content="#ffc40d">
<meta name="theme-color" content="#ffffff">
<!-- Feeds -->
<meta name="keywords" content="mediawiki">
</head>
<body class="bg-transparent pt-4">
<div class="container">
<a href="https://frommelmak.com" class="avatar-container float-left mx-4">
<div class="avatar animate ">
<div class="side"><img src="images/avatar.png" class="img-fluid"></div>
<div class="side back text-center pt-2 px-1 small">
Alien Life Form
</div>
</div>
</a>
<h1>
<a href="https://frommelmak.com" class="text-dark text-decoration-none">frommelmak</a>
<small class="text-secondary"><small>Yet another Melmacian interested in technology...</small></small>
</h1>
<nav class="navbar d-block navbar-expand-lg navbar-light bg-light shadow rounded-lg">
<a class="navbar-brand d-none" href="https://frommelmak.com" title="Yet another Melmacian interested in technology...">frommelmak</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#plumage-navbar-collapse-1" aria-controls="plumage-navbar-collapse-1" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="plumage-navbar-collapse-1">
<ul class="navbar-nav mr-auto mt-2 mt-lg-0">
<li class="nav-item ">
<a class="nav-link" href="/">
Home
</a>
</li>
<li class="nav-item ">
<a class="nav-link" href="https://frommelmak.com/pages/about.html">
About
</a>
</li>
</ul>
</div>
</nav>
</div>
<div class="container mt-5">
<div class="row">
<div class="
col-md-9
">
<h1>
<a href="https://frommelmak.com/unificar-el-contenido-de-varios-wikis-en-uno-solo.html" rel="bookmark" title="Permalink to Unificar el contenido de varios wikis en uno solo">Unificar el contenido de varios wikis en uno solo</a>
</h1>
</div>
</div>
<div class="row">
<div id="content" role="main" class="
col-md-9
">
<p>El objetivo de esta entrada en el blog es describir el método que he seguido para fusionar varios Wikis en uno sólo. La poca documentación que he encontrado al respecto, me ha animado a explicar mis experiencias al respecto en este mini-howto.</p>
<p>El escenario inicial es el siguiente: Disponemos de varios wikis basados en diferentes versiones de MediaWiki. Uno utiliza <em>MediaWiki 1.3.9</em> (wiki2 en este ejemplo), y el resto <em>MediaWiki 1.5.8</em> (wiki1 en este ejemplo). El contenido de todos los wikies será migrado a un nuevo wiki basado en <em>MediaWiki 1.6.10</em>.</p>
<p>Empezamos!</p>
<h2>Descripción general del proceso.</h2>
<p>A grandes rasgos, el proceso consiste en volcar por un lado el contenido de los wikis (páginas) a un fichero <span class="caps">XML</span>, y por el otro las images y demás ficheros adjuntos. Para lo primero utilizaremos las herramientas facilitadas por MediaWiki y para lo segundo bastará con copiar el contenido del directorio images y extraer unas tablas de la base de datos.</p>
<p>Antes de importar los <span class="caps">XML</span> de cada wiki, procesaremos los ficheros <span class="caps">XML</span> para incluir una etiqueta de categoria a cada página. Si bien esto es opcional, el proposito es no perder la pista del origen de cada una de las páginas. De esta manera, cada una de las páginas de los wikis que importemos estarán agrupadas bajo una categoria en el wiki de destino.</p>
<h2>Exportar el contenido de los wikis:</h2>
<p>Tanto en la versión 1.3.9 como 1.5.8 de MediaWiki es posible exportar el contenido completo del wiki a un fichero de texto <span class="caps">XML</span>. La idea es que luego este fichero pueda ser importado en el wiki de destino.</p>
<p>Si bien es posible exportar e importar el contenido del wiki via web, es recomendable hacerlo mediante el script <span class="caps">PHP</span> que viene con MediaWiki siempre que sea posible. Por qué ? Bueno, el motivo principal es porque si el contenido del wiki es muy extenso, probablemente los settings del fichero <code>php.ini</code> no sean suficiente generoros como para realizar el <em>import</em> con éxito. Esto es especialmente cierto cuando además el <span class="caps">XML</span> generado incluye las diferentes revisiones de cada página, ya que entos casos el tamao del <span class="caps">XML</span> puede ser considerable.</p>
<h3>En MediaWiki 1.5.8</h3>
<p>En esta versión no hay ningun secreto, tan sólo será necesario ejecutar el script <code>dumpBackup.php</code> que se encuentra en la carpeta maintenance.</p>
<p>Antes de ejecutar los scripts de la carpeta maintenance deberemos editar el fichero <code>AdminSettings.php</code> con el un usuario y password con permisos sobre la base de datos MySQL del wiki.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">cd /your_wiki_path/maintenance</span>
<span class="go">cp AdminSettings.sample AdminSettings.php</span>
<span class="go">vi AdminSettings.php</span>
<span class="go">php dumpBackup.php --full wiki-backup.xml</span>
</code></pre></div>
<p>Para importar las imágenes, necesitaremos además extraer el contenido de las tablas: image, imagelinks y oldimage.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">mysqldump -u root -p wikidatabase image wiki1-image.sql</span>
<span class="go">mysqldump -u root -p wikidatabase imagelinks wiki1-imagelinks.sql</span>
<span class="go">mysqldump -u root -p wikidatabase oldimage wiki1-oldimage.sql</span>
</code></pre></div>
<p>Deberemos repetir estos pasos para cada uno de los wikis con versión 1.5.8.</p>
<h3>En MediaWiki 1.3.9</h3>
<p>En esta versión de MediaWiki no existe el script <code>dumpBackup.php</code>, por lo que nos veremos obligados a extraer el <span class="caps">XML</span> via web, lo cual es un poco ms engorroso.</p>
<p>En primer lugar necesitamos la lista de páginas que queremos exportar, ya que deberemos introducirla a lo largo del proceso.</p>
<p>Si nuestro wiki tiene unas pocas páginas, lo mas rápido es ir a: <em>Special pages -> All pages</em> y hacer un cut <span class="amp">&</span> paste. En cambio, si nuestro wiki dispone de muchas páginas, estas aparecern ordenadas en columnas y la tarea de copiar y pegar se tornará muy tediosa.</p>
<p>La solucin más rapida y segura que he encontrado es esta:</p>
<p>Vamos a: <em>Special pages -> All pages</em></p>
<p>Utilizaremos entonces la opción <em>view-source</em> (de nuestro navegador), seleccionareos todo el código de la página y lo copiaremos a un fichero llamado <code>all_pages.txt</code>.</p>
<p>Luego ejecutamos sobre ese fichero este comando y listos:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">sed -n '/-- start content --/,/-- end content --/p' all_pages.txt |sed 's/\/td/\n/g'| sed -e 's#[^]*##g'| sed '/^$/d' |less</span>
</code></pre></div>
<p>Ahora ya podemos ir a: <em>Special pages -> Export pages</em></p>
<p>Introducimos la lista de páginas a exportar (obtenida anteriormente) teniendo cuidado de desmarcar además la casilla:</p>
<p><em>Include only the current revision, not de full history</em></p>
<p>Finalmente le damos a: <em>Submit query</em> y obtendreos en el browser el cdigo <span class="caps">XML</span> con todo el contenido de nuestro wiki.</p>
<p>Ya sólo hemos de copiar el código y pegarlo en un fichero de texto: <code>wiki2-backup.xml</code>, por ejemplo.</p>
<p>De igual modo que para la versión 1.5.8, de cara a exportar las imgenes necesitaremos también el contenido de las tabas: image, imagelinks y oldimage.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">mysqldump -u root -p wikidatabase image wiki2-image.sql</span>
<span class="go">mysqldump -u root -p wikidatabase imagelinks wiki2-imagelinks.sql</span>
<span class="go">mysqldump -u root -p wikidatabase oldimage wiki2-oldimage.sql</span>
</code></pre></div>
<h2>Importar el contenido de los wikies:</h2>
<p>Como este manual no pretende ser una guia de instalacin y configuracin de MediaWiki, voy a asumir que ya tenemos instalado y configurado el wiki de destino (recordemos, MediaWiki 1.6.10).</p>
<p>Llegados a este punto, lo que haremos ser ir importando el contenido (<code>ficheros.xml</code>) y las imagenes y/o archivos adjuntos que tubieran nuestros wikis de origen (ficheros + tablas de imagenes).</p>
<p>En primer lugar importaremos el contenido del wiki con la versin ms vieja (MediaWiki 1.3.9), más adelante veremos por qué.</p>
<h3>Importar el <span class="caps">XML</span> generado por MediaWiki 1.3.9</h3>
<p>Dado que necesitaremos ejecutar varios de los scripts de la carpeta maintenance de nuestro wiki de destino, antes de nada, deberemos editar el <code>ficheroAdminSettings.php</code> para que estos scripts puedan acceder a la base de datos.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">cp AdminSettings.sample AdminSettings.php</span>
<span class="go">vi AdminSettings.php</span>
</code></pre></div>
<p>Edit the file <code>AdminSettings.php</code> with the mysql user/password)</p>
<p>Ahora ya podriamos importar el contenido del wiki con el script <code>importDump.php</code>, si bien antes de hacerlo podrá interesaros, como en mi caso, añadir una etiqueta de categoria a cada una de las páginas del wiki. Esto nos permitir poder separar la informacin de cada uno de los wikis en función de su procedencia. Así todas las páginas de la categoria wiki2 s que vienen del wiki2.</p>
<p>Para hacer esto, podeis utilizar un script como el siguiente:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="gp">#</span>!/bin/bash
<span class="go">IFILE=$1</span>
<span class="go">OFILE=P_$1</span>
<span class="go">CATEGORY_STRING=$2</span>
<span class="go">echo Output file is: $OFILE</span>
<span class="gp">></span> <span class="nv">$OFILE</span>
<span class="go">UPC=FALSE</span>
<span class="go">PAGES=0</span>
<span class="go">while read LINE</span>
<span class="go">do</span>
<span class="go">echo $LINE | grep title.*/title | grep -qv -e MediaWiki:.* -e MediaWiki talk:.* -e Image:.* -e Image talk:.* -e Talk:.* -e User:.* -e User talk:.* -e Category:.* -e Category talk:.* -e Template:.* -e Template talk:.* UCP='TRUE' let PAGES=$PAGES+1</span>
<span class="go">echo $LINE | grep -q '/text'</span>
<span class="go">TEXT_TAG=$?</span>
<span class="go">if [[ $UCP = TRUE $TEXT_TAG -eq 0 ]]</span>
<span class="go">then</span>
<span class="go">echo -n .</span>
<span class="go">echo $LINE | sed s/\/text/$CATEGORY_STRING\/text/g $OFILE</span>
<span class="go">else echo $LINE $OFILE echo $LINE | grep -q '/page' UCP=FALSE</span>
<span class="go">fi</span>
<span class="go">done $IFILE</span>
<span class="go">echo</span>
<span class="go">echo Processed pages: $PAGES</span>
<span class="go">echo Done!</span>
</code></pre></div>
<p>Para procesar el <span class="caps">XML</span>, llamaremos al script con algo parecido a esto:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">./xwp.sh wiki2-backup.xml [[Category:wiki2]]</span>
</code></pre></div>
<p>Y finalmente importaremos el contenido del fichero resultante (P_wiki2-backup.xml) a nuestro nuevo wiki:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">php maintenance/importDump.php P_wiki2-backup.xml</span>
</code></pre></div>
<p>Una vez importado el fichero <span class="caps">XML</span> al nuevo wiki tendremos a nuestra disposicin todas y cada una de las pginas que contenia el viejo wiki.</p>
<p>Podemos listarlas todas si vamos a:</p>
<p><em>Special pages->All pages</em></p>
<p>Del mismo modo, si nuestro viejo wiki disponía de categorias, estas aparecerán bajo: <em>Special pages->Categories</em>, después de ejecutar este script.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">php maintenance/refreshLinks.php</span>
</code></pre></div>
<p>Lamentablemente, si importamos desde un wiki basado en MediaWiki 1.3.9, las pginas que describen las categorias, asi como los templates no se importan correctamente y hay que importarlos via cut <span class="amp">&</span> paste.</p>
<h2>Importar las imagenes y documentos adjuntos desde MediaWiki 1.3.9</h2>
<p>La sincronización de las imágenes y los ficheros adjuntos se compone de 3 pasos.</p>
<ul>
<li>Copia de los ficheros</li>
<li>Importar las tablas image de la base de datos (implica borrar las actuales)</li>
<li>Actualizar las tablas de imagenes a las de la version 1.6.10</li>
</ul>
<p>Llevamos a la consola, quedaría asi:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">cd /your_wiki_path/images</span>
<span class="go">rsync -avz wiki2host:/path/to/old/wiki2/images/ .</span>
<span class="go">chown -R apache:apache *</span>
<span class="go">cd /path/to/your/database_files</span>
<span class="go">mysql -u root -p new_wikidatabase wiki2-image.sql</span>
<span class="go">mysql -u root -p new_wikidatabase wiki2-imagelinks.sql</span>
<span class="go">mysql -u root -p new_wikidatabase wiki2-oldimage.sql</span>
</code></pre></div>
<p>Dado que no hemos modificado los ficheros <span class="caps">SQL</span> obtenidos mediante el volcado con <code>mysqldump</code>, las tablas actuales han sido substituidas por las viejas. Estas tablas no son exactamente igual en la version 1.3.9 y la 1.6.10 por lo que deberemos añadir los nuevos campos que se introducen a partir de la versin 1.5.8.</p>
<p>Afortunadamente, disponemos de un script que actualiza esta tabla sin eliminar su contenido.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">php maintenance/update.php</span>
<span class="go">php rebuildImages.php</span>
</code></pre></div>
<p>Y este es básicamente el motivo por el cual hemos elegido el wiki movido por MediaWiki 1.3.9 en primer lugar.</p>
<h2>Importar el <span class="caps">XML</span> generado por MediaWiki 1.5.8</h2>
<p>En este punto, apenas hay diferencias con la versin 1.3.9 y el proceso es prácticamente idéntico. Es decir: procesamos el <span class="caps">XML</span> antes de importarlo y luego importamos las imágenes y documentos adjuntos.</p>
<p>La única diferencia en este punto es que si importamos el contenido de un <span class="caps">XML</span> generado con la versin 1.5.8 de MediaWiki, es que las pginas de descripción de las categorias y los templates en esta ocasión, se crean correctamente.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">cd /your_wiki_path</span>
<span class="go">./xwp.sh wiki1-backup.xml [[Category:wiki1]]</span>
<span class="go">cd /your_wiki_path/maintenance </span>
<span class="go">php importDump.php P_wiki1-backup.xml</span>
</code></pre></div>
<h2>Importar las imagenes y documentos adjuntos desde MediaWiki 1.5.8</h2>
<p>De nuevo en esencia la idea es la misma, por un lado copiaremos los ficheros de imagenes y documentos adjuntos para posteriormente reflejar estos en la base de datos. Si bien en esta ocasión, los campos de las tablas son idénticos para ambas versiones de MediaWiki, deberemos editar los ficheros <span class="caps">SQL</span> antes de importarlos.</p>
<p>Lo que haremos es borrar la sentencias <code>CREATE TABLE</code> que crean las tablas image, imagelinks y oldimage. Si no lo hacemos, perderemos que habiamos importado del anterior wiki.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">cd /your_wiki_path/images</span>
<span class="go">rsync -avz wiki1host:/path/to/old/wiki1/images/ .</span>
<span class="go">chown -R apache:apache *</span>
</code></pre></div>
<p>Ahora, deberemos editar los ficheros <span class="caps">SQL</span> borrando las sentencias <code>CREATE TABLE</code> que preceden a los <code>INSERT</code> de cada tabla. En otras palabras, borraremos las lineas que preceden a cada:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">--</span>
<span class="go">-- Dumping data for table</span>
<span class="go">--</span>
</code></pre></div>
<p><strong>Nota</strong>: En mi caso también he tenido que eliminar la siguiente línea de cada archivo. Sino, el <code>import</code> me daba un warning.</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;</span>
<span class="go">:::console</span>
<span class="go">vi wiki1-image.sql</span>
<span class="go">vi wiki1-imagelinks.sql</span>
<span class="go">vi wiki1-oldimage.sql</span>
<span class="go">mysql -u root -p new_wikidatabase wiki1-image.sql</span>
<span class="go">mysql -u root -p new_wikidatabase wiki1-imagelinks.sql</span>
<span class="go">mysql -u root -p new_wikidatabase wiki1-oldimage.sql</span>
<span class="go">cd /your_wiki_path/maintenance</span>
<span class="go">php refreshLinks.php</span>
</code></pre></div>
<h3>Retoques finales:</h3>
<p>Una vez hayamos repetido esto para cada uno de los wikis a fusionar, nos queda ejecutar estos scritps:</p>
<div class="highlight pygments-style-monokai rounded shadow-sm mb-3"><pre><span></span><code><span class="go">php maintenance/initStats.php</span>
<span class="go">php maintenance/updateSearchIndex.php</span>
<span class="go">php maintenance/rebuildtextindex.php</span>
</code></pre></div>
<p>El primero de ellos pondrá al día la página de estadisticas <em>Special pages->Stats</em>, mientras que los dos últimos rehacen los indices que permiten hacer búsquedas en nuestro nuevo, enorme y flamante wiki.</p>
<div class="comments mt-5">
<div id="disqus_thread"></div>
<script>
var disqus_config = function () {
this.page.url = "https://frommelmak.com/unificar-el-contenido-de-varios-wikis-en-uno-solo.html";
this.page.identifier = "unificar-el-contenido-de-varios-wikis-en-uno-solo.html";
};
(function() {
var d = document, s = d.createElement('script');
s.src = 'https://frommelmak.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus</a>.</noscript>
</div>
</div>
<div class="col-md-3">
<div class="card bg-light text-dark">
<ul class="list-group list-group-flush">
<li class="list-group-item">
<abbr title="2007-07-12T22:34:00+02:00"><i class="fas fa-calendar"></i> Thu 12 July 2007</abbr>
</li>
<li class="list-group-item">
<address>
<i class="fas fa-user"></i> By
<a href="https://frommelmak.com/author/frommelmak.html" rel="author">frommelmak</a>
</address>
</li>
<li class="list-group-item">
<a href="https://frommelmak.com/category/spanish.html" rel="tag" data-toggle="tooltip" class="badge badge-info" title="56 articles in this category">Spanish</a>
<a href="/tag/mediawiki.html" data-toggle="tooltip" class="badge badge-secondary" title="1 article with this tag">mediawiki</a>
</li>
<li class="list-group-item">
<p>Found a typo? Fix it now:</p>
<a class="btn btn-info btn-block" href="https://github.com/frommelmak/blog/edit/master/content/posts/unificar-el-contenido-de-varios-wikis-en-uno-solo.md"><i class="fas fa-edit fa-fw"></i> Edit article on GitHub</a>
</li>
<li class="list-group-item">
<nav class="nav nav-pills nav-fill">
<a class="nav-link btn btn-outline-primary border-0 " href="https://frommelmak.com/incoherencias-entre-los-comandos-df-y-du.html" title="Incoherencias entre los comandos df y du" rel="prev">
<span aria-hidden="true">←</span> Older
</a>
<a class="nav-link btn btn-outline-primary border-0 " href="https://frommelmak.com/xqde-screenshot.html" title="XQDE screenshot" rel="next">
Newer <span aria-hidden="true">→</span>
</a>
</nav>
</li>
</ul>
</div>
</div>
</div>
</div>
<footer class="container-fluid mt-5 p-4 small">
<div class="row mx-5">
<div class="col-md-2">
<h6>Social</h6>
<ul class="list-unstyled">
<li><a href="http://twitter.com/frommelmak">
<i class="fab fa-twitter fa-fw"></i>
@frommelmak
</a></li>
</ul>
</div>
<div class="col-md-2">
<h6>Links</h6>
<ul class="list-unstyled">
<li><a href="http://linkedin.com/in/marcosmartinezjimenez">
<i class="fab fa-linkedin fa-fw"></i>
LinkedIn
</a></li>
<li><a href="http://github.com/frommelmak">
<i class="fab fa-github fa-fw"></i>
GitHub
</a></li>
<li><a href="http://www.youtube.com/user/melmak">
<img src="https://www.google.com/s2/favicons?domain=www.youtube.com" width="16" height="16" class="link-icon" alt="www.youtube.com icon">
Youtube
</a></li>
</ul>
</div>
<div class="col-md-2">
<h6>Browse content by</h6>
<ul class="list-unstyled">
<li><a href="https://frommelmak.com/categories/index.html"><i class="fas fa-th fa-fw"></i> Categories</a></li>
<li><a href="https://frommelmak.com/archives/index.html"><i class="far fa-calendar-alt fa-fw"></i> Dates</a></li>
<li><a href="https://frommelmak.com/tags/index.html"><i class="fas fa-tags fa-fw"></i> Tags</a></li>
</ul>
</div>
<div class="col-md-2 text-muted">
<h6>Copyright notice</h6>
<p class="small">
© Copyright
2005-2020
Marcos Martinez.
</p>
</div>
<div class="col-md-2 text-muted">
<h6>Disclaimer</h6>
<p class="small">
All opinions expressed in this site are my own
personal opinions and are not endorsed by, nor
do they represent the opinions of my previous,
current and future employers or any of its
affiliates, partners or customers.
</p>
</div>
<div class="col-md-2">
</div>
</div>
<div class="row mt-3">
<div class="offset-3 col-6 small text-muted text-center">
Site generated by <a class="text-dark" href="https://getpelican.com">Pelican</a>.<br>
<a class="text-dark" href="https://github.com/kdeldycke/plumage">Plumage</a>
theme by <a class="text-dark" href="https://kevin.deldycke.com">Kevin Deldycke</a>.
</div>
<div class="col-3 text-right d-flex flex-column">
<a class="mt-auto" href="#"><i class="fas fa-arrow-up"></i> Back to top</a>
</div>
</div>
</footer>
</body>
</html>