Solucionar error $cfg[‘TempDir’] (./tmp/) inaccesible en phpMyAdmin XAMPP versión GNU/Linux

Comparte este post

No es la primera vez que tras actualizar algún equipo y reinstalar XAMPP, al acceder a phpMyAdmin para crear mis bases de datos me encuentro con un error al fondo:

El $cfg[‘TempDir’] (./tmp/) es inaccesible. phpMyAdmin es incapaz de almacenar plantillas y será algo más lento debido a esto.

Por suerte es algo fácil de solucionar. Solo tenemos que crear una carpeta “tmp” dentro del directorio de phpMyAdmin, que si estamos utilizando XAMPP en una distro GNU/Linux la ruta será:

/opt/lampp/phpmyadmin/

Con que abriendo un terminal y tecleando:

sudo mkdir /opt/lampp/phpmyadmin/tmp

Tendríamos el primer paso completado.

Ahora solo tenemos que especificar el nuevo directorio en el archivo de configuración (config.inc.php) de phpMyAdmin que encontraremos en la misma ruta.

A mí me gusta usar nano para editar archivos de sistema, ya que así abro el archivo directamente con permisos de administrador, así que tecleamos:

sudo nano /opt/lampp/phpmyadmin/config.inc.php

Dentro de nano podemos intentar hacer una búsqueda de la instrucción que necesitamos para declarar el directorio ‘tmp’, por si ya se encontrase comentada dentro del archivo de configuración.

Para ello utilizando Ctrl + W abriremos el diálogo de búsqueda y tecleamos: $cfg[‘TempDir’]. En caso de encontrarla debería aparecer algo así:

$cfg[‘TempDir’] = ‘ ‘;

Solo tendríamos que movernos a la línea con las teclas cursores (nano no soporta el mouse) y especificar el directorio ‘tmp’ dentro de las comillas, de forma que quede así:

$cfg['TempDir'] = 'tmp';

Si se encuentra comentada, tendremos que eliminar los caracteres de comentario (//) o (/* */) para que la línea se vea con colores activos y no con colores de comentario…

Si no nos devuelve ningún resultado, nos posicionamos en una línea en blanco y tecleamos la instrucción:

$cfg['TempDir'] = 'tmp';

Guardamos los cambios con Ctrl + O y salimos con Ctrl + X.

Ahora reiniciamos nuestro servidor XAMPP con:

sudo /opt/lampp/lampp restart

Si el error persiste, necesitaremos dar permisos de lectura y escritura al directorio ‘tmp’, escribiendo en el terminal:

sudo chmod -R 0777 /opt/lampp/phpmyadmin/tmp

Y error solucionado.

7 Comments

  • Hola Dani.
    Gran y detallada explicación. De seguro ayuda a muchisima gente pero me gustaría “discutir” (en sentido constructivo) contigo el siguiente asunto. ¿No sería mejor, desde el punto de vista de la seguridad, que en lugar de dar permisos 777, se cambiara el propitario del mismo por www-data (si se usa apache)?
    Es decir, en lugar de ejecutar:

    • A

      Hola, pues seguramente tengas razón, pero todos mis artículos sobre XAMP o LAMP están orientados a equipos personales, para hacer proyectos en localhost, no pretendo orientarlos a configuraciones de servidores en línea, donde por supuesto la seguridad es lo primero.

  • Ya lo resolví, hice una copia del “sample” y lo guardé con el nombre original sin sample, perdón por no leer a tiempo, es que casi no visito la página, ahora tengo otro problema, en otro error que pide: una clave secreta, he hecho lo mismo, que menciono arriba, pero me queda bloqueado el phpmyadmin, y ya no puedo acceder a ningún archivo, lo que hice fue cambiar o reinstalar todo el phpmyadmin, y es así que he vuelto a empezar, pero no entiendo porque no he podido resolver ese error, uso kubuntu 20.04.1
    por tu atención mil gracias.

  • Alejandro Espejo

    no aparece el archivo config.inc.php, en mi directorio, si hago el sudo nano…aparece un cuadro de dialogo en blanco, que debo hacer al respecto? al final como reinicio la ruta del servidor es: /var/www/html/phpmyadmin
    Por su valiosa atención yapoyo mil gracias.

  • Gracias Daniel, me sirvió mucho

  • Señor, la patria le está agradecida.

    Saludos desde Chile

Deja tu comentario