jueves, 29 de diciembre de 2016

Remarkable : un editor para archivos marckdown


Marckdown

Markdown es un lenguaje de marcado ligero creado por John Gruber que trata de conseguir la máxima legibilidad y facilidad de publicación tanto en su forma de entrada como de salida, inspirándose en muchas convenciones existentes para marcar mensajes de correo electrónico usando texto plano. Se distribuye bajo licencia BSD y se distribuye como plugin (o al menos está disponible) en diferentes sistemas de gestión de contenidos (CMS). Markdown convierte el texto marcado en documentos XHTML utlizando html2text creado por Aaron Swartz. Markdown fue implementado originariamente en Perl por Gruber, pero desde entonces ha sido traducido a multitud de lenguajes de programación, incluyendo PHP, Python, Ruby, Java y Common Lisp.

Remarkable

Es un editor de marcado poderoso disponible para Linux. Está completamente equipado y personalizable. Puede descargar la versión de Linux de forma gratuita (o donar si lo desea). Los instaladores fáciles están disponibles para los sistemas Debian, Ubuntu, Fedora, SUSE y Arch.

Descargas: https://remarkableapp.github.io/linux/download.html

En Fedora, descargas el instalador y doble clic para instalar, o si lo prefieres, abrir la terminal y ejecutar el siguiente comando:

sudo rpm -ivh remarkable-1.87-1.rpm
Y listo, ya lo pueden buscar en el cajón de aplicaciones.

Aquí dejo una imagen gif del programa.


miércoles, 28 de diciembre de 2016

Mostrar asteriscos al escribir contraseña en la Terminal


Los que usamos la terminal en cualquier distro linux, nos habremos dado cuenta, que al escribir la contraseña, el cursor sigue en la misma posición, es decir, no muestra nada mientras la tecleamos.

Esto, es irrelevante, es más, es incluso mejor si no la muestra, así si alguien ve lo que estamos tecleando, no sabría de cuántos caracteres está formado la contraseña, pero si queremos que muestre un * mientras tecleamos la contraseña, entonces hacer la siguiente modificación.

Abrir la terminal y ejecutar el siguiente comando:
Reemplazar nano por el editor de texto de su preferencia.
sudo nano /etc/sudoers

Una vez que se abra el archivo, ir a al línea que comienza por:
Defaults    env_reset

Y al final agregarle, lo siguiente:
Defaults    env_reset,pwfeedback

Guardar el archivo con Ctrl+X y presionar Y.

Ahora, al teclear la contraseña, mostrará lo siguiente:




Vuelvo a mencionar, esto es por simple estética, personalización o curiosidad por probarlo. No es que se importante u obligatorio, es opcional.

viernes, 16 de diciembre de 2016

SavemyPassword 1.1.3 - PHP-MySQL



SaveMyPassword es un sitio web que he desarrollado como ejemplo completo, en el uso de MySQL y PHP. Este sitio es para guardar nombres de usuario y contraseñas por cada usuaro.

La idea principal, es ejemplificar el uso de base de datos, uso de clases en php. En entre éstas características se encuentran:
- Uso de clases
- Uso de mysqli
- Compatible con php7
- Uso md5 encryptado
- Y muchas otras cosas.

El sitio en línea lo pueden probar aquí. http://savemypasswd.webcindario.com

¿Cómo utilizar el sitio local con Xampp?

Cualquiera que ya haya utilizado Xampp como servidor de php, sabrá lo fácil que es levantarlo.

Paso 1: Instalar XAMPP, omitiré el proceso de instalación para todos los SO, pero aquí les dejo cómo instalarlo en Fedora 25. https://linuxgx.blogspot.mx/2016/05/instalar-y-desinstalar-xamp-5521-en.html
Link de descarga de XAMPP: XAMPP descarga

Paso 2: Descargar el repositorio de Github: LinkDescarga

Paso 3: Mover la carpeta extraída de savemypassword a la ruta htdocs que se encuentra en la ruta de instalación de xampp, en linux a veces es necesario asignar permisos de lectura y escritura a la carpeta savemypasword, en caso de que no funcione el sitio.

Paso 4: Crear la base de datos desde phpMyAdmin, ir a http://localhost/phpmyadmin/

Dar clic en la opción nueva:

El nombre de la BD se llamará savemypassword, una vez asignado el nombre, clic en crear.

Una vez creada la BD, seleccionarla e ir la pestaña SQL. Una vez ahí, copiar y pegar las siguientes instrucciones sql para crear la base de datos.

use savemypassword;

create table usuarios(
 iduser int auto_increment,
 cuentauser varchar(80),
 passwd varchar(200),
 typeuser int,
 fraseuser varchar(200),
 activated int,
 nomuser varchar(90),
 apuser varchar(90),
 primary key(iduser, cuentauser)
);

