Desde Linux http://blog.desdelinux.net Desde Linux: Usemos Linux para ser libres Fri, 06 Mar 2015 18:13:39 +0000 es-ES hourly 1 http://wordpress.org/?v=4.1.1 Volver a usar Crontab en ArchLinux mediante Cronie http://blog.desdelinux.net/usar-crontab-en-archlinux-con-cronie/ http://blog.desdelinux.net/usar-crontab-en-archlinux-con-cronie/#comments Fri, 06 Mar 2015 18:13:39 +0000 http://blog.desdelinux.net/?p=59709 Los que gustamos de tener tareas programadas en la PC, automatizar tareas y cosas así, conocemos a fondo cron y por consecuente, crontab.

Sucede que en ArchLinux ahora la cosa ha cambiado, SystemD es el todopoderoso que todo lo sabe, todo lo hace y todos dependen de él… por lo que, lo que antes hacíamos que era editar /etc/crontab bueno, ya no podremos hacerlo más :(

Ahora en ArchLinux deberemos instalar un paquete llamado cronie, que nos hará más fácil automatizar tareas, programar órdenes para que el sistema las siga en un momento determinado.

archlinuxbylapapunk

Instalar y habilitar Cronie

Lo primero será obviamente instalar cronie, para ello:

sudo pacman -S cronie

Luego debemos iniciarlo y habilitarlo:

sudo systemctl start cronie
sudo systemctl enable cronie

¿Cómo programar una tarea con Cronie?

Es simple, mediante un comando que antes también podíamos usar, nos permitirá editar las tareas programadas de nuestro usuario.

Pero primero!!, los que no estén familiarizados con vi les recomiendo que declaren a nano como su editor por defecto en la terminal:

echo "export EDITOR=nano" >> $HOME/.bashrc
export EDITOR=nano

Para ya en efecto, programar una tarea usaremos el comando:

crontab -e

Esto nos mostrará un editor de texto en terminal (nano si hicieron lo anterior) en blanco, ahí escribimos lo que antes poníamos, por ejemplo pondré que cada 1 minuto se me cree un archivo en mi home llamado prueba:

* *   * * * touch /home/tu-usuario/prueba

Para que el cambio surja efecto, o sea para que se tome en cuenta, NO es necesario reiniciar el servicio ni mucho menos, es instantáneo todo.

¿Cómo usar crontab?

Si no sabes cómo usar crontab, lo que debes escribir, aquí te dejo unos artículos que te serán de ayuda:

Por ejemplo yo quiero que todos los días a las 11AM se ejecute un script, la línea sería:

11 00   * * * cd /home/kzkggaara/Scripts/ && ./miscript.sh

IMPORTANTE, no deben poner el usuario en el archivo que se les abre cuando ejecutan crontab -e, antes en /etc/crontab debían poner el usuario que ejecutaría el comando, ahora con crontab -e ya no es necesario.

Fin!

Bueno nada mas que agregar, espero como siempre… les haya sido de utilidad.

]]>
http://blog.desdelinux.net/usar-crontab-en-archlinux-con-cronie/feed/ 1
Guía rápida para utilizar Github http://blog.desdelinux.net/guia-rapida-para-utilizar-github/ http://blog.desdelinux.net/guia-rapida-para-utilizar-github/#comments Thu, 05 Mar 2015 17:04:54 +0000 http://blog.desdelinux.net/?p=59694 Este tutorial es una guía rápida para instalar y utilizar GitHub. Aquí se explica cómo crear un repositorio local, cómo conectar este repositorio local al repositorio remoto de Github (donde todo el mundo lo puede ver), cómo confirmar los cambios y finalmente cómo empujar todo el contenido del repositorio local hacia GitHub, entre otras tareas comunes.

Antes de empezar, es importante tener en cuenta que este tutorial supone un conocimiento básico de los términos utilizados en Git: empujar (push), jalar (pull), guardar los cambios (commit), repositorio (repository), etc. También requiere el registro previo en GitHub.

Instalación

En Debian/Ubuntu y derivados:

sudo apt-get install git

En Fedora y derivados:

sudo yum install git

En Arch y derivados:

sudo pacman -S git

Configuración inicial

