Unix, Código, Software Libre, Geeks… Cervezas & Tequila
How-to
¿Qué son los archivos FIFO?
Aug 6th
FIFO es el acrónimo de First Input First Output (Primero que entra, primero que sale). En programación se usa dentro de las estructuras de datos.
Partiendo de este echo, en UNIX existen una especie de ficheros que se utilizan para comunicar procesos, de modo que se puedan sincronizar e intercambiar información. El funcionamiento es bastante sencillo, un proceso se encarga de escribir en el fichero FIFO, y otro de leer. Cada uno de los procesos se quedarán bloqueados hasta que el otro actúe.
Esto lo podemos probar del siguiente modo:
$ mkfifo /tmp/fi
Con el comando anterior, habrás creado el fichero FIFO. Puedes comprobarlo con un
$ ls -l /tmp $ echo Hola Mundo > /tmp/fi
El proceso que hemos lanzado, se quedará bloqueado intentando escribir hasta que haya otro proceso lea ese fichero. Para ello desde otra terminal lanzamos este comando:
$ cat /tmp/fi Hola Mundo
En este momento, habrán quedado ambos procesos desbloqueados.
También te puede interesar : More >Configurar servidor DNS(Bind9)
Aug 6th
En un post anterior vimos muy por encima la configuración de un servidor de DNS que trabaje de forma local en nuestra red o computadora, ahora veremos más a fondo las características de un servidor de DNS.
Domain Name Service (DNS) es el servicio que resuelve los nombres de dominio asociados a una dirección IP para direccionar las peticiones a un servidor en específico. Se utiliza cuando un nodo (o host) en Internet contacta a otro mediante el nombre de domino de la máquina y no por su dirección IP.
BIND (Berkeley Internet Name Domain) es el servidor de nombres de dominio más popular en Internet, que trabaja en todas las plataformas informáticas principales y se caracteriza por su flexibilidad y seguridad.
La estructura básica del DNS es similar a un árbol, donde se tiene una raíz o root, los Dominios de Nivel Principal (Top Level Domains) y los dominios de segundo nivel.
Jerarquía DNSEl espacio de nombres de dominio tiene una estructura arborescente. Un nombre de dominio completo de un objeto consiste en la concatenación de todas las etiquetas de un camino. Las etiquetas deben contar con al menos un carácter y un máximo de 63 caracteres de longitud. Las etiquetas individuales están separadas por puntos. Un More >
Acelerar la carga web usando un servidor DNS local (Bind9)
Aug 3rd
El tener un sistema de cache de DNS en nuestra red, o incluso en nuestra propia PC nos permite acelerar el proceso de navegación. El proceso por el cual nosotros leemos cualquier pagina web se puede simplificar en dos partes:
- Obtener la dirección IP del recurso o página web
- Obtener el recurso (Descargar la página) para su visualización.
Un DNS cache nos permite optimizar la primera de las dos anteriores.
Para instalar un servidor DNS Cache puedes elegir varias opciones, desde montarte uno propio con python, o instalar uno de los muchos existentes.
El que yo uso es Bind9, que por cierto es el mas pesado de todos pero a la vez el mas funcional.
Para instalarlo en Debian y Ubuntu solo necesitas hacer:
$ sudo aptitude install bind9
Para instalarlo en Archlinux basta con hacer
$ sudo pacman -Sy bind9
Luego solo nos queda editar sus opciones generales
$ sudo vi /etc/bind/named.conf.options</code> <pre lang="bash">options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you might need to uncomment the query-source // directive below. Previous versions of BIND always asked // questions using port 53, but BIND 8.1 and later use an unprivileged // port by default. // query-source address * port 53; // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to More >
Instalar phpMyAdmin en ArchLinux
Jul 23rd
Ya vimos como instalar un ambiente LAMP en Archlinux en un post pasado (http://www.k4ch0.org/blog/2009/06/05/lamp-linux-apache-mysql-php-en-archlinux/)
Ahora instalaremos phpMyAdmin para tener todo un entorno de trabajo enfocado a desarrollos con PHP + MySQL.
Partimos del hecho de que ya esta instalado Apache, MySQL y PHP.
El primer paso es instalar phpMyAdmin:
# pacman -Sy phpmyadmin
Una vez instalado editaremos el archivo /etc/php/php.ini y descomentamos las siguientes lineas: (quitando el “;”)
;extension=mysql.so ;extension=mcrypt.so
Para poder usar la extensión mcrypt, tenemos que instalarla y eso lo logramos con:
# pacman -Sy mcrypt
A su vez, editamos el archivo /etc/httpd/conf/httpd.conf y agregamos las lineas:
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps
Finalmente reiniciamos el servidor web:
# /etc/rc.d/httpd restart
Pantalla de entrada de phpmyAdmin
También te puede interesar :Permitir conexiones remotas a MySQL de manera gráfica
Jul 21st
Para permitir conexiones remotas a nuestro servidor de base de datos (MySQL) en GNU/Linux, de manera gráfica lo podemos hacer desde el Administrador de MySQL (MySQL Administrator)
Para instalarlo en Debian o Ubuntu, basta hacer:
$ sudo apt-get install mysql-admin
En ArchLinux:
$ sudo pacman -Sy mysql-gui-tools
Una vez instalado lo iniciamos desde terminal haciendo:
$ mysql-admin
Ó en el caso de ArchLinux:
$ mysql-administrator
Con MySQL-Administrator podremos crear bases de datos (esquemas), crear tablas, exportar datos, importar datos, hacer copias de seguridad, restaurar copias, …
MySQL-Administrator
En el cual llenaremos los datos que corresponden con nuestro usuario, en nuestro caso el servidor esta en localhost (la misma maquina) y es el usuario root. Al final ponemos la contraseña de dicho usuario.
Una vez que nos hallamos loogeado, nos aparecerá esta otra pantalla:
MySQL-Administrator
Escogemos la pestaña “Startup Parameters” y ahí desmarcamos la opción “Disable Networking” y damos click en “Save Changes”
MySQL Administrator
Como se puede observar en la parte inferior de la ventana anterior nos indica la ubicación y el nombre del fichero de configuración que también se puede modificar manualmente: /etc/mysql/my.cnf, abriendo este fichero y comentando la línea “skip-networking“, es decir, añadiendo “#” delante produciremos el mismo efecto que haciéndo en MySQL Administrator. Reiniciaremos MySQL Server (para que los cambios tengan efecto) con el comando:
$ sudo /etc/init.d/mysql restart
Introduciremos los datos More >
Comentarios