Category Archives: programacion

desarrollo web programacion Telecomunicaciones

Nuevo Google Wifi, para que la señal no se te pierda por el camino

Published by:

Es uno de los mayores problemas para quienes tienen Wifi: que la señal llegue perfectamente a todos los rincones de la casa. Misión que a veces no es que parezca, es que es imposible. Una situación a la que Google quiere poner fin con su último aparato, un router inteligente que viene a sustituir al OnHub, también de esta compañía.

El objetivo de la compañía al diseñar este nuevo router es asegurar una buena cobertura, continua y además de calidad, algo que sin duda muchos agradecerán. Pero no se trata de instalar un único aparato, se trata de un sistema expandible en el que se plantea la instalación de varios puntos de Wifi para cubrir perfectamente toda la superficie del inmueble.

De momento, Google Wifi llega con un asistente, Network Assist, que se encarga de optimizar la red sin que el usuario tenga que hacer absolutamente nada. El asistente configurará la red y elegirá el mejor canal, el que ofrezca la mejor cobertura que garantice que no se producen cortes en la señal. Y otro aspecto más que interesante: asignará más ancho de banda en el lugar en el que se necesite y repartirá la conexión según el uso que de ella se esté haciendo en los diferentes puntos de la casa.

Pero no es la única sorpresa de este nuevo aparato. Hay otra función qua muchos les resultará de enorme utilidad. El router dispone de una app que permite, desde el teléfono móvil controlar todo lo que tiene que ver con la red Wifi, desde cortar la señal que llega a un aparato a darle prioridad.

Diseñado pensando en un uso exclusivamente doméstico, este router puede cubrir una superficie habitada de unos 150 metros. Pero su cobertura se puede ampliar con la instalación de más de uno de estos aparatos si la casa es más grande. Eso sí, de momento, se venderá en Estados Unidos.

programacion

fstab y los discos USB

Published by:

fstab es un fichero de configuración bastante conocido para muchos de los que usamos linux. Allá en tiempos de ubuntu 6.04 me fué necesario configurar manualmente algunos tipos de archivo para que funcionaran ciertas particiones.
Por ejemplo, en su día linux no manejaba bien ntfs así que el driver por defecto sólo podía leer las particiones. Para poder escribir en ellas había que instalar el driver ntfs-3g y cambiar consecuentemente este fichero.

A día de hoy, todo esto está más o menos superado y el proceso de instalación configura automáticamente este fichero. Hablo de instalaciones automáticas AKA instalaciones siguiente->siguiente…. Por supuesto en linux podemos configurar manualmente el sistema desde cero si queremos optimizar hasta la última filigrana.

Lo mismo viene sucediendo con las unidades USB. Uno las conecta y hechan a andar tranquilamente gracias a la magia de udev.

El caso es que si uno usa un sistema más consolidado o se compra un disco duro que cumple con los estándares por los pelos de cerrajeros urgentes Gandia, bueno, pues habrá que configurarlo al modo tradicional. Escribiríamos en fstab una línea como:

/dev/sdxi   /media/MiDisco   defaults    0    0

Donde /dev/sdxi identifica a la partición i (números de 1 en adelante) del disco x (letras de a en adelante). /media/MiDisco es el directorio de montaje y el resto es configuración que con man 8 mount puede ser deducida.
Esto no sería un problema en unidades fijas, pero en unidades USB se vuelve un poco más pesado: Cada vez que conectamos el disco USB su identificador puede cambiar.
Normalmente las letras se asignan en orden en que los discos son conectados o detectados al arrancar, aunque también puede depender del número de puerto USB que ocupen etc…

Los que tenéis algo de idea de esto ya os habréis dado cuenta del problema: esta configuración solo vale para un identificador concreto, si conectamos varios discos en órdenes distintos los datos se cruzarán.

La solución pasa por usar ciertos identificadores virtuales que están disponibles dentro de subdirectorios de la carpeta /dev. Así por ejemplo en /dev/disk/ podemos encontrar