create table passwords(
 iduser int,
 nomcuenta varchar(90),
 passcuenta varchar(200),
 descripcuenta varchar(200),
 activated int,
 foreign key (iduser) references usuarios(iduser),
 primary key(iduser,nomcuenta)
);

Y clic en continuar:

5.- Una vez creada la base de datos, ir la carpeta savemypassword que está en htdocs y buscar dentro de la carpeta includes el archivo dbconfig.php y modificar el nombre de usuario, contraseña y la ip del servidor.

6.- Modificado dicho archivo, ir a http://localhost/savemypassword/ y probar el sitio.

Y eso sería todo, dejo algunas capturas:







martes, 13 de diciembre de 2016

¿Es necesario la SWAP en una distro Linux?


Una pregunta que se formula muy a menudo, sobre todo por los nuevos usuarios de GNU/Linux es: "¿Es necesario una partición swap para instalar Linux?".

Esta pregunta suele venir junto con otra: "¿Cuánto espacio el asigno a la partición SWAP entonces?".

Quizá ya sea todo un cliché esta pregunta, pero nunca está demás conocer una opinión mas. De tal manera que en este post pretendo explicar para qué se utiliza la partición swap en Linux y si es realmente necesaria en todos los casos, todo esto, con base a mi experiencia que he tenido en estos sistemas operativo.

La memoria ram es limitada. Al encender el equipo se tendrá disponible gran parte su memoria, ya que se supone que no se está ejecutado ningún programa. Sólo se estarán ejecutando los procesos necesarios para poder hacer funcionar al sistema operativo y según se vaya utilizando el equipo se comenzará a abrir aplicaciones, como el navegador, el editor de documentos, Telegram, Skype y una larga lista. La memoria se va llenando más y más y el equipo cada vez va más lento. Es lógico que no funcione tan bien como cuando no teníamos ninguna aplicación iniciada.

Y entonces, a todo esto surge una pregunta.
¿Qué pasa cuando ya no queda más memoria RAM?

Al ir abriendo más aplicaciones hasta el punto de llenar toda la memoria, llegará un instante en el que no se podrá ejecutar ninguna más. Será entonces cuando Linux comience a matar procesos y obviamente, no queremos eso.

Los procesos que matará Linux serán aquellos que no comprometan la estabilidad del sistema. Tienen prioridad aquellos que hacen funcionar el sistema operativo antes que Skype o el navegador. En este momento cedemos el control al sistema operativo para que gestione las tareas como él crea conveniente y por lo menos el equipo siga funcionando.

Memoria RAM + swap

La memoria RAM y la swap permiten simular una RAM de mayor tamaño que la físicamente instalada. Esto tiene como ventaja que proporciona un espacio de memoria adicional que es a veces necesaria para continuar ejecutando procesos. Ya se sabe entonces que Linux matará procesos cuando la memoria física instalada se acabe y no haya espacio para más.

Memoria swap

La memoria swap o de intercambio utiliza espacio en el disco duro en lugar de en el módulo de memoria RAM. La escritura en disco (al menos en los mecánicos) es lenta y el uso de esta memoria puede causar un descenso de rendimiento en el sistema. Por otra parte, es preferible que el equipo vaya algo más lento a que empiece a cerrar programas.

Ahora, debo aclarar algo:

Que haya asignado un espacio en disco para la memoria swap no quiere decir que tenga que utilizarse obligadamente.
Obviamente, la memoria RAM es mucho más rápida, pero el uso de la swap es algo que puede salvarnos la vida en un determinado instante.

¿Y entonces es necesario la memoria swap?

Si tienes una máquina con 1GB de RAM desde mi punto de vísta, sí necesitas swap, aunque según el uso que le vayas a dar. Como ya he mencionado anteriormente, si se abren muchas aplicaciones el uso de la RAM crecerá y llegará un momento en el que la memoria se llene.

En mi laptop personal tengo 16GB de RAM, por lo que no necesito memoria swap de manera obligatoria o necesaria. Sin embargo tengo asignada 8GB. Ya que he llegado a ejecutar hasta 5 máquinas virtuales, entornos de desarrollo abiertos, Telegram, navegadores,  varias cosas más, y  he llegado a usar hasta 12GB de RAM como mínimo. Por lo tanto, la probabilidad que se agote es mucha, y no quiero por alguna razón esto pase y el SO mate algún proceso  que estoy utilizando, o peor aún, que reinicie el entorno de escritorio.

¿Cuánto espacio le asigno a la partición swap?

En caso de que sea necesaria, esto es lo que se recomienda para la swap:

