Dichosos scripts de Lliurex

Lliurex es la distribución GNU/Linux pensada para los sectores educativos en el País Valenciano y que pretende establecer un modelo software libre y gratuito en las aulas. Si bien el modelo de aula tiene ventajas a nivel práctico, la versión de servidor de aula presenta una serie de limitaciones que pueden llegar a molestar cuando pretendes integrar algún servicio adicional o modificar parámetros del sistema.

Cuando la versión servidor de Lliurex arranca, sobrescribe la información de configuración en base a unos scripts de inicio, de manera que cambios realizados previamente en algunos servicios simplemente se eliminada. De esta manera, puedes pasar un rato para cambiar algunos parámetros y tras un reinicio, tu tiempo y esfuerzo se disuelve ante tus ojos.

Voy a intentar ilustrar un caso concreto para la versión 11.09 que tenemos actualmente instalada en uno de los servidores del aula informática. En este caso, parece que la versión 12.06 ofrece una herramienta integrada que solventará la necesidad a través de la herramienta de entrega de trabajos al profesor, pero seguro que existen más conflictos no resueltos.

Para la entrega de documentos, solemos utilizar la plataforma de aprendizaje Moodle, pero la velocidad a Internet es tan penosamente lenta a través de la red contratada por Consellería, que hace tiempo que opté por colocar una pequeña página web sobre el servidor Apache del servidor local que permita la entrega de ficheros a través de la red. En mi caso, suelo añadir una linea al HTML apuntado por “http://server” que lance mi código.

Para ello, debemos colocar un pequeño formulario en PHP utilizando el método POST y especificando que el tipo de codificación debe ser “multipart/form-data” para el envío de datos binarios, o sea, ficheros.

<html><body>
<form action=”upload_file.php” method=”post” enctype=”multipart/form-data”>
<label for=”file”>Nombre de fichero:</label>
<input type=”file” name=”file” id=”file”><br>
<input type=”submit” name=”submit” value=”Enviar”>
</form>
</body></html>

Una vez, capturado el destino del formulario, recuperamos el fichero a través de las variables del POST y almacenamos el resultado en una carpeta con permisos adecuados. Para ello utilizamos la instrucción move_uploaded_file que copiará el archivo temporal a disco en la ruta deseada.

<?php
if ($_FILES[“file”][“error”] > 0)  {
echo “Error: ” . $_FILES[“file”][“error”] . “<br>”;
}else  {
echo “Upload: ” . $_FILES[“file”][“name”] . “<br>”;
echo “Type: ” . $_FILES[“file”][“type”] . “<br>”;
echo “Size: ” . ($_FILES[“file”][“size”] / 1024) . ” kB<br>”;
echo “Stored in: ” . $_FILES[“file”][“tmp_name”];
}
$target_path = “uploads/”;
$target_path = $target_path . basename( $_FILES[‘file’][‘name’]);
if(move_uploaded_file($_FILES[‘file’][‘tmp_name’], $target_path)) {
echo “El fichero “. basename( $_FILES[‘file’][‘name’]). ” ha sido cargado con éxito”;
} else{
echo “Error subiendo el archivo!”;
}
?>

Hasta aquí todo correcto,  puedes incorporar modificaciones adicionales para colocar la fecha y hora en la entrega y algún campo extra para indicar el nombre del alumno sin demasiada complicación. Todo parece funcionar bien y los archivos entran a la carpeta deseada, hasta que se intenta subir un archivo que supere los 100MB. Puede parecer mucho, pero cualquier vídeo generado en Openshot puede superar este límite fácilmente.

Existe una limitación en la subida de archivos en servidor que se define en algunas lineas del fichero de configuración del php5 ubicado dentro de /etc/php5. Las relevantes en este caso serían las que indican el tamaño máximo de subida y el de tamaño máximo de envío en un formulario POST. De manera que simplemente las buscamos y las adaptamos al tamaño deseado:

php_value upload_max_filesize=300M
php_value post_max_size=300M

Probamos y vemos que todo funciona. Satisfacción inmediata que se verá truncada al reiniciar. Por alguna arte oscura, el servidor sobrescribe la configuración y revierte el tamaño máximo de estas variables a 100M con la consiguiente desesperación.Buscando más vemos un fichero llamado lliurex.cfg que presenta esos mismos datos pero su cambio obtiene iguales consecuencias tras el reinicio.

De manera, que para obtener un funcionamiento adecuado, debemos entrar al fichero lliurex.cfg y cambiar los datos adecuadamente a nuestras necesidades, para después rearrancar el servicio de Apache desde terminal:

sudo /etc/init.d/apache2 restart

Un pequeño fastidio con el que vivir durante la temporada que se trabajan edición de vídeos, que espero que ayude a comprender la impotencia que supone entrar a personalizar cosas en Lliurex para ver como un simple reinicio las machaca de nuevo. Y lo que pasa es que falta documentación especializada accesible al público para acometer algunos cambios sobre servidores Lliurex, por lo que en muchas ocasiones nos entran unas ganas terribles de instalar Ubuntu o Debian para tener el control del sistema y, sobre todo, olvidarnos de los dichosos scripts de Lliurex.

ratolin

Comentarios
  1. Hace 4 años
  2. Hace 4 años
  3. Hace 4 años
  4. Hace 4 años
  5. Hace 4 años
  6. Hace 4 años
  7. Hace 4 años
  8. Hace 4 años