Joomla! es un sistema de gestión de contenidos o CMS (Content Management System), que permite crear sitios web y aplicaciones online. Aunque destaca por la facilidad de uso y el amplio número de extensiones, lo mejor de todo es que es de código abierto bajo una licencia GPL.
Para poder instalar Joomla necesitaremos tener previamente instalados un servidor web, una base de datos y el intérprete de PHP. Si no los tienes ya instalados, puedes seguir el tutorial instalar LAMP en Ubuntu Server paso a paso.
Uno de los objetivos principales de este tutorial es intentar instalar Joomla! de forma segura, es decir, nada de asignar permisos 777 ni a archivos ni directorios, no usaremos el usuario root de MySQL y cosas por el estilo. He realizado este tutorial sobre un Ubuntu Server 9.04 pero no hay nada específico para él, es decir, se hace igual en cualquier otra versión de Ubuntu sea Server o no.
Sin más, vamos al lío.
Los pasos para instalar Joomla sobre Ubuntu Server son los siguientes:
- Nos aseguramos de encontrarnos en nuestro home:
cd - Creamos un directorio para almacenar la estructura de Joomla:
mkdir joomla - Nos cambiamos al nuevo directorio:
cd joomla - Descargamos la última versión en español de Joomla (en el momento de escribir este tutorial es la 1.5.14):
wget http://joomlacode.org/gf/download/frsrelease/10806/42944/Joomla_1.5.14-Spanish-pack_completo.tar.gz - Descomprimimos el archivo descargado:
tar xzvf Joomla_1.5.14-Spanish-pack_completo.tar.gz - Borramos el archivo comprimido porque ya no lo volveremos a necesitar:
rm -f Joomla_1.5.14-Spanish-pack_completo.tar.gz - Nos cambiamos al directorio superior para poder mover correctamente, en el siguiente paso, el directorio joomla que era en el que nos encontrábamos:
cd .. - Movemos el directorio que contiene la estructura de Joomla a /var/www:
sudo mv joomla /var/www - Para hacer que nuestro servidor sea algo más seguro vamos a cambiar el propietario y el grupo de todos los archivos y directorios (de forma recursiva) de /var/www/joomla:
sudo chown -R root:root /var/www/joomla - Nos cambiamos al directorio /var/www/joomla:
cd /var/www/joomla - Creamos la variable LUGARES (no te preocupes, puedes escribir así en el Terminal, saldrá bien):
LUGARES='
administrator/backups
administrator/components
administrator/modules
administrator/templates
cache
components
images
images/banners
images/stories
language
plugins
media
modules
templates
' - Para todos los directorios de la variable LUGARES cambiamos el usuario y grupo propietarios a www-data (el usuario de Apache):
for i in $LUGARES; do
sudo chown -R www-data:www-data $i
done - Cambiamos los permisos de los archivos para que todos los usuarios puedan leerlos pero sólo el propietario tenga permisos de escritura:
sudo find . -type f -exec chmod 644 {} \; - Cambiamos los permisos de los directorios para que todos los usuarios puedan leerlos y ejecutarlos pero sólo el propietario pueda escribir en ellos:
sudo find . -type d -exec chmod 755 {} \; - Creamos una base de datos para Joomla de nombre bdjoomla (pero puedes ponerle el nombre que quieras):
mysqladmin -u root -p create bdjoomla - Accedemos a MySQL con el usuario root y la contraseña que hubiésemos elegido cuando lo instalamos:
mysql -u root -py creamos un usuario de nombre joomlaadmin y contraseña nimdaalmooj (también puedes cambiar estos nombres):
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON bdjoomla.* TO 'joomlaadmin'@'localhost' IDENTIFIED BY 'nimdaalmooj'; - Activamos los permisos:
FLUSH PRIVILEGES; - Salimos de MySQL:
quit - Eliminamos el historial de MySQL porque la contraseña se lee a simple vista:
rm -f ~/.mysql_history - Por fin, ya estamos preparados para empezar la instalación. Así que, como en principio suponemos que estamos sobre un Ubuntu Server, nos vamos a otro equipo de la red que tenga interfaz gráfica y abrimos un navegador. En la dirección escribimos http://192.168.1.5/joomla (cambia 192.168.1.5 por la dirección IP de tu servidor).
- Entonces veremos un asistente para ayudarnos a instalar Joomla en el que lo primero que debemos hacer es elegir el idioma de la instalación. Y después hacemos clic en Siguiente.
- En el siguiente paso consiste en una comprobación previa a la instalación para que sepamos lo bien o mal que tenemos preparado el sistema. En principio, no hace falta que todos los parámetros estén en verde pero nosotros sí vamos a hacer todo lo necesario para que así sea. Por eso, nos fijamos que tenemos dos advertencias en rojo que vamos a solucionar.
- Para solucionar el primero de los problemas creamos el archivo /var/www/joomla/configuration.php, que es donde Joomla guardará los datos de configuración de nuestro sitio web:
sudo touch /var/www/joomla/configuration.php - Le cambiamos el propietario y el grupo para poder escribir en él:
sudo chown www-data:www-data /var/www/joomla/configuration.php - Y nos aseguramos que tenemos permiso de escritura asignándole de nuevo los permisos:
sudo chmod 644 /var/www/joomla/configuration.php - Pasamos a solucionar el segundo de los problemas detectados. Por eso editamos el archivo /etc/php5/apache2/php.ini con el comando:
sudo nano /etc/php5/apache2/php.iniy cambiamos el valor de la directiva display_errors de On a Off:
display_errors = Off - Continuamos con la instalación haciendo clic sobre el botón Volver a comprobar (dependiendo del tiempo que haya pasado nos aparecerá un mensaje de error y deberemos comenzar de nuevo). Lo primero que hacemos es verificar que ahora todos los parámetros son correctos y están en verde:
- En el siguiente paso leemos la licencia y, una vez hayamos finalizado, hacemos clic sobre Siguiente.
- A continuación, debemos escribir los datos de configuración de MySQL. Utilizaremos el usuario joomlaadmin creado específicamente para administrar la base de datos bdjoomla.Y pulsamos Siguiente:
- Para no hacer más largo este tutorial no configuraremos el servidor FTP. Así que hacemos clic en Siguiente:
- En la configuración principal deberemos escribir tanto el nombre de nuestro sitio web como el correo electrónico del administrador y la contraseña para el usuario admin. El usuario admin lo crea Joomla por defecto y será con el que empecemos a administrar nuestro sitio. Además podemos instalar datos de ejemplo pulsando sobre el botón correspondiente:
- ¡Listo! Ya hemos terminado de instalar Joomla. Se nos indica que borremos el directorio installation porque si no lo hacemos no podremos usar Joomla y se nos recuerda que el nombre de usuario para entrar en la interfaz de administración es admin.
- De nuevo en el servidor, una vez que hemos terminado la instalación debemos eliminar el directorio /var/www/joomla/instalation como se nos indicó en el paso anterior:
sudo rm -R /var/www/joomla/installation/ - Y no debemos olvidarnos de modificar los permisos del archivo configuration.php para que sea de solo lectura para todo el mundo:
sudo chmod 444 /var/www/joomla/configuration.php - Ahora desde cualquier equipo de nuestra red abrimos un navegador y escribimos la dirección http://192.168.1.5/joomla para acceder a nuestro nuevo portal.
- Si lo que queremos es administrar nuestro Joomla, deberemos utilizar la siguiente dirección: http://192.168.1.5/joomla/administrator
- Y después de introducir nuestro nombre de usuario (admin) y la contraseña que escribimos, tendremos acceso a la nuestra interfaz de administración:
Sin embargo, nos queda una última cosa por hacer, cambiar la ruta del directorio temporal. Para esto hacemos clic en el icono Configuración.
- En la pantalla de Configuración global, hacemos clic sobre Servidor y en la Ruta al directorio temporal escribimos /tmp. Después guardamos los cambios y listo.
A partir de aquí empieza una nueva aventura: administrar Joomla!
Fuente: Community Ubuntu Documentation.
Artículos relacionados:
- Instalar Webmin en Ubuntu paso a paso
- Ubuntu Server con interfaz gráfica
- Instalar phpMyAdmin en Ubuntu 9.04 Server paso a paso
- Instalar LAMP en Ubuntu 9.04 Server paso a paso
- Instalar Ubuntu 9.04 Server paso a paso