Una vez que la instalación se ha completado con éxito, el siguiente paso es configurar los detalles de configuración del usuario GitHub. Para ello, hay que utilizar los siguientes comandos sustituyendo “nombre_usuario” con tu nombre de usuario GitHub y “email_id” con la dirección de correo electrónico utilizada para crear la cuenta de GitHub.

git config --global user.name "nombre_usuario"
git config --global user.email "email_id"

Creación de un repositorio local

Lo primero es crear una carpeta en tu computadora, que servirá como un repositorio local. Para ello, basta ejecutar el siguiente comando:

git init Mytest

Este comando crea la carpeta MyTest. A su vez, la sub-carpeta .init hace que MyTest sea reconocido como un repositorio local de Git.

Si se crea el repositorio con éxito, aparecerá una línea similar a la siguiente:

Initialized empty Git repository in /home/tu_usuario/Mytest/.git/

Acto seguido, hay que entrar a la carpeta MyTest:

cd Mytest

Creación de un archivo README para describir el repositorio

El archivo README se utiliza generalmente para describir lo que el repositorio contiene o lo que el proyecto se trata. Para crear uno, basta ejecutar:

gedit README

Una vez que hayas ingresado la descripción del repositorio, no olvides guardar los cambios.

Adición de los archivos del repositorio a un índice

Este es un paso importante. Antes de poder subir los cambios a Github u otro servidor compatible con Git, hay que indexar todos los archivos contenidos en el repositorio local. Este índice contendrá los archivos nuevos así como los cambios a los archivos existentes en el repositorio local.

En nuestro caso, nuestro repositorio local ya contiene un nuevo archivo: el README. Por lo tanto, vamos a crear otro archivo con un programa C simple y al cual llamaremos ejemplo.c. Los contenidos del mismo serán:

#include
int main()
{
printf("hello world");
return 0;
}

Así que, ahora tenemos 2 archivos en nuestro repositorio local: README y ejemplo.c.

El siguiente paso es agregar estos archivos al índice:

git add README
git add smaple.c

El comando “git add” se puede utilizar para agregar cualquier número de archivos y carpetas al índice. Para agregar todos los cambios, sin especificar el nombre de los archivos, es posible ejecutar “git add .” (con un punto al final).

Guardar los cambios realizados en el índice

Una vez añadidos todos los archivos, es posible dejar un registro de estos cambios haciendo lo que en la jerga se llama un “commit”. Esto significa que ya se ha terminado de agregar o modificar archivos y que los cambios pueden ser subidos al repositorio remoto de Github. Para ello, hay que ejecutar el siguiente comando:

git commit -m "mensaje"

“mensaje” puede ser cualquier mensaje que describa brevemente los cambios en cuestión, por ejemplo: “agregué tal funcionalidad” o “corregí tal cosa”, etc.

Creación de un repositorio en GitHub

El nombre del repositorio debe ser el mismo que el repositorio del sistema local. En este caso, será “MyTest”. Para ello, antes que nada, hay que iniciar sesión en Github. Luego, hay que hacer clic en el signo más (+) en la esquina superior derecha de la página y seleccionar la opción “crear nuevo repositorio”. Finalmente, hay que rellenar los datos y hacer clic en el botón “crear repositorio”.

Una vez hecho esto se creará el repositorio y será posible subir el contenido del repositorio local en el repositorio GitHub. Para conectarse al repositorio remoto en GitHub hay que ejecutar el comando:

git remote add origin https://github.com/user_name/Mytest.git
No olvides reemplazar ‘nombre_usuario’ y ‘MyTest’ con tu nombre de usuario y carpeta correspondientes.

Empujar archivos del repositorio local al repositorio GitHub

El paso final es empujar el contenido del repositorio local hacia el repositorio remoto, mediante el comando:

git push origin master

Sólo resta introducir las credenciales de inicio de sesión (nombre de usuario y contraseña).

Esto subirá todo el contenido de la carpeta MyTest (repositorio local) a GitHub (repositorio externo). Para los proyectos subsiguientes ya no hará falta seguir estos pasos desde cero. En cambio, podrás empezar desde el paso 3 directamente. Por último, no te olvides que los cambios estarán disponibles desde la página web de Github.

Creación de una rama (branch)

Cuando los desarrolladores quieren corregir errores o agregar nuevas funciones a menudo crean una rama (branch) o copia del código de modo que puedan realizar commits en forma separada, sin afectar el proyecto original. Luego, cuando hayan terminado pueden fusionar esta rama de vuelta en la rama principal (master).

