Archive for the 'Linux' Category

Lighttpd + php5 + MySQL en Ubuntu Jaunty

Me dispongo a abordar un par de proyectos la mar de jugosos en mi nuevo y flamante Ubuntu. En uno de ellos es probable que pueda conseguir algún dinerete extra; el otro es a título personal, puramente por satisfacer mi ego personal y mantener vivo mi entusiasmo. Así que con toda la motivación y fuerza que tal situación suele imbuir en un programador, por muy malo que sea (y yo no soy de los peores), me dispongo a preparar el requerido servidor.

Para el caso he elegido tirar de Lighttpd como servidor web y MySQL como gestor de bases de datos. Motivos: Lighttpd es mucho más ligero y rápido que otros servidores más conocidos, como Apache, consumiendo menos recursos en el proceso. Así que, sin desmerecer en absoluto la potencia de éste último, me ha hecho tilín y he decidido probarlo. Sé que hay otras alternativas igual o más ligeras, como es el caso de Cherokee, proyectado por un español, que además dispone de su propio panel de configuración web. Pero, y puesto que soy un tipo algo puñetero con según qué cosas, no me convence que Álvaro López, su autor, un tipo que está sentando referente a nivel internacional y que, no me cabe duda, es un tío estupendo y la leche de profesional, no se digne a reservar un espacio a la lengua de Cervantes ni en la web oficial del proyecto ni en su blog personal. Conste que Cherokee me parece estupendo y he tenido oportunidad de usarlo y disfrutar de sus bondades (que no son pocas), pero prefiero quedarme en Lighttpd por ahora.

Y el motivo por el que escojo MySQL, aun habiendo sido adquirido últimamente por Sun, que a su vez fue comprada por Oracle, principal competidor de éste gestor, es porque es el sistema que siempre he usado y no me ha dado demasiados problemas. Además no es tan pesado como PostgreSQL y estoy bastante acostumbrado a trabajar con él.

Bueno, al tajo que se nos va el hilo. Antes de empezar aclarar que todo lo que haremos será en modo comando, desde consola, ayudándonos de aptitude y tecleando cada cosa en su momento. Pero los noveles no os preocupéis que es muy sencillo y hay que tocar lo justo.

A continuación los pasos a dar para instalar y configurar ambos servidores con soporte para php5:

1) Instalar los servidores (web y bases de datos) junto con el intérprete cgi para php5 y el módulo de soporte para MySQL.

$ sudo aptitude install lighttpd php5-cgi mysql-server php5-mysql

A lo largo del proceso el programa de instalación de MySQL os pedirá que defináis la contraseña para el administrador del gestor de bases de datos. Ojo que también se define como “root”, el superusuario de Linux, pero es diferente.

2) Incluir la carga del módulo para FastCGI de PHP dentro de Lighttpd.

$ sudo gedit /etc/lighttpd/lighttpd.conf

y agregar tras el último módulo activado una línea que diga “mod_fastcgi”, de manera que quede algo así:

server.modules = (
     "mod_access",
     "mod_alias",
     "mod_accesslog",
     "mod_compress",
     "mod_fastcgi",
     # "mod_rewrite",
     # "mod_redirect",
     # "mod_evhost",
     # "mod_usertrack",
     # "mod_rrdtool",
     # "mod_webdav",
     # "mod_expire",
     # "mod_flv_streaming",
     # "mod_evasive"
)

3) Activar el módulo para FastCGI.

$ sudo ln -s /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-enabled/

4) Iniciar/Reiniciar el servidor.

$ sudo /etc/init.d/lighttpd restart

Y ya está listo vuestro servidor web Lighttpd con soporte para PHP5 y MySQL.

Sólo un apunte más: las páginas se sirven por defecto desde /var/www, que es propiedad del superusuario del sistema, o sea, root. Así que tendremos problemas de permisos si pretendemos trabajar en modo usuario accediendo a dicho directorio. Para evitar esto, y facilitarnos la vida un poco, podemos crearnos una carpeta personal en nuestro home y configurar el servidor para que sirva desde ahí.

En mi caso me he creado una carpeta en mi home llamada www ($ mkdir www). Para configurarla en el servidor:

$ sudo gedit /etc/lighttpd/lighttpd.conf

y en la directiva server.document-root establecemos la ruta hacia dicha carpeta, de manera que quede tal que así:

server.document-root = "/home/USUARIO/www/"

Ejemplo: si el usuario es Epicentro :D

server.document-root = "/home/epicentro/www/"
Anuncios

Ubuntu, cómo suspender al bajar la tapa del Mac

Me comenta un buen amigo que no consigue configurar su Macbook con Ubuntu para que se suspenda al cerrar la tapa, tal y como hace Mac OS por defecto. Según lo que me dice en su correo ha probado siguiendo algunos consejos que ha encontrado por la red, entre ellos el de hacer una llamada hacia un shellscript personalizado desde /etc/acpi/events/lidbtn, algo que por lo que se vé hacían algunos usuarios allá por el 2005, pero ni con esas, ya que consigue suspender correctamente pero no consigue lanzar la parte del script que ordena el bloqueo de la pantalla, tal y como sí hace el sistema cuando suspendemos desde el menú.

Pues bien, voy a intentar darle una solución respondiéndole por aquí, y así aprovecho para ayudar a quien, como yo, también encuentre mejor alternativa el suspender el sistema en lugar de simplemente apagar la pantalla, como hace Ubuntu Jaunty por defecto, pero no sepa cómo hacerlo.

Empezaré diciendo que no sé cómo funcionaba el tema del suspend-on-lid-close, como lo llaman los angloparlantes, en versiones anteriores a Jaunty, la que uso actualmente. Versiones anteriores las he probado muy por encima para terminar usando Debian, así que no tengo mucha experiencia con ellas, lo siento. Pero sí puedo hablar con mi experiencia en Jaunty, y en ésta versión el control de la acción al cerrar la tapa se configura fácilmente en modo gráfico, desde las Preferencias de gestión de energía, panel al que se accede desde el menú Sistema – Preferencias – Gestión de energía.

Dentro de éste panel podemos configurar la acción “Al cerrar la tapa del portátil” indicando qué queremos que haga entre las opciones posibles: No hacer nada, Oscurecer pantalla, Suspender, Hibernar o Apagar. Y podemos configurarlo tanto para cuando la batería recibe alimentación (la primera pestaña que indica “Con adaptador de corriente”) como cuando está desconectada (la segunda, “Con batería”)

Y no hay más, ni hay que andar programando scripts ni metiendo mano a la configuración en modo comando, a no ser que te guste romperte seriamente la mollera con temas de programación en modo texto. Aunque me parece muy interesante saber hacerlo por esa otra vía y me gustaría que alguien con más experiencia dejase testimonio por aquí de los pasos a seguir en modo texto, lo cierto es que Jaunty nos brinda una gran facilidad para este tipo de cosas en modo gráfico.

Problemas con Ubuntu Jaunty en mi Macbook II

Como ya dije en la anterior entrada y para continuar con la serie de temas-no-muy-brillantemente-resueltos que voy encontrando para dejar mi Macbook con Jaunty chachi piruli, hoy hablaré de cómo refinar el teclado. Porque supongo que quien esté en una situación similar a la mía se habrá fijado en que entre las deficiencias de la configuración por defecto en Ubuntu para los teclados Apple son algo raras. Por un lado el led del bloqueo de mayúsculas no se enciende al pulsarla, aunque el del bloqueo numérico sí que lo hace. Y encima el hecho de cambiar la distribución del teclado desde el menú no tiene consecuencias muy perceptibles, o al menos no todo lo perceptibles que cabría esperar.

Problema: varios y variados. Empezando por que tanto la tecla de Comando como la de expulsión de disco típicas de estos teclados están deshabilitadas, carecen de función alguna aparte de la meramente decorativa. Siguiendo por que, y a raíz del problema anterior, no hay forma de introducir las teclas de tercer nivel (arroba, almohadilla, corchetes, llaves y demás mindanga que aparece en la esquina inferior derecha de algunas teclas) al no existir Alt Gr en los teclados fabricados por Apple. Y terminando porque el led indicador de actividad de la tecla de bloqueo de mayúsculas no funciona a pesar de que el bloqueo sí se realiza.

Causa: pues no sabría decir exactamente a qué se debe todo esto salvo objetar problemas de incompatibilidad por mala programación del controlador para este hardware, ya que ninguno de los modelos de teclados Apple listados y (supongo) programadas en el menú de Preferencias del teclado de Ubuntu solventa estos fallos, ni siquiera el modelo propio para Intel que se supone el más acertado. Aunque el kernel del sistema (2.6.28) sí que soporta dicho hardware.

Solución: para añadir las teclas de tercer nivel debemos tener habilitada una tecla de control que no entre en conflicto con el resto de teclas que ya disponen de una función propia dentro del teclado. Y puestos a elegir, y teniendo una tecla, en principio, inútil, como es la de Comando, qué mejor que habilitarla. Para ello nos vamos al menú Sistema – Preferencias – Teclado, y ahí dentro seleccionamos la pestaña Distribuciones. Una vez dentro de esta pestaña abriremos el menú de Opciones de distribución al que se accede desde un botón homónimo situado abajo a la derecha. Y ya dentro de éste menú marcaremos tres opciones desde la opción que reza como Key to choose 3rd level (Selectores de 3er nivel), a saber:
[V] Any Win Key (Cualquier tecla Windows)
[V] Left Win (Tecla Windows izquierda)
[V] Right Win (Tecla Windows derecha)

Unas capturas sobre cómo debería quedaros el patio una vez configurado ésto:
> Preferencias del teclado:
Preferencias del teclado
> Opciones de distribución del teclado:
Opciones de distribución del teclado
Si os fijáis yo mantengo el modelo de teclado para ordenadores de la gama Macbook Intel (MacBook/MacBook Pro Intl) y lo hago porque aunque no marque ninguna diferencia a priori me parece lo más acertado. Desconozco si las soluciones que explico aquí servirán para el modelo genérico, que es el que se marca por defecto, aunque apostaría a que valen igualmente.

Con esto ya tenemos nuestro Alt Gr que vendría a ser cualquiera de las teclas de Comando del teclado Apple, las de la manzanita. Si sólo queremos tener habilitado el Comando de uno de los lados para las teclas de tercer nivel pues marcad sólo la casilla del lado deseado. Yo prefiero tener habilitadas ambas teclas (por ahora)

Para solucionar el problema de los leds, bastaría con eliminar un paquete que se instala de fábrica y que por lo visto genera conflictos. Se trata de mouseemu, un paquete que intenta emular los botones del ratón en portátiles, como los Apple Macbook, cuyo trackpad se limita a tener un solo botón. No termino de entender el motivo de la inclusión de un paquete que aún no ha salido de Sid (Debian) dentro de una versión aparentemente estable (debería serlo) de Ubuntu. Por este enorme motivo, y porque prefiero tener el teclado tan operativo como cabría esperar, me basta para eliminarlo con una rápida y eficaz orden desde terminal:

$ sudo apt-get remove mouseemu

Sin embargo, el hecho de desinstalar mouseemu no genera ningún tipo de problema. Todo sigue funcionando tal y como lo hacía antes de quitarlo: el trackpad correcto, las teclas especiales (brillo, volumen…) correctas. Vamos, todo ok y encima ganamos un led que nos avisa cuando tenemos levantado el bloqueo de mayúsculas. al desinstalar mouseemu perderemos las teclas de control de volumen (las de brillo en cambio sí funcionan). Para recuperarlas debemos añadir una línea a /etc/modules para cargar el módulo applesmc en el arranque:

$ sudo gedit /etc/modules

Y al final añadimos una nueva línea que marque “applesmc” (sin las comillas). Mi /etc/modules luce así:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
lp
rtc
applesmc

Éste nuevo módulo habilita el control del teclado Apple al completo, permitiendo así el acceso a las teclas especiales de este tipo de teclados, como las de control de volumen y brillo, de las que determinadas herramientas (como pommed) hacen uso.

Y termino esta entrada abordando el problema de la tecla de expulsión de disco (eject) que trae el teclado del Macbook junto a la tecla F12. Y es que esta tecla no funciona, es decir, no envía ningún tipo de señal al sistema, por lo que no es posible asignarle tarea alguna.

¿Cómo expulsar el disco entonces? pues o bien con el ratón desde el menú contextual de la unidad de discos (aparece al pulsar el botón derecho o secundario sobre ésta), o bien definiendo una combinación de teclas personalizada (mapeado de teclas). Para esto último hay que abrir la interfaz adecuada desde Sistema – Preferencias – Combinaciones de teclas, y una vez dentro buscar la línea de programación para la acción Eject, la cual podremos configurar pinchando sobre ella y a continuación pulsando la combinación de teclas deseada. En mi caso he escogido Ctrl+Alt+E, aunque también sería bastante práctico asignarle el control sólo a la tecla F12.

> Mapeado de teclas:
Combinaciones de teclas

Y con esto deberíais tener el teclado perfectamente configurado para obtener el mejor rendimiento y operatividad de éste portátil.

Problemas con Ubuntu Jaunty en mi Macbook I

Pocos, muy pocos, pero los hay. Y lo cierto es que la nueva versión de Ubuntu (van por la 9.04, codename Jaunty) entra muy bien en los clásicos Macbook blanquitos de trece pulgadas, reconociendo prácticamente todo el hardware sin apenas tener que tocar nada, ¡gráfica incluída!. De hecho llevo unos días con éste y las cosillas que no tiran de entrada las puedo contar con una mano: sonido, teclado, isight,… y creo que poco más.

Iré colgando aquí los pasos que me van funcionado para resolverlos, por si alguien más está en mi situación y necesita referencias.

El primer problema con que me he topado; y no sólo con Ubuntu, también lo tenía con Debian, es el del sonido. El sonido es de las primeras cosas que miro siempre tras instalar una primerísima distro Linux en cualquier máquina, y es que sin música es una faena trabajar con el ordenador, o al menos lo es para mí.

Bueno, pues con el sonido lo que ocurre es en sí una tontería que se arregla en dos clicks, aunque buscando información para solucionarlo me he topado con cosas bastante raras y con otras del todo desacertadas como que ALSA detectaba el dispositivo correcto (Intel Corporation 82801G (ICH7 Family) High DefinitionAudio Controller (rev 02)), pero que alsaconf estaba mal empaquetado y petaba al cargar los módulos, con lo que había que descargar e instalar los nuevos controladores a mano. Y esto sólo es posible en versiones del kernel anteriores a la rama 2.6.20; en versiones posteriores hay problemas a la hora de compilar ALSA con algunos directorios del source del kernel.

Problema: hay sonido cuando se enchufan unos cascos o cuando se deja la entrada libre sin conectar ningún aparato de amplificación o redirección de sonido, pero cuando se enchufan unos altavoces externos la salida se corta, no hay sonido a pesar de que todo parece funcionar perfectamente en pantalla.

Causa: los controladores de ALSA silencian por defecto el canal de Surround.

Solución: activar el canal de Surround en el panel de control de volumen. Para abrir este panel basta con dar botón derecho sobre el icono de control de volumen que aparece en la barra de tareas (arriba a la derecha) y seleccionar la opción Abrir el control de volumen. Luego en la pestaña Reproducción se añade el canal a través del botón de Preferencias y ya podremos activarlo. Así es como debería quedaros finalmente:

Control de volumen

Y con esa pista habilitada vuestros altavoces ya deberían ser capaces de emitir cualquier sonido o tema que reproduzcáis. Si no es así revisad el volumen porque puede que lo tengáis configurado demasiado bajo.

Por cierto, como opinión personal los reproductores de sonido de Linux (y en este momento estoy tirando de Exaile) disfrutan de una mayor calidad de audio que el iTunes de Mac OS. O al menos esa es la impresión que tengo después de año y pico usando el sistema operativo de Apple.

En la próxima entrada os comentaré cómo me va el tema del teclado.

¿Qué implica Linux?

Mucha gente llega a Linux por motivos de necesidad: trabajos de clase, bajo coste, problemas de hardware… Otras veces es más una cuestión de moda o de prepotencia porque aún sigue vigente la idea de que “el que usa Linux es un tío listo, un experto informático o un hacker con estilo” sin pensar que para usar este sistema realmente son necesarios unos conocimientos medianamente altos sobre informática. De acuerdo, en este punto muchos linuxeros de pro se me echarán al cuello diciendo que esto no es cierto, que cada vez más Linux empieza a ser un sistema para usuarios con interfaces cómodas y prácticas “al estilo Windows”, pero creo que se equivocan en la base de que las cosas en Linux siempre han funcionado mejor a fuerza de teclear comandos, y que muchas veces las aplicaciones gráficas no consiguen el resultado que sí consigue una buena orden con sus parámetros adecuados.

Linux es poder, mucho poder, pero hay que saber controlarlo. Y no se puede controlar algo sin pretender antes conocerlo no sólo a nivel histórico si no también a nivel fundamental. Linux es un sistema operativo muy potente, rápido y eficiente, robusto, basado en minix, multitarea y multiusuario y realmente una maravilla como servidor de aplicaciones. Conocerlo implica conocer al menos la mitad de estos conceptos, implica sacrificio, interés, curiosidad y ganas de teclear, implica invertir tiempo personal, proponerse metas y no parar hasta conseguir lo esperado, implica en definitiva pasión por la informática. Si no estás dispuesto a hacer esto ni te plantees instalar la más sencilla de sus distribuciones, ni siquiera Ubuntu, la solución a tus problemas está en Windows y arderás eternamente en los infiernos por ello.

