Una de las cosas que más molesta a los usuarios de Drupal es el proceso de actualizar el núcleo del software, especialmente si vienes de WordPress y observas que ese CMS, técnicamente más pobre que Drupal, puede realizar actualizaciones automáticas desde su versión 3.7 (de octubre de 2013).
Además de WordPress existen otros CMS que permiten la actualización automática del core del CMS sin quebraderos de cabeza para el usuarios. Pero en Drupal… NO.
Lo cierto es que este asunto es bastante recurrente en los foros de Drupal. De hecho, en 2009 se empezó a hablar de este tema y se volvió a retomar con la aparición de la versión 8.0, pero los avances son bastante pobres y, en el caso de que se produzcan, no tendrían “efectos retroactivos”, por lo que solo sería útiles para las versiones más actuales del CMS.
Con sorpresa descubrí hace unos meses que la última versión del panel de control de hosting Plesk se encarga de hacer la actualización automática del núcleo de este CMS de manera automática. Pero claro, no todo el mundo usa Plesk.
Así que el problema sigue estando ahí. Como además es una cuestión bastante recurrente en mi asignatura, creo que es interesante hacer una pequeña reseña sobre uno de los muchos procedimientos que existen para realizar esta actualización.
Y digo “muchos procedimientos” porque realmente es posible realizar la actualización de cuatro formas diferentes. De todas ellas, la que más me gusta es la que emplea el shell para comandos Drush, del que cada vez esto más enamorado, pero como no es el que suele emplear la gente normal, me decantaré por hacer la estándar.
Antes de nada hay que especificar que este tipo de actualizaciones son del tipo minor, es decir, la que actualiza de una versión 7.x a otra 7.x superior. Las actualizaciones major son las que sirven para pasar a versiones superiores, por ejemplo, de una 6 a una 7 o de una 7 a una 8. En Drupal los cambios minor se denominan updating (actualización), mientas que las major son upgrading (mejoras).
Los pasos son bastante sencillos, pero conviene ser riguroso en su tratamiento. Drupal es un software muy sensible, y realizar las cosas en un orden diferente al esperado hace que el software responda de manera errónea. Para mostrar el proceso voy a actualizar una versión
7.50, de Julio de 2018, a la última 7.x lanzada en el momento de hacer esta entrada, que es la 7.61, de noviembre de 2018.
1.- Realizar una copia de seguridad de la base de datos
Este es siempre un paso imprescindible siempre que se vaya a realizar cualquier cosa importante en Drupal. Es más, yo recomiendo hacerla incluso antes de instalar módulos y/o temas, ya que la experiencia me dice que en muchas ocasiones un solo módulo puede volver muy inestable cualquier instalación. Pues con más motivo, si vas a actualizar, lo ideal es realizar la copia de la base de datos completa en la que tengas instalado Drupal. Así, si las cosas salen mal siempre puedes volver al punto en el que estabas antes de entrar en pánico.
2.- Crear una copia de seguridad de los ficheros
En la mayoría de CMS siempre hay dos elementos clave a la hora de hacer la copia de seguridad. Uno es el evidente, la base de datos; pero mucha gente suele olvidar el segundo elemento: los ficheros del sistema. La base de datos solo almacena datos (que no es poco, porque lo son todo), pero los ficheros de tu sitio web con los pdf, las imágenes, los php, los ficheros que hacen que funcionen tus módulos y temas… son igual de importantes. Hacer una copia de seguridad solo de una cosa no vale para nada. Es necesario hacer la copia de seguridad del contenido de tu carpeta sites, que es donde se almacena todo este contenido en Drupal. Para ello puedes usar el administrador de ficheros de tu hosting o un cliente FTP.
3.- Poner en sitio en modo mantenimiento
Haciendo eso consigues que ningún usuario modifique el contenido del sitio web al mismo tiempo que se produce la actualización, con el consiguiente problema de recursividad que puede producir en la base de datos. La ruta donde se encuentra esa opción es:
Administración → Configuración → Desarrollo → Mantenimiento
O si lo tienes en inglés:
Administration → Configuration → Develpoment → Maintance mode
4.- Eliminar ficheros
Desde el administrador de ficheros del hosting (o desde el FTP) debes eliminar todo el contenido de tu servidor web donde se encuentre Drupal. Suponiendo que solo tienes el CMS instalado en la raíz del servidor, deberías eliminar todo el contenido de tu raíz salvo los siguientes ficheros y carpetas:
- – robots.txt, que se supone que ya lo tienes configurado para tu web y, dado que lo que vas a instalar es un software que tiene más o menos la misma estructura que el ya tenías, no debería haber cambio alguno.
- – .htaccess, por el mismo motivo que el anterior.
- – .gitignore, que es un archivo que se emplea para configurar el control de versiones
- – favicon.ico, si tienes creado un favicon para el sitio, lo ideal es que lo mantengas en las siguientes versiones de la web.
- – Cualquier otro fichero que tengas para la gestión de posicionamiento. Por ejemplo, Bing Webmasters Tools suele emplear el fichero BingSiteAuth.xml para verificar la autenticidad de un sitio dado de alta dentro de su sistema.
- – Sites. La carpeta donde se almacenan todos los ficheros de tu sitio web (imágenes, pdfs… ) así como las plantillas de los temas, los php, los ficheros de los módulos, etc.
5.- Descargar la última versión de Drupal y descomprimir
Generalmente puedes obtenerla desde la página principal de Drupal, pero como últimamente le dan mucho bombo a la versión 8, ocultando la 7, y entiendo que lo que pretendes hacer es actualizar una 7.x, lo ideal es acudir a la página de descarga del Drupal Core.
Una vez descargada, la debes descomprimir en el lugar donde tenías la anterior instalación hecha (raíz, supongo). Evidentemente el sistema te dirá que ya existen algunos ficheros en la carpeta destino, a lo que tendrás que responder que quieres reemplazar esos ficheros y carpetas. De esa manera mantendrás los ficheros que no habías borrado en el paso anterior.
6.- Actualizar la base de datos
Es un proceso típico en Drupal que permite verificar que la base de datos que tienes está bien conectada con lo que acabas de instalar, ya sea un módulo o, como ocurre en esta ocasión, el core. Para ello solo tendrás que añadir update.php al dominio principal desde el que trabajas. Si, por ejemplo estás trabajando en local, la cosa sería: http://localhost/update.php
Con darle a la opción de “continuar”, y tras pocos segundos de espera, deberías obtener el mensaje de que todo está perfecto, y podrás acceder a la página de administrador del sitio.
7.- Restablecer el sitio
Lo único que queda es eliminar el modo mantenimiento. Si quieres tener seguridad de que ya estás trabajando con la versión que deseas solo debes acudir a los informes, y pedir que genere un informe de situación actual, que te mostrará la versión con la que trabajarás a partir de ahora.
Detectar idioma Afrikáans Albanés Alemán Amhárico Árabe Armenio Azerí Bengalí Bielorruso Birmano Bosnio Búlgaro Camboyano Canarés Catalán Cebuano Checo Chichewa Chino simp Chino trad Cincalés Coreano Corso Criollo haitiano Croata Danés Eslovaco Esloveno Español Esperanto Estonio Euskera Finlandés Francés Frisio Gaélico escocés Galés Gallego Georgiano Griego Gujarati Hausa Hawaiano Hebreo Hindi Hmong Holandés Húngaro Igbo Indonesio Inglés Irlandés Islandés Italiano Japonés Javanés Kazajo Kirguís Kurdo Lao Latín Letón Lituano Luxemburgués Macedonio Malayalam Malayo Malgache Maltés Maorí Maratí Mongol Nepalí Noruego Panyabí Pastún Persa Polaco Portugués Rumano Ruso Samoano Serbio Sesoto Shona Sindhi Somalí Suajili Sueco Sundanés Tagalo Tailandés Tamil Tayiko Telugu Turco Ucraniano Urdu Uzbeco Vietnamita Xhosa Yidis Yoruba Zulú |
Afrikáans Albanés Alemán Amhárico Árabe Armenio Azerí Bengalí Bielorruso Birmano Bosnio Búlgaro Camboyano Canarés Catalán Cebuano Checo Chichewa Chino simp Chino trad Cincalés Coreano Corso Criollo haitiano Croata Danés Eslovaco Esloveno Español Esperanto Estonio Euskera Finlandés Francés Frisio Gaélico escocés Galés Gallego Georgiano Griego Gujarati Hausa Hawaiano Hebreo Hindi Hmong Holandés Húngaro Igbo Indonesio Inglés Irlandés Islandés Italiano Japonés Javanés Kazajo Kirguís Kurdo Lao Latín Letón Lituano Luxemburgués Macedonio Malayalam Malayo Malgache Maltés Maorí Maratí Mongol Nepalí Noruego Panyabí Pastún Persa Polaco Portugués Rumano Ruso Samoano Serbio Sesoto Shona Sindhi Somalí Suajili Sueco Sundanés Tagalo Tailandés Tamil Tayiko Telugu Turco Ucraniano Urdu Uzbeco Vietnamita Xhosa Yidis Yoruba Zulú |
Deja una respuesta