Para crear una nueva rama hay dos opciones:

Opción larga:

git branch mirama # crea una nueva rama llamada mirama
git checkout mirama - pasa a utilizar la rama mirama.

Opción corta:

git checkout -b mirama - crea y pasa a utilizar la rama mirama

Una vez realizados los cambios, hay que agregarlos al índice de la rama y hacer el commit correspondiente:

git add .
git commit -m "cambios en mirama"

Luego, hay que volver a la rama principal y tomar los cambios realizados en mirama:

git checkout master
git merge mirama

Finalmente, hay que borrar mirama (ya que los cambios fueron incorporados en master):

git branch -d mirama

Y subir master a Github:

git push origin master

Creación de un repositorio Git derivado (fork)

Gracias a Git y a la existencia de las grandes librerías de repositorios públicos, como Github, gran parte de las veces no es necesario comenzar a programar nuestro proyecto desde cero. En esos casos, es posible tomar este código de base para crear un nuevo proyecto.

Para ello, lo primero que hay que hacer es un fork de un repositorio existente, o sea, un proyecto derivado del mismo que tome como base el código del proyecto original. En Github, eso se consigue haciendo clic en el botón correspondiente, como se ve en la captura a continuación.

Fork de un Repositorio Github

Luego, lo que hay que hacer es clonar el repositorio de este nuevo proyecto en nuestra computadora. A modo de ejemplo, podemos utilizar mi repositorio de Ankifox, una extensión para Firefox que permite agregar palabras a Anki, el cual se encuentra disponible en Github:

git clone https://github.com/usemoslinux/Ankifox.git

No olvides reemplazar https://github.com/usemoslinux/Ankifox.git por la URL correspondiente a tu proyecto. Obtener esta dirección es muy fácil, como se ve en la imagen a continuación.

Clonación de un Repositorio Github

Este comando creará un directorio llamado “Ankifox”, inicializará el directorio .git dentro de él, y bajará todos los datos de ese repositorio, a fin de trabajar con la última versión.

]]>
http://blog.desdelinux.net/guia-rapida-para-utilizar-github/feed/ 12
Instalar Line Messenger en Linux con Wine http://blog.desdelinux.net/line-messenger-en-linux-con-wine/ http://blog.desdelinux.net/line-messenger-en-linux-con-wine/#comments Tue, 03 Mar 2015 16:50:36 +0000 http://blog.desdelinux.net/?p=59642 Como sabemos, las alternativas a WhatsApp han salido de la nada y por lo menos yo, prefiero a su más digno rival: Telegram. Sin embargo, no son los únicos servicios de este tipo que hay, pues también tenemos a Line. Ahora mismo quizás lo más atractivo de este servicio (para el que no tenga problemas con pagar), es lo que ellos llaman Line Premium Call, lo cual permite realizar llamadas internacionales por precios irrisorios.

El problema de Line es que no tiene cliente de escritorio para GNU/Linux, aunque ya vimos como usarlo mediante Pidgin, por lo que tenemos que echarle el guante con el viejo Wine, y claro, teniendo Telegram ¿para que lo quiero? pues es simple, para el que quiera usarlo. Así que mostraremos como usarlo mediante Wine en GNU/Linux.

Instalar y usar Line con Wine

Lo primero que debemos hacer es instalar Wine como es lógico. Si estás usando ArchLinux debes activar los repositorios Multilib, pues Wine solo está para 32 bits. Wine está en la mayor parte de las distribuciones, por lo que usando el instalador de paquetes de cada una se puede instalar sin mayor percance. De todos modos, pueden echarle un ojo al sitio oficial para que vean las opciones que tienen.

Posteriormente nos bajamos el cliente para Windows del siguiente enlace:

Descargar Line

Hay que tener en cuenta que hay dos versiones para Windows. Nosotros vamos a usar la que no es para Windows 8. Igual pueden apoyarse en cualquier otro sitio que les ayude a descargar Line

Una vez que descargamos el fichero (.exe) lo ejecutamos y nos debe salir el asistente de instalación desde Wine con los siguientes pasos:

Seleccionamos el idioma:

Line

Arranca el asistente:

Line1

Aceptamos el EULA:

Line2

Escogemos donde se va a instalar Line (lo dejamos por defecto):

