Drupal, del que ya hemos hablado en detalle, es un gestor de contenidos web que funciona con PHP y una base de datos (usualmente MySQL).
Es importante decidir qué versión de Drupal vamos a utilizar. Las opciones a día de hoy son las versiones Drupal 6 —muy consolidada y con muchas extensiones disponibles— o Drupal 7 —más moderna y eficiente pero con menos extensiones por llevar menos tiempo operativa.

En lo esencial los procedimientos de instalación son muy similares, casi idénticos, por lo que vamos a instalar primero Drupal 6 (con la que funciona este mismo sitio web) y, en otro momento, explicaremos como instalar Drupal 7.
Para instalar Drupal en cualquier ordenador, necesitamos descargar una copia del sitio web de Drupal.org..
Como nuestro servidor es una versión de Ubuntu —es decir, de Linux—, podríamos desplegar una versión de Drupal a través de la línea de órdenes en la consola y podríamos agrupar las órdenes en un guión automático (script) que lo hiciera de un tirón.
Pero como no estamos montando una empresa de servicios de alojamiento web (hosting), vamos a hacerlo a mano a través de un programa de FTP o SCP para bajar los archivos del sitio original de Drupal y subirlos después a nuestro servidor.

Dentro del sitio web de Drupal, nos vamos a la página del núcleo de este CMS —en terminología de Drupal, el núcleo (core) es la instalación mínima predeterminada y sin añadidos de este sistema.

Pulsamos sobre el enlace de la versión 6.22 de Drupal y nos la descargamos en una carpeta de nuestro ordenador.

Allí la descomprimimos para que se desplegue en la estructura, como se ve arriba.

Con un programa de FTP como FileZilla o, mejor incluso, con un programa de SCP como WinSCP, establecemos una conexión entre nuestro ordenador personal y el espacio web en el servidor que hemos creado para ello.

En el FTP p SCP, en el lado remoto —es decir: del servidor— nos conectamos con la carpeta public_html del servidor virtual destinado a sinmayorsentido.com. En el lado local, abrimos la carpeta donde hemos desplegado el núcleo 6.22 de Drupal y lo copiamos en el servidor.
En el núcleo del lado del servidor, vamos a la carpeta "sites/all/default" y duplicamos el archivo "default.settings.php" con el nombre "settings.php". Si queremos, ya podemos cerrar el FTP o SCP.
Con el navegador nos vamos a la URL de nuestro sitio web; en nuestro caso, www.sinmayorsentido.com.

Si todo ha ido bien, deberíamos ver la pantalla que aparece arriba, donde elegiremos instalar Drupal en inglés (install Drupal in English).

Lo siguiente es configurar la base de datos para el uso de Drupal. Como Virtualmin le había dado el nombre automáticamente a la base de datos y al usuario de esta, es fácil poner los datos necesarios.

Una vez más, si todo ha ido bien, el programa de instalación mostrará una barra de progreso.

A continuación, Drupal nos pedirá que configuremos el sitio. En el nombre del sitio (site name) le damos el nombre que queramos que se muestre en la cabecera del sitio y que identifique a éste. No es necesariamente lo mismo que el dominio aunque sea la habitual. En nuestro caso, "Sin mayor sentido" es lo que vamos a poner. También agregamos el correo de administración del sitio (site e-mail address). Ambos datos se pueden cambiar sin problemas posteriormente.
Lo que sí es muy importante es la cuenta del administrador, ya que cambiar ésta después es más problemático en algunos casos. Teniendo en cuenta esto, damos un nombre, una contraseña y una dirección de correo electrónico para el super administrador.
Ajustamos la zona horaria del sitio web y el sistema hace la prueba de que admite lo que, en jerga de Drupal se llaman "URL limpias" (clean URL). —nuestro sistema lo va a pasar seguro.
Pulsamos "Guardar y continuar" (Save and continue).

Se terminó. Drupal está ya instalado y muestra la pantalla de bienvenida que se ve encima.
Ahora sóloqueda aprender a usarlo y dar los primeros pasos.
Comentarios
Problemas al no reconocer la existencia de una base de datos
En algunos casos, al instalar Drupal puede darse el mensaje "Your web server does not appear to support any common database types" (Su servidor no parece tener ninguno de los tipos usuales de bases de datos), a pesar de que esl sistema sí tiene instalada MySQL.
Además, puede ocurrir que drupal se queje también de la falta de bibliotecas GD en PHP .
Normalmente eso se debe a que le faltan unas extensiones en PHP. La solución es instalarlas. En la línea de órdenes de Ubuntu eso se hace con las órdenes (como root):
sudo apt-get install php5-gdY reiniciamos el servidor Apache:
/etc/init.d/apache2 restartPara instalar las extensiones relacionadas con la base de datos MySQL, la orden es:
sudo apt-get install php5-odbc php5-common php5-mysqlY recargamos Apache:
sudo /etc/init.d/apache2 reloadEso debería bastar
Problemas: Falta la biblioteca cURL en PHP
Al activar algún módulo, puede que Drupal reclame la instalación de la biblioteca cURL de PHP. En la línea de órdenes de Ubuntu esto se hace así:
sudo apt-get install curl libcurl3 libcurl3-dev php5-curlY reiniciamos Apache:
sudo /etc/init.d/apache2 restartProblemas al faltar la biblioteca Upload PECL
Uno de los avisos que podremos ver en la sección de informes de nuestra instalación Drupal es el comentario (es decir: no es un error, sino un consejo) de que faltan unas biblioteca de PHP que permiten mostrar una barra de progreso cuando se suben archivos al servidor.
No es grave, es sólo la ausencia de una cucada visual, pero podemos arreglarlo instalándolas desde la cónsola de línea de órdenes (como usuario root o como sudo):
Instalamos el paquete de desarrollo de la versión 5 de PHP:
sudo apt-get install php5-devInstalamos Pear, un entorno para la distribución de componentes PHP reutilizables:
sudo apt-get install php-pear php5-devInstalamos apxs, una herramienta para construir e instalar módulos de extensiones para nuestro servidor web Apache:
sudo apt-get install apache2-devInstalamos la librería PECL en cuestión:
sudo pecl install uploadprogressCon un editor como vim, abrimos el archivo php.ini:
sudo vim /etc/php5/apache2/php.iniY le añadimos la extensión:
extension=uploadprogress.soSi no nos manejamos bien con vim, podemos abrir ese archivo de nuestro servidor desde Webmin y añadirlo allí mismo (Webmin - Others - PHP Configuration - Edit manually).
Además, como estaremos operando con Virtualmin y Webmin, hay que ir al archivo php.ini del servidor en cuestión y añadir allí también la línea mencionada. En mi servidor sinmayorsentido.com, que uso en estos ejemplos, el php.ini personalizado o privativo del servidor reside en
/home/sinmayorsentido/etc/php.iniy no es este otro/etc/php5/apache2/php.iniY ya sólo nos queda reiniciar Apache:
sudo /etc/init.d/apache2 restart