Excelente tutorial, me va a ser muy útil. Probaré y comento.
Gracias
Gracias, termine de instalarlo perfectamente en Ubuntu 10.4, ahora solo me queda comenzar a utilizarlo.
Aclare dudas que tenia con respecto a los permisos.
Gracias.
Atte.
Cristian Morales.
hola ke tal
grax esta todo bien
solo ke me paso algo , se me olvido mi la contraseña de admin como la cambio ?????????????????
me podrian ayudar !!!!!!!!!
gracias
***
Y no debemos olvidarnos de modificar los permisos del archivo configuration.php para que sea de solo lectura para todo el mundo:
sudo chmod 444 /var/www/joomla/configuration.php
****
Si lo dejas en 444 no escribiras el fichero de configuración como Admin
sudo chmod 744 /var/www/joomla/configuration.php
Excelente tutorial, gracias por todo.
Solo falta publicar la parte de FTP
Mi más sincera enhorabuena. Excelente labor de difusión y hacer amigable el software libre.
Mis felicitaciones.
no me deja hacer el ultimo paso,
38. En la pantalla de Configuración global, hacemos clic sobre Servidor y en la Ruta al directorio temporal escribimos /tmp. Después guardamos los cambios y listo.
A partir de aquí empieza una nueva aventura: administrar Joomla!
debes corregir momentáneamente los permisos del archivo de configuración, y luego de hacer el cambio en la admin, volverlo como antes, o alternar el paso al instalar
Excelente tutorial
Tenés un error en esta línea
tar xzvf Joomla_1.5.14-Stable-Full_Package.tar.gz
debería ser:
tar xzvf Joomla_1.5.14-Spanish-pack_completo.tar.gz
Por lo demás me corrió a la primera
Gracias mil
@Jorge
¡¡¡Muchas gracias!!! Tanto por el comentario como por el error. Ya he corregido el artículo :-D
Me alegro que te funcionara bien.
Saludos.
Perdona pero tengo un problema en el paso:
13. – sudo find . -type f -exec chmod 644 {} \;
me sale un error que dice falta un parametro para ‘-exec’ y nose porque puede ser.
Si a mi me parece que el punto podría pasarse al final y así terminar todo limpiamente
Me refería al punto:
34.Y no debemos olvidarnos de modificar los permisos del archivo configuration.php para que sea de solo lectura para todo el mundo:
sudo chmod 444 /var/www/joomla/configuration.php
Hola Andrés. Tengo una duda sobre el apartado del FTP. Concrétamente como configurarlo y si hay que tener la capa activada para que funcione. El caso es que se tiene un servidor con FTP donde irán todas nuestras carpetas del contenido que luego publicaremos en el Joomla y nos hace falta ese apartado. Gracias de antemano.
¡Hola Jesús! Me alegra verte por aquí. Siento tener que decirte que no me acuerdo de como iba (sólo lo he montado una vez). Me lo apunto para hacer un tutorial un día de estos pero no creo que lo tenga listo a corto plazo. Si lo necesitas urgentemente, intenta echarle un vistazo a la documentación oficial de Joomla.
Saludos.
Magnifico tutorial, despues de haberme pasado varias horas intentando corregir la intalacion en lampp, segui el tuyo y todo ok, muchas gracias por este grandisimo aporte a la comunidad.
Tengo problema porque no encuentro el archivo que me pide que borre (installation), no se encuentra en /var/www/joomla
Excelente articulo.
Hace tiempo que quería probar Joomla y hoy por fin he logrado configurarlo correctamente.
Gracias.
Hola oye una pregunta, cuando bajo el archivo y lo quiero descomprimir me dice lo siguiente “no existe el fichero” que puede ser? el objeto finalmente se llama spanish-pack_completo.tar.gz, no???
saludos y gracias por el tutorial
Se debe llamar Joomla_1.5.14-Spanish-pack_completo.tar.gz
Hola ya pude instalar joomla, gracias!
ahora cuando quiero instalar una plantilla me marca el siguiente error
Warning! Failed to move file.
que puede ser, saludos!
Muchas gracias, funciona a la perfeccion, yo lo probe en ubuntu server 9.10 y todo ok, gracias por compartir este tutorial.
Saludos.
Tengo error en el paso 8.
edxato@edxato:~$ sudo mv joomla /var/www
mv: falló el movimiento entre distintos dispositivos: de «joomla» a «/var/www/joomla»;
Te recomiendo revisar si Joomla está en el directorio en que estás posicionado
Excelente.
Siempre me habia preguntado que otras soluciones habia para quitar los errores en “rojo” de la instalacion. Siempre que no fuera chmod 777 a las carpetas.
Muchas gracias =)
Genial el tutorial, el único problema es que terminé de hacer todo como lo ibas indicando y ahora tengo un error que dice “Database Error: Unable to connect to the database:Could not connect to MySQL”
Excelente tutorial, lo seguí y me fué bastante bien, solo tuve un inconveniente con el archivo “configuration.php” ya que no está. Tengo un archivo que se llama “configuration.php-dist”. Despues de haber borrado el directorio Installation quise ingresar y me tiró el mensaje “No configuration file found and no installation code available. Exiting…”. Qué puedo hacer con respecto a esto? Desde ya muchas gracias
Mario
Asegurate que esto haya corrido bien
23.Para solucionar el primero de los problemas creamos el archivo /var/www/joomla/configuration.php, que es donde Joomla guardará los datos de configuración de nuestro sitio web:
sudo touch /var/www/joomla/configuration.php
Gracias de nuevo. Ningún problema en Lucid. :) Saludos!!
Muy útil mil gracias.
Muy bueno el blog ya lo puede instalr todo bien pero ahora tengo un problema, cuando quiero publicar o despublicar cualquier articulo me pone seleccione la pagina, la cuestion es que no me aparece el checbok al lado de las paginas porque sera?
Espero que me puedan ayudar?
Muchas Gracias
Excelente trabajo muchas gracias…. con tutoriales como estos vale la pena arriesgarse a ser ubuntu-fan
Hola: Yo antes tenia el Xp y antes de poner ubuntu 10.04 hice una salva de mi sitio web. Ahora en Ubuntu ya instale apche2, mysql, php y phpmyadmin…. impporte la base de datos. El Problemas es el siguiente, yo copie la carpeta de mi sitio en var/www pero no me sale nada en web cuando llamo mi sitio, Alquien sabe que modificaciones tengo que hacer para que se me muestre?
Muchas gracias por este tutorial es genial :D
La única desventaja de tanta seguridad es que no me dejaba instalar una extensión. La solución ha sido un chmod -R 777. Aunque luego lo he vuelto a dejar todo como indicas.
Saludos y gracias.
Hola podrías darme un ejemplo sobre a q darle archivos o carpetas darle permisos para que se pueda instalar las extenciones.. o se le dan los permisos a absolutamente toda la carpeta de mi web ? Mil gracias por responder.
Muy buena Guía, Me funciono sin ningún problema.
Hola, el tutorial es estupendo, pero perdone mi ignorancia cual es el comando para crear el usuario en esta instrucción:
y creamos un usuario de nombre joomlaadmin y contraseña nimdaalmooj (también puedes cambiar estos nombres):
Nunca he manejado la base de datos, por eso necesito los comandos, gracias.
Ahí mismo esta la respuesta
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON bdjoomla.* TO ‘joomlaadmin’@'localhost’ IDENTIFIED BY ‘nimdaalmooj’;
estimado, tengo una duda entre el paso 10 y el paso 11…
10 Nos cambiamos al directorio /var/www/joomla:
cd /var/www/joomla
11 Creamos la variable LUGARES (no te preocupes, puedes escribir así en el Terminal, saldrá bien):
podrias definir bien o explicarme el paso 11?????
te lo agradecería
Precisamente eso, escribis en la línea de comandos:
$LUGARES=’
administrator/backups
administrator/components
administrator/modules
administrator/templates
cache
components
images
images/banners
images/stories
language
plugins
media
modules
templates
‘
$
Simplemente excelente. Un tutorial magistral. Los felicito. Son unos campeones. Es un placer leer vuestra página. Les envío mis saludos.
Gran tutorial! Ya puedo empezar a experimentar a Joomla en mi Ubuntu. Gracias!
Gracias sinceramente está al cien tu tutorial , !
Nada solo comentar que este tutorial es simplemente perfecto, he podido instalar el Joomla sin ningun problema y totalmente operativo.
Un saludo y 1000 gracias =D
Muchísimas gracias.
Muy bien explicado y detallado, excelente.
Saludos
perdón, se me olvidó comentar que en una ocasión siguiento estos pasos tuve problemas con algunos módulos.
El problema fue con los paquetes de idiomas de dichos módulos, que según los permisos dados no se copiaban, y quedaba la aplicación con el cifrado base sin el idioma, viendo toda la codificación en la web.
La forma de arreglarlo creo que es dando permisos de escritura también dentro del directorio
administrator/languages
Así todos los módulos que instalan dichos archivos de idioma funcionan correctamente.
Saludos y muchísimas gracias
Amigos, los felicito esto es amor por la gente.
tengo un par de dudas que me impidieron avanzar. (aclaro que soy un supernovato)
1-Me quede en el paso numero 20 pues yo no uso ubuntu server si no que tengo una versión normal de escritorio…ademas de ellos desconozco mi direccion ip.
Excelente, como siempre funcionan tus tutoriales
gracias amigo
Excelente tutorial ya intale jooomla , pero ahora quiero instalar huru helpdesk tienes alguna info donde puedan explicar el procedimiento correcto ?
gracias.
Voy como avión hasta el paso 12
Para todos los directorios de la variable LUGARES cambiamos el usuario y grupo propietarios a www-data (el usuario de Apache):
for i in $LUGARES; do
sudo chown -R www-data:www-data $i
done
No me resulta
No puedo seguir después del numeral 16. mysql -u root -p
Enter password: digito mi password de administrador y sale el siguiente error:
ERROR 2002 /HY000: Can’t connect to local MySQL server through socket ‘/valor/run*mysqld/mysqld.sock’ (2)
Muchas gracias por toda la informacion, en serio me sirvió de mucho, espero que continues poniendo tutoriales como este :D