Line3

Comienza la instalación:

Line4

Finaliza la instalación:

Line5

Al oprimir Cerrar ya se nos abrirá la aplicación para poner nuestros datos:

Line6

Y eso es todo. Como es lógico debemos crearnos una cuenta previamente, y no sé si existirá algún otro método que no sea mediante la APP para los móviles.

]]>
http://blog.desdelinux.net/line-messenger-en-linux-con-wine/feed/ 14
Siege: Medir el rendimiento de tu servidor web http://blog.desdelinux.net/siege-medir-rendimiento-servidor-web/ http://blog.desdelinux.net/siege-medir-rendimiento-servidor-web/#comments Tue, 03 Mar 2015 16:39:47 +0000 http://blog.desdelinux.net/?p=59671 Hace apenas 2 semanas les hablé sobre cómo medir el rendimiento de su servidor web con Apache Benchmark, y luego graficarlo con GNUPlot.

Esta vez les hablaré sobre una alternativa a Apache Benchmark, les hablaré sobre: Siege

NetStat para evitar ataques DDoS

¿Qué es Siege y cómo instalarlo?

Con Siege simulamos accesos a un sitio web, o sea, le indicamos la cantidad final de peticiones que debe hacer a un sitio determinado, cuántas concurrentes, si deseamos que visite una URL específica o un conjunto de ellas, etc. Al final obtenemos un output que nos dirá cuánto demoró nuestro servidor web en atender la totalidad de peticiones, etc. Al final son datos que nos ayudan a saber si las tareas de optimización que podemos estar haciendo, son efectivas o no.

Para instalar Siege basta con instalar en nuestra distro el paquete de igual nombre, en Debian, Ubuntu o similar sería:

sudo apt-get install siege

En ArchLinux o derivadas sería:

sudo pacman -S siege

¿Y ahora cómo lo uso?

Al igual que con Apache Benchmark, con un parámetro le pasamos la totalidad de peticiones que hará y con otro le indicamos la cantidad de peticiones simultáneas:

siege --concurrent=50 --reps=100 http://www.misitio.com

Según este ejemplo, haremos un total de 100 peticiones, 50 concurrentes.

El output sería más o menos así:

siege

Esto solo hizo peticiones al index del sitio, lo más importante a tener en cuenta son los tiempos de respuesta.

Igual si creamos un archivo (urls.txt por ejemplo) y en él ponemos varias URLs del mismo sitio, luego con siege usamos la siguiente línea visitará esas URLs y medirá el rendimiento, esto es una práctica más real o posible, pues ningún humano visita 100 veces el index de un sitio de forma seguida :)

siege --concurrent=50 --reps=100 -f urls.txt

Fin

Hasta ahora no he podido graficar el resultado con GNUPlot (como sí hice con Apache Benchmark), es una tarea que aún tengo en el ToDo ;)

]]>
http://blog.desdelinux.net/siege-medir-rendimiento-servidor-web/feed/ 0
Redireccionar tráfico de una IP y puerto hacia otra IP y puerto http://blog.desdelinux.net/redireccionar-trafico-iptables/ http://blog.desdelinux.net/redireccionar-trafico-iptables/#comments Mon, 02 Mar 2015 13:18:09 +0000 http://blog.desdelinux.net/?p=59568 Algo muy común  cuando administramos servidores es redireccionar tráfico.

Supongamos que tenemos un servidor con determinados servicios funcionando, pero por cualquier razón cambiamos uno de esos servicios (no sé, por ejemplo pop3 que es el puerto 110) hacia otro servidor. Lo normal y más frecuente sería simplemente cambiar la IP en el registro DNS, no obstante si alguien estaba usando la IP en vez del subdominio se verá afectado.

¿Qué hacer? … simple, redireccionar el tráfico que reciba ese servidor por ese puerto hacia otro servidor con el mismo puerto.

server-nodo-lan-ethernet

¿Cómo empezamos a redireccionar tráfico?

Lo primero será que debemos tener habilitado el forwarding en el servidor, para ello pondremos lo siguiente:

echo "1" > /proc/sys/net/ipv4/ip_forward

Todos los comandos que se muestran en este tutorial deben ser ejecutados con privilegios de administración, recomiendo que sean ejecutados directamente con el usuario root.

