Diferencia entre revisiones de «DRUPAL Actualización»

De MediaWiki
Ir a la navegación Ir a la búsqueda
 
(No se muestran 6 ediciones intermedias del mismo usuario)
Línea 17: Línea 17:
 
</gallery>
 
</gallery>
  
 +
== Informes de estado ==
 +
 +
* Neste apartado se nos informará sobre posibles problemas de seguridade debido a unha mala configuración dos arquivos de configuración de Drupal ou de versións non actualizadas.
 +
: Tamén informa da versión do Apache, Base de datos,...
 +
 +
<gallery caption="Informes de estado" widths="350" heights="300px" perrow="2">
 +
Image:Drupal_actualizacions_estado_1.jpg| Debemos escoller Menú '''Administrar''' => '''Informes''' => Enlace '''Informes de estado'''.
 +
Image:Drupal_actualizacions_estado_2.jpg| Informa da versión do Core instalada. Se houbera outra versión aparecería aquí. Tamén informa dun problema na configuración do Drupal. Isto xa o solucionamos [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Comprobaci.C3.B3ns_trala_instalaci.C3.B3n durante a instalación...].
 +
</gallery>
  
 
==Copia de seguridade completa==
 
==Copia de seguridade completa==
Línea 30: Línea 39:
  
 
# [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Modo_Mantemento Cambiamos Drupal a modo Mantemento].  
 
# [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Modo_Mantemento Cambiamos Drupal a modo Mantemento].  
 +
# Limpamos a caché. O podemos facer graficamente como está indicado [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Atallos#Engadindo_un_atallo neste enlace], no que se fala como facer para ter atallos. Se indica onde está a opción para limpar a caché.
 
# Facemos unha copia física do cartafol Drupal, coa orde '''cp -rp /drupal /backupDrupal/''', sendo /drupal o cartafol onde está instalado e /backupDrupal o cartafol onde queremos copiar o sitio web. A opción -p do comando cp preserva os permisos.
 
# Facemos unha copia física do cartafol Drupal, coa orde '''cp -rp /drupal /backupDrupal/''', sendo /drupal o cartafol onde está instalado e /backupDrupal o cartafol onde queremos copiar o sitio web. A opción -p do comando cp preserva os permisos.
 
# Comprimimos o cartafol coa orde: '''tar czf drupalbackup.tgz /backupDrupal/drupal'''.
 
# Comprimimos o cartafol coa orde: '''tar czf drupalbackup.tgz /backupDrupal/drupal'''.
Línea 58: Línea 68:
 
:# Restaurar a base de datos coa orde: '''mysql -u {user} -p {database} < {backup.sql}'''.
 
:# Restaurar a base de datos coa orde: '''mysql -u {user} -p {database} < {backup.sql}'''.
 
:: * Isto so serve cando restauramos a base de datos sobre un Mysql que xa a ten creada e cos permisos asinados ao usuario que utiliza drupal na súa configuración para acceder a dita base de datos. Se non teríamos que crear a base de datos, restaurala, crear o usuario e darlle permiso para acceder á base de datos [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Instalaci.C3.B3n_e_configuraci.C3.B3n_do_Mysql como fixemos durante a instalación].
 
:: * Isto so serve cando restauramos a base de datos sobre un Mysql que xa a ten creada e cos permisos asinados ao usuario que utiliza drupal na súa configuración para acceder a dita base de datos. Se non teríamos que crear a base de datos, restaurala, crear o usuario e darlle permiso para acceder á base de datos [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Instalaci.C3.B3n_e_configuraci.C3.B3n_do_Mysql como fixemos durante a instalación].
 +
 +
 +
:<u>'''IMPORTANTE:'''</u> Se cando restaurades o DRUPAL vos aparece a páxina principal pero despois non podedes acceder a ningunha outra:
 +
::* Revisade o arquivo '''.htaccess''' do sitio web e comprobar a directiva '''RewriteBase''' como [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Modificando_a_directiva_RewriteBase xa vimos na instalación]. Esta directiva está relacionada coa configuración do servidor Apache (/etc/apache2/sites-available/000-default.conf).
 +
::* É importante que se o servidor Web orixinal ten activado o '''módulo mod_rewrite''' tamén o teñades no servidor web de destino. Xa vimos como activalo [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Pasos_previos durante o punto da instalación].
 +
 +