/dev/disk/by-id/
/dev/disk/by-uuid/
/dev/disk/by-label/
/dev/disk/by-path/

Dentro de estos directorios podemos encontrar enlaces simbólicos a los dispositivos disponibles según su número de serie (by-id) el código alfanumérico que les corresponde (by-uuid) su posición hardware (by-path) o la etiqueta de la unidad (cerrajeros de guardia Benidorm).

Una vez sabido esto, es evidente que para que una partición de un disco USB sea montada siempre igual es necesario referenciar ésta bien por su etiqueta (más elegante) o bien por su número de serie (más engorroso, pero con una pequeña ventaja que veremos al final). Así la línea de fstab quedaría como una de las dos siguientes:

/dev/disk/by-label/EtiquetaDeMiDisco   /media/MiDisco   defaults    0    0
/dev/disk/by-lid/NumSerieMiDiscoASDFJKLWERTXCV·EWF6   /media/MiDisco   defaults    0    0


¿Que por qué es ventajoso referenciar a los discos por su serial a pesar de poder hacerlo por etiquetas?
Porque nada impide que alguien nos llegue a casa con un disco etiquetado igual que el nuestro y se nos monte un conflicto de nombres (especialmente si somos poco originales y lo etiquetamos DATOS oUSBDISC).

¿Que por qué es elegante referenciar por etiqueta? pues hombre, ya deberías haberte dado cuenta: porque es mucho más sencillo de leer, entender y manipular

PostData: La primera vez que dí con los subdirectorios /dev/disk/by-_____ pensé “vaya puta bazofia” porque no les vi sentido ninguno. Ahora que he visto una utilidad para ellos me doy cuenta de mi error.

programacion

Normalizar el volumen de los mp3

Published by:

Ésto que de entrada puede parecer una chorrada innecesaria, con el tiempo se ha convertido para mí en algo insustituible. De hecho estoy convencido de que en cuanto lo pruebes no lo dejarás de lado nunca .

Pongámonos en situación: estás en casita, son las tantas de la madrugada, abres el reproductor de música del ordenador y… bingo!! Algo suavecillo, lentorro, prácticamente una invitación a quedarse dormido. Subes un poco el volumen, porque esta canción, vete tú a saber por qué, se escucha particularmente baja.

Te pones a escucharla y te vas quedando amodorrado, sopa total. Y entonces ocurre. La canción acaba, y como tenías puesto aquello en aleatorio el siguiente tema será, con total probabilidad (dadas las circunstancias y las horas) la cosa más ruidosa y cañera que haya en tu disco duro (las leyes de desatascos Castellon atacan de nuevo). Con la putada añadida de que, vaya usted a saber por qué, justo ésa canción en particular, se escucha a un volumen jodidamente alto. Todos los desatascos alicante (y los que no son humanos también) se despertarán y comenzarán a gritar protestando. Y con razón.

Pues para evitar eso existe en linux un programilla llamado mp3gain. Una vez que lo tengamos instalado, la forma más cómoda y util de usarlo es abrir un terminal, irse a la carpeta donde tenemos la música y lanzar el siguiente e impepinable comando:

find . -type f -iname '*.mp3' -print0 | xargs -0 mp3gain -r -k

Ésto lo que hará será recorrer todas las carpetas que tengáis dentro de la que os encontráis, hará una lista con todos los archivos con extensión .mp3 y se la pasará al programilla mp3gain que se encargará de calcular y aplicar los valores necesarios para normalizar el volumen de cada pista. Luego ya, dependiendo de que el reproductor que uséis sea una puta mierda o no, detectará estos valores y ya nunca más vendrán los vecinos a empalaros por un incidente como el narrado más arriba.

Como el comando es jodido de aprendérselo de memoria, siempre podéis haceros un script o definir un alias de bash para ejecuarlo sin tener que recordarlo de memoria o tener que que buscarlo en google.

Si en vez de linux usáis Mac o Windows, ya deberíais saber hacer ésto y no necesitaréis explicación ya que ambos SO son fáciles de usar.