También pueden usar este otro comando, en caso de que el anterior no les funcione (me sucedió así en un CentOS):
sysctl net.ipv4.ip_forward=1
Luego reiniciaremos la red:

service networking restart

En distros RPM como CentOS y otras, sería:

service nertwork restart

Ahora pasaremos a lo importante, indicarle al servidor mediante iptables qué redireccionar:

iptables -t nat -A PREROUTING -p tcp --dport <puerto receptor> -j DNAT --to-destination <ip final>:<puerto de ip final>

O sea y siguiendo el ejemplo que mencioné, supongamos que deseamos redireccionar todo el tráfico que recibe nuestro servidor por el puerto 110 hacia otro servidor (ej: 10.10.0.2), que igual recibirá ese tráfico por el 110 (pues se trata del mismo servicio):

iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 10.10.0.2:110

El servidor 10.10.0.2 verá que todos los paquetes o peticiones vienen desde la IP del cliente, en caso de que quieran natear las peticiones, o sea, que el 2do servidor vea que las peticiones llegan con la IP del 1er servidor (y en el cual aplicamos la redirección), sería poner además esta segunda línea:

iptables -t nat -A POSTROUTING -j MASQUERADE

Algunas preguntas y respuestas

En el ejemplo usé el mismo puerto en ambas ocasiones (el 110), no obstante pueden redireccionar tráfico de un puerto a otro sin problemas. Por ejemplo, supongamos que deseo redireccionar el tráfico del puerto 80 al 443 en otro servidor, para ello sería:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.10.0.2:443

Esto es iptables, pueden usar todos los otros parámetros que conocemos, por ejemplo, si solo deseamos redireccionar tráfico de una IP en específica, sería agregando -s <ip> … por ejemplo redireccionaré solo el tráfico que venga desde 10.10.0.51:

iptables -t nat -A PREROUTING -p tcp -s 10.10.0.51 --dport 80 -j DNAT --to-destination 10.10.0.2:443

O bien una red entera (/24):

iptables -t nat -A PREROUTING -p tcp -s 10.10.0.0/24 --dport 80 -j DNAT --to-destination 10.10.0.2:443

También podemos especificar la interfaz de red con -i <interfaz>:

iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 80 -j DNAT --to-destination 10.10.0.2:443

Fin!

Esto como dije ya, es iptables, pueden aplicar lo ya conocido para que el servidor haga exactamente lo que quieran que haga ;)

Saludos!

DedicatedServer_SubImage

]]>
http://blog.desdelinux.net/redireccionar-trafico-iptables/feed/ 11
Introducción a D-Bus http://blog.desdelinux.net/introduccion-a-d-bus/ http://blog.desdelinux.net/introduccion-a-d-bus/#comments Mon, 02 Mar 2015 12:33:49 +0000 http://blog.desdelinux.net/?p=59612 bus-hierarchy-conceptual

Si llevas algún tiempo en Linux quizás te hayas llegado a preguntar que es D-Bus. D-Bus es un componente incorporado no hace mucho a las distribuciones de escritorio en Linux que previsiblemente jugará un papel muy importante para la programación en Linux.

¿Qué es D-Bus?

D-Bus es un sistema de comunicación entre aplicaciones de muy diverso origen. Con este sistema podremos llamar incluso a aplicaciones privativas (si estas implementan D-Bus). No juega el mismo papel que una librería pues una librería no es un programa independiente y la librería forma parte de tu ejecutable. La idea de D-Bus está inspirada en los objectos OLE, COM y ActiveX de Windows. Los objetos COM de Windows ofrecen una manera sencilla de llamar a cualquier programa desde otro programa llegando incluso a poder incrustarse visualmente uno dentro de otro sin necesidad de usar el mismo lenguaje de programación. D-Bus no llega tan lejos pero ofrece esa comunicación de la que UNIX carecía.

¿Por qué es importante D-Bus?

D-Bus es importante dada la gran diversidad de lenguajes que pueden funcionar en Linux y la gran diversidad también de librerías. Pongamos un ejemplo práctico. Yo quiero mandar una notificación al sistema notify-osd de Ubuntu desde mi aplicación en Node.js. Primero tendría que ver que librería ofrece esa funcionalidad en el sistema, libnotify en este caso, y después debería hacer unos bindings para poder llamar la librería programada en C desde JavaScript. Además imaginemos que queremos hacer funcionar nuestra aplicación con un escritorio que no usa libnotify para las notificaciones.