- 1 GB de RAM o menos: la misma cantidad para la swap.
- Entre 2 GB y 4 GB de RAM: la mitad para la swap.
 Más de 4 GB de RAM: 2 GB de swap.

¿Cómo sé si se está usando la SWAP?

En la mayoría de las distros se puede instalar la utilidad htop, top o atop, para ver la cantidad de recursos que está usando cada proceso.

Tengo una PC en el trabajo, con Fedora 25 y Gnome 3.22 con 8GB en RAM, y estaba realizando unas pruebas en red con máquinas virtuales, 2 en Virtualbox con windows y 1 con Centos en VMware, además, el navegador Yandex , Chrome, el editor de texto, y otras utilidades, el resultado de htop fue el siguiente:


Prácticamente la memoria SWAP ha entrado en uso, en este caso, sí es necesario contar con ella. Esto demuestra entonces, que dependerá mucho de los programas y el uso que se le dé al equipo.

Adicional: utilizar zswap

Zswap es un módulo que se integró a partir del Kernel 3.11 a Linux y básicamente lo que hace es funcionar como compresor de paginado para mejorar el uso de RAM y Swap en un sistema.

La ventaja de Zswap con respecto a Zram radica en el hecho de que ya viene integrado en cualquier kernel Linux de cualquier distro a partir de la versión 3.11 (sólamente tenemos que habilitarlo en caso de que no lo esté) mientras que zRAM se tiene que instalar aparte y en algunas distros como fedora esto es un tedio. Por otro lado, Zswap está pensado para beneficiar a todo tipo de equipos, desde el más antiguo con el mínimo de RAM disponible hasta el más nuevo y moderno al ser sólo un compresor que en términos simples hace que "más aplicaciones quepan en la memoria RAM" (o ante los ojos del usuario así se nota aunque de fondo sea más compleja su función) mientras que zRAM ocupa equipos con al menos 1GB de RAM para "hacer impacto" pues realmente sólo es una swap que corre dentro de la RAM.


Al tener Zswap activado no sólo hay una mejor gestión de RAM en el sistema sino que también los procesos enviados a swap son muchísimo más rápidos al intercambiar I/O con la RAM, traduciéndose esto en una computadora que:

a) Va a ser difícil que se vuelva lenta.

b) En caso de que se vuelva lenta va a regresar pronto a operación rescatable en lugar de congelarse por completo.

En algunas distros ya viene activado por default zswap, en otros casos es necesario hacerlo.

Para saber si ya está activado, ejecutar el siguiente comando:

dmesg | grep zswap

Si muestra una salida parecida a esta, quiere decir, que ya está activada:

En caso de que no, entonces abrir el archivo sudo gedit /etc/default/grub y buscar la línea que comienza por GRUB_CMDLINE_LINUX y agregar al final antes de las comillas zswap.enabled=1

De tal manera que el archivo quedará se la siguiente manera:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/root rd.lvm.lv=fedora/swap rhgb quiet zswap.enabled=1"
GRUB_DISABLE_RECOVERY="true"

Ahora, actualizar el grub o reiniciar el equipo:

Ubuntu:
sudo update-grub
Fedora:
grub2-mkconfig -o /boot/grub2/grub.cfg
Arch:
sudo update-grub

Si se ejecuta el comando de comprobación de zswap de nuevo, ahora ya deberá mostrar como activado.

Conclusión:
La partición SWAP, aparentemente no es necesaria si no se va a utilizar el equipo para actividades que requieran uso de la memoria RAM de manera exigente. Aunque, nunca está de más prevenir y dejarle por lo menos 2GB de SWAP, sólo por si acaso.

Este tema es bastante controvertido en la comunidad Linux, así que los animo a dejar sus comentarios sobre si la swap es necesaria o no.

Instalar Spotity en Fedora 25

Spotify

Spotify es una aplicación empleada para la reproducción de música vía difusión en continuo disponible en los sistemas operativos Microsoft Windows, Mac OS X, Linux, Windows Phone, Symbian, iOS, Android y BlackBerry (multiplataforma). Permite escuchar en modo radio buscando por artista, álbum o listas de reproducción creadas por los propios usuarios. El programa se lanzó el 7 de octubre del 2008 al mercado europeo, mientras que su implantación en otros países se realizó a lo largo de 2009.


Instalación utilizando el repositorio de negativo17 - http://negativo17.org. Es un repositorio creado por el entusiasta Simone Caronni, ya es bastante utilizado y reconocido, algunos no lo recomiendan, pero si no quieren usar la primera opción, esta sería la otra.

Instalar los repositorios:
sudo dnf config-manager --add-repo=http://negativo17.org/repos/fedora-spotify.repo

Instalar spotify:
sudo dnf install spotify-client

Y obtendrán el siguiente resultado: