Archivo de la categoría 'UNIX / Linux'...
Archivado bajo Desarrollo, Desarrollo Web, Sistemas, UNIX / Linux
To UUID or not to UUID ? de MySQL Performance Blog
CRUD with PHP Doctrine de ProDevTips
PHP Rest Server de Lorna Jane
imified.com, servicio para crear bots para interactuar con tu aplicación web a través de servicios de mensajería instantánea (messenger, gTalk..)
Cortafuegos dinámicos con iptables, documentación de Gentoo linux
php-fpm: PHP FastCGI Process Manager, parche para php que nos permite gestionar procesos fastcgi de una forma más óptima (en teoría) que spawncgi (gracias Txarly!)
Repositorio para yum con la versión de php 5.2.5 (a día de hoy)
Comentarios (0) Posted by Asier Marqués on Miércoles, Septiembre 10th, 2008
Archivado bajo Desarrollo, Microsoft, Sistemas, Trucos, UNIX / Linux
Windows Vista SP1, al igual que Windows 2003 R2 y Windows 2008 Server, dispone de una característica poco conocida pero que es muy conveniente conocer, sobre todo para desarrolladores y administradores de UNIX.
Se trata de SUA (Subsystem for UNIX Applications), un subsistema basado en Interix que permite correr nativamente aplicaciones para UNIX/Linux en los sistemas operativos windows que lo implementen.
Para activarlo, basta con ir a agregar programas y características, del panel de control y activarlo allí.

Archivado bajo Desarrollo Web, Innovación, PHP, Sistemas, UNIX / Linux
A veces tenemos que generar sintetizar texto a voz en nuestras aplicaciones web para usuarios con problemas de visión, mejorar la experiencia del usuario en general o realizar cualquier otra tarea.
En Linux/UNIX tenemos una serie de herramientas que nos pueden ayudar a realizar esta tarea. En este tutorial de Tony Bhimani podemos ver como usar el sintetizador de voz Festival con un encoder MP3 para generar archivos dinámicamente desde texto, con una aplicación web php.
Necesitamos tener instalado Festival y Lame MP3 Encoder para que todo esto funcione. Tony ha dejado un ejempo de cómo sería un frontend básico pero funcional para conseguirlo.
Archivado bajo Desarrollo Web, How-To, PHP, Servidores Web, Sistemas, UNIX / Linux
Nginx es un servidor web de alto rendimiento y proxy escrito en c por Igor Sysoev.
Ha sido diseñado para escenarios muy concretos en los que hay mucha carga de peticiones simultáneas (se han llegado a reportar 50.000 peticiones de éste tipo) y funciona extremadamente bien como proxy de balanceo de carga y de correo.
En post anteriores he comentado cómo instalarlo, ahora comentaré como servir php en fastcgi con él. Usaré la librería spawn-cgi del servidor web lighttpd para levantar el servidor fastcgi que se comunicará con nginx.
- Instalar php
apt-get install php5-cgi
- Instalar los paquetes siguientesnecesarios para nginx
apt-get install zlib1g-dev libssl-dev libpcrecpp0 libpcre3-dev
- Bajar lighttpd, descomprimirlo, configurarlo pero no instalarlo.
tar -xvzf lighttpd-veriónquesea.tar.gz
cd lighttpd-descomprimido
./configure
make
- Copiar la librería spawn-fcgi de lighttpd al directorio de binarios del sistema
cp src/spawn-fcgi /usr/bin/spawn-fcgi
- Bajar nginx, descomprimirlo, configurarlo e instalarlo..
tar -xvzf nginx-veriónquesea.tar.gz
cd nginx-descomprimido
./configure
make
make install
- Arrancar el cgi de php con spawn-fcgi en el puerto 9000, por ejemplo (en ocasiones es necesario especificar el grupo, además del usuario con el que se arranca spawn-fcgi, de lo contrario, puede dar el error “no input file specified”
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000
-u www-data -g www-data -f /usr/bin/php5-cgi
- Crear el archivo fastcgi-params con los siguiente
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
# si hemos configurado php con el parámetro --enable-force-cgi-redirect, debemos añadir:
#fastcgi_param REDIRECT_STATUS 200;
- Configuramos nginx con lo siguiente
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /directorio_al_html$fastcgi_script_name;
include /usr/local/nginx/conf/fastcgi_params;
}
- Arrancamos nginx
/usr/local/nginx/sbin/nginx
Archivado bajo How-To, Servidores Web, Sistemas, UNIX / Linux
En el post anterior comentaba una forma de instalar nginx sobre debian mediante la utilidad apt, por la cual se obtenía una instalación final inestable, tal y cómo comentaba Alberto.
En éste post gracias a éste enlace que me ha enviado Álvaro Ortiz, he realizado una instalación compilando el paquete a mano.
- Descargar el paquete (nginx-0.5.35.tar.gz)
- Descomprimirlo (tar -xvzf nginx-0.5.35.tar.gz)
- Añadir los siguientes repositorios para apt, en /etc/apt/sources-list
deb http://ftp.us.debian.org/debian/ etch main
non-free contrib
deb-src http://ftp.us.debian.org/debian/ etch main
non-free contrib
Instalar los compiladores apt-get install build-essential
Instalar las dependencias
apt-get install zlib1g-dev
apt-get install libssl-dev
apt-get install libpcrecpp0
apt-get install libpcre3-dev
Lanzar script de configuración especificando el directorio para el ejecutable binario y el uso del módulo ssl (podemos hacer un ./configure –help para ver más parámetros como por ejemplo, los que nos permiten indicar dónde guardamos los logs o los archivos de configuración)
./configure --sbin-path=/usr/local/sbin
--with-http_ssl_module
Hacemos un make
y después un make install
Finalmente arrancamos nginx con /usr/local/sbin/nginx
Archivado bajo How-To, Servidores Web, Sistemas, UNIX / Linux
Al implementar un servidor web nginx 0.5.x sobre Debian nos podemos encontrar con que al intentar instalarlo mediante apt-get, éste nos instala una versión 0.4x que es la que él considera estable.
Debemos decirle a Apt que nos busque preferentemente el paquete en los repositorios de testing. Para ello debemos crear (en el caso de que no exista) o modificar el archivo /etc/apt/preferences añadiendo éstas líneas:
Package: nginx
Pin: release a=testing
Pin-Priority: 1000
Si no tenemos los repositorios de testing deberemos añadirlos
deb http://ftp.debian.org/debian/ testing main contrib
deb-src http://ftp.debian.org/debian/ testing main contrib
Por último hacemos un apt-get update antes de hacer un apt-get install nginx
Archivado bajo Sistemas, Trucos, UNIX / Linux
Cuando un sistema Linux se quede congelado podemos reiniciarlo activando el modo SysRq (con ALT+Imprimir Pantalla) y tecleando después RSEIUB.
Ésta combinación de teclas ejecuta las siguientes ordenes:
- R devuelve el control al teclado.
- S sincroniza.
- E manda a los procesos la señal term.
- I manda a los procesos la señal kill.
- U desmonta los sistemas de ficheros.
- B reinicia el sistema.
Archivado bajo Gadgets, Hardware, Sistemas, UNIX / Linux
Unicon Systems dispone de un kit para el desarrollo libre de dispositivos móviles. Hasta la fecha no existía un kit que nos permitiera crearnos un dispositivo móvil de una forma similar.
El kit incluye:
CPU
- ARM9 S3C240A embedded CPU at 266 MHz
Memory
Screen
- Pantalla de color TFT LCD QVGA 3.5” 16M (También disponibles pantallas LCDs de 4.3″ y 7″)
- Pantalla táctil de alta resolución
Puertos
Interfaces
- WiFi 802.11b
- IrDA
- RS232
- JTAG
Audio
- Entrada y salida estereo
- Auriculares
Otros
- Sensor de movimiento 2D
- Ranuras de expansión para tarjetas SD, XD, MMC, MS
Sistema operativo
Interfaz gráfica de usuario:
- Nano-X graphics
- FLTK graphics toolkit

Archivado bajo Sistemas, UNIX / Linux
Ésta lista está recogida de un post de Circo Linux, una traducción de un post publicado en Pimp Your Linux.
#1. hostname
Imprime el nombre del local host en donde estás trabajando.
#2. whoami
Imprime el nombre de usuario en la pantalla, y puede resultar extremandamente útil cuando se cambia de usuario con su.
#3. id username
Imprime el UID del usuario y su GID, effective ID y grupos suplementarios.
#4. date
Imprime o cambia la fecha y la hora del sistema operativo. También se podria utilizar un servidor ntp para tener todos los sistemas con el mismo horario cada vez que se encienden.
#5. time
Determina la cantidad de tiempo que le toma a un proceso completarse + otra información. El ejemplo que se dá es:
* time ls
Para ver el tiempo que toma hacer un listado con ls.
#6. who
Determina los usuarios logueados en el sistema.
#7. rwho -a
Determina todos los usuarios logueados en la red. El servicio debe estar activado para ejecutar el comando o se debe ser usuario root.
#8. finger user_name
Información del sistema sobre un usuario.
#9. last
Muestra un listado de los últimos usuarios logueados en el sistema.
#10. history | more
Muestra los últimos ( 1000 aprox ) comandos ejecutados desde la línea de comandos. El “| more” hace que pare la salida por pantalla cada vez que se completa la salida. Redireccionar un comando hacia “more” resulta sumamente útil para diferentes propósitos, como se explica, para listados largos y para otras actividades corrientes en cualquier Gnu/Linux.
(more…)
Archivado bajo Sistemas, Trucos, UNIX / Linux
SwapBoost es un script de Bash que nos permite utilizar el espacio libre que tengamos en nuestra memoria usb, para utilizarlo como memoria Swap incrementando en algunos casos el rendimiento del sistema.

Se podría decir que funciona de una forma similar al ReadyBoost en Windows Vista.