Usando D-Bus

Entonces hemos decidido que vamos a usar D-Bus para crear la notificación de nuestra aplicación en JavaScript.

Hay 2 tipos de buses en D-Bus, un D-Bus único al sistema y un D-Bus para cada sesión de usuario. Luego en D-Bus tenemos servicios que son “los nombres de los proveedores D-Bus”, algo así como las aplicaciones D-Bus. Después en una estructura como de carpeta están los objetos que puede tener ese servicio o instancias y finalmente la interfaz es la manera de interactuar con los objetos de ese servicio. En este caso es muy redundante pues el servidor de notificaciones es muy simple.

¿Quién usa D-Bus?

Más programas de los que imaginas usan D-Bus. Algunos servicios de D-Bus solo por nombrar ejemplos son:

  • com.Skype.API
  • com.canonical.Unity
  • org.freedesktop.PolicyKit1
  • org.gnome.Nautilus
  • org.debian.apt
  • com.ubuntu.Upstart

Para averiguar todos los servicios de D-Bus que tienes instalados puedes usar d-feet

D-Feet

]]>
http://blog.desdelinux.net/introduccion-a-d-bus/feed/ 6
Reparar el problema con la terminal en Dolphin, en Plasma 5 http://blog.desdelinux.net/reparar-problema-terminal-dolphin/ http://blog.desdelinux.net/reparar-problema-terminal-dolphin/#comments Fri, 27 Feb 2015 16:45:30 +0000 http://blog.desdelinux.net/?p=59570 En este post (algo corto, por cierto) mostraré como solucionar el problema que podemos presentar cuando Dolphin (el gestor de archivos de KDE) no quiera mostrar la terminal embebida, que permite el uso de comando en el directorio actual del gestor de archivo sin necesidad de recurrir a otro emulador de terminal.

Esto surgió a raíz de que decidí actualizar mi Archlinux de 32 bits a 64 bits (x86 a x64) y además cambiarme a “KDE 5″ (plasma 5), por lo que en el momento que ya terminó el proceso, abrí Dolphin y me encontré con una sorpresa no muy agradable, la terminal no se mostraba y aparecía todo en gris donde debía estarlo. De esta forma:

Dolphin sin terminal

Entonces pensé que se trataba de algún problema en algún paquete que use Dolphin para este fin, por lo que busqué en Internet y encontré esta página que hablaba acerca de Plasma 5: http://alien.slackbook.org/blog/kde-5-plasma-5-2-0-available-for-slackware-current/.

En los comentarios habían usuarios que tenían los mismos problemas y hablaban del siguiente paquete: “yakuake”; encontré de que se trata de un emulador de terminal de KDE y es el programa que Dolphin usa para mostrar su terminal. En Archlinux se necesitan instalar estos dos paquetes:

pacman -S yakuake konsolepart4

Después de instalarlos, reinician Dolphin y ya debería mostrarse la terminal embebida como antes:

Dolphin con Terminal

Espero que les haya ayudado, sobre todo a los que están cambiando de KDE4 a Plasma 5, ya que este último todavía tiene algunos problemas pero funciona mucho mejor que la versión 4.

]]>
http://blog.desdelinux.net/reparar-problema-terminal-dolphin/feed/ 8
Ubuntu MATE ya es un “sabor” oficial de Ubuntu http://blog.desdelinux.net/ubuntu-mate-ya-es-un-sabor-oficial-de-ubuntu/ http://blog.desdelinux.net/ubuntu-mate-ya-es-un-sabor-oficial-de-ubuntu/#comments Fri, 27 Feb 2015 15:51:30 +0000 http://blog.desdelinux.net/?p=59601 ¿Qué es MATE?

MATE es un ambiente de escritorio derivado del código base de GNOME 2. De hecho, es considerado la continuación de GNOME 2, luego de la aparición de GNOME 3, que introdujo cambios radicales en la interfaz de usuario tradicional. El nombre proviene de la yerba mate, una especie de acebo, una planta nativa de Sudamérica subtropical (sobre todo en Argentina, Brasil, Paraguay y Uruguay) que se utiliza para preparar una bebida muy popular y energizante llamada mate.