:: Lembrade que se facedes calquera cambio teredes que reiniciar o servizo: '''sudo service apache2 restart'''.
 +
 +
:: Se segue sen funcionar ao mellor teredes que limpar a caché có [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalar_Drush comando drush] e a orde '''drush cache-rebuild'''.
  
  
Línea 63: Línea 82:
  
 
* <u>Nota:</u> Tamén podemos facer unha copia da base de datos utilizando o comando [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalar_Drush Drush].
 
* <u>Nota:</u> Tamén podemos facer unha copia da base de datos utilizando o comando [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalar_Drush Drush].
−
 
  
 
=== Utilizando o módulo Backup and Migrate ===
 
=== Utilizando o módulo Backup and Migrate ===
  
−
*<u>Nota:</u> Para saber como instalar un módulo podedes consulta [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_M%C3%B3dulos_Instalaci%C3%B3n este punto da wiki].
+
*<u>Nota:</u> Para saber como instalar un módulo podedes consultar [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_M%C3%B3dulos_Instalaci%C3%B3n este punto da wiki].
  
−
: NO MOMENTO DE ESCRIBIR ESTE MANUAL, O MÓDULO <uNON PODE SER UTILIZADO</u> POLO DRUPAL 8.
+
: <u>Actualización:</u>
 +
:: A catro de Abril do 2017 infórmase que xa pode ser utilizado pola versión 8 de Drupal.  
  
  
Línea 94: Línea 113:
 
Image:Drupal_modo_mantemento_2.jpg| [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Modo_Mantemento Cambiamos Drupal a modo Mantemento].
 
Image:Drupal_modo_mantemento_2.jpg| [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Modo_Mantemento Cambiamos Drupal a modo Mantemento].
 