No nos engañemos, si yo sé usar una tetera para calentar agua no pretenderé saber usar al mismo nivel un reactor nuclear, y por bestia que suene la comparación no deja de estar próxima a la realidad. Pero por extraño que parezca los novatos llegan al mundillo Open Source pensando que en distribuciones como Ubuntu u OpenSuse la vida es de color de rosa porque en el anuncio de tal web publican que es “la panacea para los usuarios de Windows que quieren entrar en Linux”. Y claro, los que sufren las consecuencias somos las comunidades libres que por algún motivo divino tenemos el deber para con el pueblo de dar soporte a todo novato que se tropiece con un problemilla y no sepa que google sirve para algo más que para buscar pornografía.

Desde aquí hago un llamamiento a todos vosotros, queridos novatos, noobs, newbies y winderos de postín que preferís entrar a un foro de Linux y preguntar qué significa “root” antes que ensuciaros vuestras manos y buscar un poquito en la red. Os sorprendería la cantidad de tiempo que os/nos ahorráis con este sencillo y amable gesto. Y por favor, no os enfadéis si en el foro recibíis una respuesta grosera o sarcástica, al fin y al cabo las preguntas tontas sí existen y a los compañeros les cuesta tiempo haceros el trabajo, un tiempo que no siempre está disponible y que no siempre se agradece. Del mismo modo que vosotros esperáis un poco de colaboración nosotros esperamos también un poco de ayuda por vuestra parte, y la principal ayuda que podéis brindarnos aparte de la información de vuestro equipo es la de mojaros un poquito antes.

Dicho esto creo importante remitir las eternas tablas de la sabiduría del señor E. S. Raymond sobre cómo hacer preguntas de forma inteligente. Si leéis este importantísimo documento antes de hacer una pregunta os/nos ahorraréis mucho tiempo y malos tragos.

Dell dice NO a Linux

Al parecer la noticia publicada hace apenas dos días sobre las intenciones de la compañía de incluir algunas distribuciones Linux entre los sistemas operativos a preinstalar sobre sus máquinas no es cierta. Así lo ha hecho público The Inquirer en su página.

No es de extrañar esta decisión de última hora considerando las pruebas de compatibilidad que son necesarias para certificar un hardware plenamente válido bajo Linux cuando es sabido de antemano que sí lo va a ser bajo Windows Vista, aun a pesar de sus claras deficiencias respecto a sus competidores. Una vez más no es oro todo lo que reluce cuando las grandes empresas deciden utilizar el recurso del rumor para hacer balance de marketing aun a costa de los intereses de sus clientes, y una vez más se mantienen los intereses comerciales para promocionar a Windows como la esencia de la utilidad operativa y la potencia.

Esperemos que los poquitos pasos que Dell ha ido dando por la senda del OS no sean los únicos y pronto cumplan las expectativas que los usuarios de Linux deseamos.

FIC en Jerez de la Frontera

Durante los días 7, 8 y 9 de Marzo del presente año se celebran en el campus de Jerez de la Frontera (UCA) las primeras jornadas FIC (FLOSS International Conference).

Quien sin pertenecer a 2º o 3º de Ingenierías Técnicas en Informática quiera asistir deberá pagar 20 € por el certificado y los materiales informativos. Los que quieran hacer ponencia pagarán 90 €, pero tendrán derecho además a desayuno, almuerzo y cena. En lo personal me parece un precio algo elevado para unas conferencias de SL en las que no te dan de comer si no vas a decir algo importante, pero supongo que aun así no faltarán asistentes.

Respecto al programa resalto algunas de las conferencias que más me han llamado la atención:

Miércoles 7 a las 18:50: El reto de los Servicios Web para el Software Libre.

Jueves 8 a las 12:30: Implantación de un completo sitio web corporativo.

Viernes 9 a las 11:00: Proyecto RESTAD – Herramientas de código libre para la traducción y postedición de documentos.

Viernes 9 a las 12:00: Babel: A collaborative language learning system.

Viernes 9 a las 12:30: Framework para el desarrollo de soluciones web modulares basado en líneas de producto.

Viernes 9 a las 12:30: Sistema experto para la simulación de sistemas tácticos de baloncesto con software libre.

Viernes 9 a las 13:00: Introducción a la arquitectura y desarrollo del nuevo escritorio KDE4.


Mi del.icio.us

diciembre 2017
L M X J V S D
« May    
 123
45678910
11121314151617
18192021222324
25262728293031

Archivador