Actualmente, es uno de los ambientes de escritorio por defecto despachados con las últimas versiones de Linux Mint. MATE también está disponible en los repositorios oficiales de varias distribuciones de Linux, incluyendo Arch Linux, Debian, Mageia, Gentoo, Fedora, Ubuntu, y openSUSE.

Ubuntu + MATE

El escritorio es uno de los principales elementos que participan en la apariencia de Ubuntu, y también uno de los que más da que hablar a la hora de elegir el “sabor” adecuado del sistema operativo. El escritorio Mate comenzó su desarrollo cuando en Ubuntu 11.04 Canonical sustituyó la clásica apariencia de GNOME, por la actual Unity generando multitud de discusiones y quejas en la comunidad. Ubuntu Mate pretende imitar la antigua apariencia de GNOME 2 a la vez que se mantiene ligero para ofrecer la mejor experiencia posible en todo tipo de equipos, especialmente en los menos potentes. La tarea no fue fácil, sobre todo al comienzo, ya que hubo varios problemas de compatibilidad con los paquetes de Ubuntu. Ahora, gracias a los avances conseguidos, llega la noticia de que pasará a formar parte oficialmente de la familia de Ubuntu.

ubuntu mate

La movida para que Ubuntu MATE se convierta en una distribución oficial derivada de Ubuntu se viene llevando a cabo desde hace algún tiempo. El equipo de Ubuntu MATE anunció la aprobación de MATE junto con el lanzamiento de su primera beta en el ciclo de desarrollo de Ubuntu 15.04. De esta forma, Ubuntu MATE es ahora un “sabor” oficial de Ubuntu, uniéndose a otras como Xubuntu, Kubuntu y Ubuntu Kylin.

¿Qué implica ser un “sabor” oficial de Ubuntu?

Los cambios tendrán lugar más bien detrás de escena y el usuario final posiblemente no vea demasiados cambios. No obstante, el equipo de Ubuntu MATE ahora tendrá acceso a la gran infraestructura de Canonical para la construcción, prueba y distribución de paquetes, incluyendo la creación de imágenes (ISO) diarias. Además, la medida podría ofrecer algo de promoción extra y una mayor cobertura de los medios de comunicación, lo cual siempre es bienvenido.

Ubuntu MATE 14.04 LTS y 14.10 permanecerán como versiones “no oficiales”, a pesar de la aprobación.

¿Usan MATE? ¿Qué opinan de este entorno de escritorio? ¿Piensan que esto es una buena noticia que va a favorecer el desarrollo de MATE?

]]>
http://blog.desdelinux.net/ubuntu-mate-ya-es-un-sabor-oficial-de-ubuntu/feed/ 29
Restringir ancho de banda de una interfaz de red http://blog.desdelinux.net/restringir-ancho-de-banda-interfaz-de-red/ http://blog.desdelinux.net/restringir-ancho-de-banda-interfaz-de-red/#comments Thu, 26 Feb 2015 20:08:51 +0000 http://blog.desdelinux.net/?p=59562 En determinadas ocasiones necesitamos restringir el ancho de banda, la velocidad de download y upload que un ordenador tendrá en una interfaz de red.

Supongamos que tenemos un servidor cuya interfaz principal (eth0 por ejemplo) necesitamos que tenga una velocidad limitada, ¿por qué? … pues por lo que sea, nunca subestimemos lo que un Boss puede pensar y pedirle al equipo de IT jeje.

En este caso podemos usar varias aplicaciones para esto, hoy les hablaré de: wondershaper

fist-full-of-bandwidth-4f9f00c-intro

Instalación de WonderShaper

En distros como Debian, Ubuntu o derivados, basta con:

sudo apt-get install wondershaper

En ArchLinux necesitamos sacarlo de AUR:

yaourt -S wondershaper-git

En ArchLinux es importante instalar la de git y no el normal, pues el normal no me funcionó

Usando WonderShaper

Para hacer que funcione es simple, debemos pasarle como primer parámetro la interfaz de red que deseamos sea limitada, luego le pasamos la velocidad máxima de descarga y de tercero (y último) la de subida.

La sintaxis es:

sudo wondershaper <interfaz> <download> <upload>

Más o menos así:

sudo wondershaper eth0 1000 200

Esto significa que tendré un ancho de banda de 1000kb para descarga, y solo 200kb para subida.

En ArchLinux es importante tener en cuenta que esta línea, no funcionará, pues en ArchLinux debimos instalar otro paquete. Aquí sería:

sudo wondershaper -a <interfaz> -d <download> -u <upload>

O sea, un ejemplo es:

sudo wondershaper -a enp9s0 -d 1000 -u 200

¿Cómo revierto los cambios y recupero mi ancho de banda original?

Para revertir los cambios, o sea limpiar lo que hicimos, basta con:

sudo wondershaper clear <interfaz>

Por ejemplo:

sudo wondershaper clear eth0

Mientras que en ArchLinux sería:

sudo wondershaper -c -a <interfaz>

Fin!

Bueno no hay mucho más que agregar. Pueden leer el manual de la aplicación mediante:

man wondershaper

Espero les resulte interesante ;)

]]>
http://blog.desdelinux.net/restringir-ancho-de-banda-interfaz-de-red/feed/ 24
Firefox 36 viene con soporte para HTTP/2 http://blog.desdelinux.net/firefox-36-con-soporte-http2/ http://blog.desdelinux.net/firefox-36-con-soporte-http2/#comments Tue, 24 Feb 2015 15:31:05 +0000 http://blog.desdelinux.net/?p=59437 No he querido comentar en DesdeLinux sobre lo que se avecina con HTTP/2 principalmente porque aún no conozco todas sus bondades, que con lo poco que he leído, parecen ser muchas. Sin embargo, ya los chicos de Mozilla han incluido su soporte en la versión 36 de Firefox que si bien aún no se ha anunciado, ya se puede descargar desde el FTP.

¿Qué es HTTP/2?

Hypertext Transfer Protocol o HTTP como mejor lo conocemos, es el protocolo que permite las transacciones en la World Wide Web (www). HTTP define la sintaxis y la semántica que utilizan los servidores, navegadores y demás. Pueden obtener más información detallada en Wikipedia.

El problema con este protocolo es que tiene más años que Matusalén, y su última revisión fue en el año 1999. Es por ello que el grupo de trabajo Hypertext Transfer Protocol Bis (httpbis) de la IETF (The Internet Engineering Task Force) tomó como base SPDY (speedy), protocolo desarrollado por Google en el 2009, y luego de un arduo trabajo en colaboración con los ingenieros de Mountain View, han declarado HTTP/2 como un protocolo terminado.

Pero en fin, vamos a las ventajas que conlleva HTTP/2 sobre el viejo HTTP/1.1:

Multiplexación de conexión asíncrona: HTTP/2 se puede utilizar de forma paralela, independientemente del número de peticiones, por lo tanto permite un mayor número de solicitudes, que a su vez generen más respuestas por cada petición al mismo tiempo. Este protocolo ha sido diseñado para ser usado en sitios con altos niveles de tráfico, evitando que colpasen, lo que nos lleva a la segunda ventaja.

Compresión de cabeceras y pipelining de solicitud-respuesta: Al ir comprimidas las cabeceras de las peticiones HTTP, se necesita menos ancho de banda. Por lo tanto la carga será mucho más rápida y se podrán enviar muchas más peticiones simultáneas al mismo tiempo.

Encriptación: Esta característica fue impuesta por Firefox y Google Chrome para adoptar el nuevo protocolo, lo que significa que en un futuro no muy lejano, veremos muchos más sitios usando conexiones seguras.

En resumen, lo que nos interesa es que con HTTP/2 podremos navegar muchísimo más rápido por nuestros sitios web favoritos, sin que colpasen, sobre todo desde dispositivos móviles que tienen (o tenían) menos memoria RAM que un ordenador.

¿Que nos trae Firefox 36?

Pues Firefox 36 nos trae soporte para HTTP/2 (el cual no se ha implementado aún, por lo menos no de forma global), Media Source Extensions (MSE) para manejar las reproducciones nativas en HTML5 en Youtube, correcciones en HTML5, sincronización de los accesos rápidos en la nueva pestaña, nueva forma de ver Las Preferencias y más, muchas más cosas que pueden ver acá.

Si no quieres esperar a que se incluya en tu distribución de cabecera, acá te dejo los enlaces:

Firefox 32 bits

Firefox 64 bits

Nota: Google Chrome también tiene soporte para HTTP/2

]]>
http://blog.desdelinux.net/firefox-36-con-soporte-http2/feed/ 20