Image:Drupal_actualizacion_4.jpg| Agora borramos os cartafoles '''/drupal/core''' e '''/drupal/vendor''' así como todo o contido do '''cartafol raíz''' onde está instalado Drupal. Teremos que gardar o [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Instalaci.C3.B3n_de_Git cartafol .git] se o temos instalado. Para facer o borrado dos arquivos (estando situados no cartafol de instalación de Drupal): '''rm -rf core vendor''' e '''rm *.* .*''' Se tivésemos algún cartafol creado por nos con contido deberemos facer unha copia previamente do mesmo. Tamén se fixemos modificacións nos arquivos .htaccess, composer.json ou robots.txt deberemos facer copia. <br/> <u>Nota:</u> Algunhas actualizacións de Cores implican modificacións no arquivo de instalación '''settings.php''' que se atopa en /sites/default (isto ven indicado na información da propia actualización). Nestes casos, deberemos: Facer unha copia do settings.php; copiar o arquivo default.settings.php que ven coa nova versión Core e nomealo co nome settings.php; modificar o novo arquivo settings.php cos datos modificados (normalmente ven ser o nome do usuario, password e nome da base de datos coa que conectamos con Mysql.
 
Image:Drupal_actualizacion_4.jpg| Agora borramos os cartafoles '''/drupal/core''' e '''/drupal/vendor''' así como todo o contido do '''cartafol raíz''' onde está instalado Drupal. Teremos que gardar o [http://wiki.cifprodolfoucha.es/index.php?title=DRUPAL_Instalaci%C3%B3n#Instalaci.C3.B3n_de_Git cartafol .git] se o temos instalado. Para facer o borrado dos arquivos (estando situados no cartafol de instalación de Drupal): '''rm -rf core vendor''' e '''rm *.* .*''' Se tivésemos algún cartafol creado por nos con contido deberemos facer unha copia previamente do mesmo. Tamén se fixemos modificacións nos arquivos .htaccess, composer.json ou robots.txt deberemos facer copia. <br/> <u>Nota:</u> Algunhas actualizacións de Cores implican modificacións no arquivo de instalación '''settings.php''' que se atopa en /sites/default (isto ven indicado na información da propia actualización). Nestes casos, deberemos: Facer unha copia do settings.php; copiar o arquivo default.settings.php que ven coa nova versión Core e nomealo co nome settings.php; modificar o novo arquivo settings.php cos datos modificados (normalmente ven ser o nome do usuario, password e nome da base de datos coa que conectamos con Mysql.
−
Image:Drupal_actualizacion_5.jpg| Descomprimimos o novo Core descargado coa orde: '''tar -zxvf drupal-x.y.z.tar.gz''' e o copiamos coa orden: '''cp -Rf drupal-x.y.z/* drupal-x.y.z/.* /path_instalación_drupal'''. No noso caso o path sería: '''tar -zxvf drupal-8.2.0-beta3.tar.gz''' e '''cp -Rf drupal-8.2.0-beta3/* drupal-8.2.0-beta3/.* /opt/lampp/htdocs/drupal'''. Se tiñamos algunha modificación feita nos arquivos .htaccess, composer.json ou robots.txt a restauraremos.  
+
Image:Drupal_actualizacion_5.jpg| Descomprimimos o novo Core descargado coa orde: '''tar -zxvf drupal-x.y.z.tar.gz''' e o copiamos coa orden: '''cp -Rf drupal-x.y.z/* /path_instalación_drupal''' e '''cp  drupal-x.y.z/.* /path_instalación_drupal''' . No noso caso o path sería: '''tar -zxvf drupal-8.2.0-beta3.tar.gz''' e '''cp -Rf drupal-8.2.0-beta3/* drupal-8.2.0-beta3/.* /opt/lampp/htdocs/drupal'''. Se tiñamos algunha modificación feita nos arquivos .htaccess, composer.json ou robots.txt a restauraremos.  
 
Image:Drupal_actualizacion_6.jpg| Se estamos a utizar [https://getcomposer.org/doc/00-intro.md composer] executaremos a orde 'composer update drupal/core --with-dependencies' (non é o noso caso). Nos executaremos o arquivo 'update.php' poñendo na URL do navegador a orde: '''http://localhost/drupal/update.php'''. Se tivésemos un dominio teriamos que poñer: http://midominio.es/update.php. Aparecerá un asistente no que se nos informa da necesidade da facer unha copia de seguridade do cartafol /sites/ e da base de datos Mysql.
 
Image:Drupal_actualizacion_6.jpg| Se estamos a utizar [https://getcomposer.org/doc/00-intro.md composer] executaremos a orde 'composer update drupal/core --with-dependencies' (non é o noso caso). Nos executaremos o arquivo 'update.php' poñendo na URL do navegador a orde: '''http://localhost/drupal/update.php'''. Se tivésemos un dominio teriamos que poñer: http://midominio.es/update.php. Aparecerá un asistente no que se nos informa da necesidade da facer unha copia de seguridade do cartafol /sites/ e da base de datos Mysql.
 
Image:Drupal_actualizacion_7.jpg| Se nos informa dos cambios que van a producirse. Prememos o botón '''Actualización Pendentes de Aplicar'''.
 
Image:Drupal_actualizacion_7.jpg| Se nos informa dos cambios que van a producirse. Prememos o botón '''Actualización Pendentes de Aplicar'''.

Revisión actual del 16:37 30 jun 2017

Introdución


  • Cada certo tempo Drupal lanza actualizacións do seu Core (núcleo principal cos módulos necesarios para ter unha funcionalidade mínima) ou ben actualizacións de Módulos instalados por nos ou Temas.
  • Como normas xerais, cando se fai unha actualización de Drupal recoméndase:


  • Para realizar unha actualización deberemos:

Informes de estado

  • Neste apartado se nos informará sobre posibles problemas de seguridade debido a unha mala configuración dos arquivos de configuración de Drupal ou de versións non actualizadas.
Tamén informa da versión do Apache, Base de datos,...

Copia de seguridade completa

  • NOTA: Esta sección está asociada á realización dun EXERCICIO.


  • En calquera momento podemos facer unha copia de seguridade de todo o noso Drupal.
  • Pódese facer ou ben usando un módulo previamente instalado (coma backup and migrate) ou ben manualmente. Imos facelo manualmente.

Manualmente

  1. Cambiamos Drupal a modo Mantemento.
  2. Limpamos a caché. O podemos facer graficamente como está indicado neste enlace, no que se fala como facer para ter atallos. Se indica onde está a opción para limpar a caché.
  3. Facemos unha copia física do cartafol Drupal, coa orde cp -rp /drupal /backupDrupal/, sendo /drupal o cartafol onde está instalado e /backupDrupal o cartafol onde queremos copiar o sitio web. A opción -p do comando cp preserva os permisos.
  4. Comprimimos o cartafol coa orde: tar czf drupalbackup.tgz /backupDrupal/drupal.
  5. Facemos o backup da base de datos Mysql asociada ao Drupal. `Lembrar que podemos facela graficamente utilizando a ferramenta PhpMyAdmin.
    1. É recomendable parar os traballos programado que teñamos no Cron mentres facemos o backup.
    2. Executaremos a orde: mysqldump -u USERNAME -p'PASSWORD' DATABASENAME > /path/to/backup_dir/database-backup.sql
  • Sendo:
  • Username e Password o usuario utilizado na instalación do Drupal. Lembrar que os datos os temos no arquivo de configuración /drupal/sites/default/installation.php.
  • DATABASENAME: Nome da base de datos utilizado na instalación do Drupal. Tamén se atopa no arquivo installation.php
  • Nota: Pode suceder que se estades nun aloxamento non dedicado vos dea un erro. Isto o solucionaredes utilizando o parámetro -h nome_do_host: mysqldump -h nome_host -u USERNAME -p'PASSWORD' DATABASENAME > /path/to/backup_dir/database-backup.sql. Sendo o nome do host un parámetro que vos ten que dar o voso provedor de aloxamento.
  1. Desactivamos o modo mantemento.


Nota: Se non temos mysqldump instalado podemos instalalo coa orde: apt-get install mysql-client-5.6.
* Se estamos a utilizar XAMPP debemos cambiar o arquivo de configuración /etc/mysql/my.cnf e cambiar as liñas:
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
por (está en varias liñas)
pid-file = /opt/lampp/var/mysql/mysqld.pid
socket = /opt/lampp/var/mysql/mysql.sock



  • O proceso para restaurar o sitio web completo debería ser:
  1. Descomprimir a copia de seguridade coa orde: tar -xvf archivo.tar
  2. Copiar de volta o cartafol có Drupal coa orde: cp -rp /backupDrupal/drupal /cartafol_a_restaurar/ sendo /cartafol_a_restaurar no caso de utilizar xampp é /opt/lampp/httdocs.
  3. Restaurar a base de datos coa orde: mysql -u {user} -p {database} < {backup.sql}.
* Isto so serve cando restauramos a base de datos sobre un Mysql que xa a ten creada e cos permisos asinados ao usuario que utiliza drupal na súa configuración para acceder a dita base de datos. Se non teríamos que crear a base de datos, restaurala, crear o usuario e darlle permiso para acceder á base de datos como fixemos durante a instalación.


IMPORTANTE: Se cando restaurades o DRUPAL vos aparece a páxina principal pero despois non podedes acceder a ningunha outra:
  • Revisade o arquivo .htaccess do sitio web e comprobar a directiva RewriteBase como xa vimos na instalación. Esta directiva está relacionada coa configuración do servidor Apache (/etc/apache2/sites-available/000-default.conf).
  • É importante que se o servidor Web orixinal ten activado o módulo mod_rewrite tamén o teñades no servidor web de destino. Xa vimos como activalo durante o punto da instalación.
Lembrade que se facedes calquera cambio teredes que reiniciar o servizo: sudo service apache2 restart.
Se segue sen funcionar ao mellor teredes que limpar a caché có comando drush e a orde drush cache-rebuild.



  • Nota: Tamén podemos facer unha copia da base de datos utilizando o comando Drush.

Utilizando o módulo Backup and Migrate

Actualización:
A catro de Abril do 2017 infórmase que xa pode ser utilizado pola versión 8 de Drupal.


  • Podemos descargar o módulo backup and migrate dende este enlace.
  • Unha vez descargado teremos unha nova entrada na sección de Administrar => Configuración => Sección Desarrollo:
Drupal actualizacion 11.jpg

Actualización do Core de Drupal


  • NOTA: Esta sección está asociada á realización dun EXERCICIO.


  • Actualización Update: Consiste en actualizar a versión de Drupal dende un 8.x a un 8.y. Máis información neste enlace.
  • Actualización Upgrade: Consiste en actualizar dende un Drupal 8.x a un 9.y, por exemplo. Máis información neste enlace.



  • Imos facer de exemplo, unha actualización á versión 8.2.0-beta2 (no momento de escribir este manual). As versión beta son de proba e en desenvolvemento polo que non deben ser empregadas para un sitio web en produción.







-- Ángel D. Fernández González -- (2016).