DEBIAN PRO

DEBIAN PRO
DEBIAN

lunes, 31 de julio de 2017

domingo, 30 de julio de 2017

Mysql WorkBench


The dashboard in MySQL Workbench is a great tool....
I did not find a similar one for MariaDB10.2.7...
Any ideas ?




Now testing
mysql + telegraf + influxdb + grafana

First graphic 2 hours later.

lunes, 24 de julio de 2017

WifiPhiser


Su nombre lo dice todo.... pezcador de Wifi....
https://github.com/wifiphisher/wifiphisher

Paquete para Linux que sirve para tareas "poco éticas"... genera un FakeAP o roque AP, puede saturar un router WIFI con paquetes de des-autenticaciones, genera un portal para engañar y pedir contraseñas de sitios... en fin. Toda una herramienta para el uso diario de los malos.

MyDumper Backup MySQL


Un producto para hacer backups de una manera distinta en motores MySQL o derivados. Funciona en paralelo, comprime, usa una carpeta para guardar los scripts y parece ser un poco mas rápido para bases de datos muy grandes.

https://twindb.com/mydumper-rpm-for-centosrhel/

martes, 20 de junio de 2017

Linux with XFCE


Fresh install to compare Linux Distros with my favorite interface (XFCE)

Debian 9 + XFCE
Xubuntu (Ubuntu 14.10 + XFCE)

2 Srvs crreated in VirtualBox.
1 CPU + 2 gb + 18 gb disk + Bridge ethernet + SSD Disk

Install with Xubuntu 17.04 64 bits - 1.3 gb Disk Image Sezty
Total timing for installation 6 mins and the system rebooted is working again.
Minimal instalation, use 3er parties packages and NO UPDATE from internet during instalation
Use all disk automatically

Then Update all to last options. Another 4 minutes

apt dist-upgrade -- 107 packages updated
Last version
config display 1024x768
kernel 4.10.0.24
4.9 gb disk usage (/)
Port 631 open
1564 packages active (dpkg -l | wc -l)
138 Process running
295 MB RAM USAGE




Then same Virtual Server, now with Debian 9 Testing 64 bits
Disk image 3.5 gb
Install standard options - select XFCE.
9 minutos to complete instalation
1097 packetes para instalar

First Reboot
apt dist-upgrade -- to update the complete distro
194 packas updated
remove exim4 (port 25)
kernel 4.9.0.3
3.1 gb disk usade
1303 packetes en total
117 Process running
218 Mb RAM USAGE




Visual details
Xubuntu looks better, small fonts, nice environment
Debian, I have to add plugins for XFCE and disable 2nd bar
at the end both seams very similar


VirtualBox configuration




Debian 9








Xubuntu 14.04










Both Screens side by side


martes, 13 de junio de 2017

R studio


El año pasado completé un Master en DataScience con R, de excelente calidad (John Hopkins), viendo las tendencias mundiales sobre la gestión de los datos, el valor que tienen. Me enamoré de R y Rstudio, fue increible haber hecho los 10 cursos en 6 meses y descubrir el potencial increible de R.

Unos meses después veo que las nuevas versiones de SQL Server ya traer un servidor R incluido, para que un SQL Server pueda invocar a un script de R (R server) y aprovechar el beneficio del lenguaje R en temas de estadística, probabilidad, gestión de datos, gráficas, preparación de contenido web... y un largo etc.

Ingenuamente pensé que Ms había entendido que otras empresas pueden desarrollar producto de calidad y que ellos pueden usarlo, R y RStudio es un standard reconocido en el mundo desde hace mas de 10 años y además un producto sólido.

Pero nuevamente me defraudaron porque ahora veo que esta ves también Ms comienza a preparar "SU PRODUCTO" basado en R, y como siempre a su manera, usando lo que le gusta y preparando sus interfaces, sus denominaciones, sus capas, sus bibliotecas, su forma de trabajar particular.....

En lugar de "dar espacio a R y su mundo", veo que quieren duplicarlo, usando la licencia que tiene, pero generando SUS productos MS.

https://mran.microsoft.com/documents/rro/installation/

En mi mente paranoica, veo que "o lo compran o lo copia/reemplazan", parece esos sitios de Bloggeros que sacan contenido de otro lado, lo modifican un poco, se atribuyen la autoría de esas ideas brillantes, se hacen autobombo y se van alejando del Standard que sigo el resto del mundo.

"Microsoft R Open: The Enhanced R Distribution

Microsoft R Open, formerly known as Revolution R Open (RRO), is the enhanced distribution of R from Microsoft Corporation. The current release, Microsoft R Open 3.4.0, is based the statistical language R-3.4.0 and includes additional capabilities for improved performance, reproducibility and platform support.

Just like R, Microsoft R Open 3.4.0 is open source and free to download, use, and share.

Microsoft R Open includes:

The open source R language, the most widely used statistics software in the world
Compatibility with all packages, scripts and applications that work with R-3.4.0
The installation of many packages include all base and recommended R packages plus a set of specialized packages released by Microsoft Corporation to further enhance your Microsoft R Open experience
Support for Windows and Linux-based platforms

Plus these key enhancements:

Multi-threaded math libraries that brings multi-threaded computations to R.
A high-performance default CRAN repository that provide a consistent and static set of packages to all Microsoft R Open users.
The checkpoint package that make it easy to share R code and replicate results using specific R package versions.

Furthermore, you can access documentation and a forum to help you use R more effectively.

Download and install Microsoft R Open 3.4.0 today, free of charge.
"


Mas info aca
http://blog.revolutionanalytics.com/2016/04/data-scientist-perspective.html

https://mran.microsoft.com/documents/rro/installation/

Qubes OS


Hoy volví a mirar este proyecto, QubesOS, un Sistema operativo pensado para la "Seguridad", dice que Snowden lo usa... no debe ser malo supongo.
Básicamente parece un Linux con XEN que corre equipos virtuales y aplicaciones en entornos controlados, usa cierto tipo de Hardware (ver página de recomendaciones) porque necesita acceso a cierto hardware, compatibilidad de placas WIFI, de videos. etc.

Pero al funcionar, mantiene procesos totalmente aislados, que es lo que se busca, también implementaron un sistema de copia de datos entre equipos con muy buena seguridad, evitando los espacios comunes. Entorno totalmente gráfico y fácil de usar (para quien usa Linux....)

https://www.qubes-os.org/hcl/#hardware-laptops

jueves, 8 de junio de 2017

VirtualBox Windows space disk


Como reducir el espacio usado por discos virtuales en VirtualBox.
https://www.maketecheasier.com/shrink-your-virtualbox-vm/

En resúmen bajar el programa SDelete de la página de Microsoft,
correrlo
sdelete -Z c:
apagar el equipo virtual Windows

y Desde Linux, clonar el disco virtual, el destino (win7) deberá medir bastante menos.
vboxmanage clonehd VM\ Windows\ 7.vdi win7.vdi

En mi caso pasé de 65 gb a 33 gb. Algo muy importante para no usar tanto mi disco SSD de 256gb.

martes, 6 de junio de 2017

SQL Server on Linux


Installed and testing it.


$ sqlcmd -Usa -Ppassword -S127.0.0.1
1> select @@version
2> go

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL Server 2017 (CTP2.1) - 14.0.600.250 (X64)
May 10 2017 12:21:23
Copyright (C) 2017 Microsoft Corporation. All rights reserved.
Developer Edition (64-bit) on Linux (Ubuntu 16.04.2 LTS)

(1 rows affected)
1> quit

lunes, 22 de mayo de 2017

WannaCry Ransomware Telefonica ataque.


Datos generales.

Intentaré explicar de una manera simple lo que pasó ( y volverá a pasar ) con WannaCry/Ransomware/incidentes de las últimas semanas.


Mapa del Ataque de WannaCry.




Todo equipo electrónico (teléfonos, tables, portatiles, PCs, Cámaras web) tienen un "Programa" dentro que controla los componentes físicos.
El teĺéfono es un aparato electrónico físico pero al arrancarlo inicia un "Sistema Operativo" / "Firmware" que es el que nos permite interactuar con él, interpretando los toques en la pantalla, botones y realizando acciones.


Los que usan Windows, Windows es "el sistema operativo", los que usan productos Apple (OSX) es el sistema operativo, los que usan teléfonos con Android "Android" es el sistema operativo (Linux) y los que usan Linux igual.

Todo equipo físico requiere de una parte "programa"/"programable"/"cambiante" para manejarlo que pueda ser actualizable para poder mejorar sus funciones o arreglar fallos. Si esto no existiera la vida útil de un equipo se reduciría y ante un problema detectado, deberíamos cambiar el equipo físico por uno nuevo.

Como ejemplo, cuando alguien dice se me actualizó su teléfono, quiere decir que, el fabricante el teléfono envió otro S.Operativo para que pise/reemplace el que teníamos.

Además del S.Operativo, hay "programas" que corren sobre el S.O., por ejemplo el programa para leer correos, navegador en internet, facebook, whatsapp, google maps, etc.

Las empresas que desarrollan los programas también los actualizan y nos mandan nuevas versiones a nuestros equipos.



Dicho esto, ahora llegamos a una parte oscura y fea pero que es importante entender.

Todos los sistemas operativos y todos los programas fueron hechos por hombres que tuvieron descuidos o no contemplaron ciertas situaciones de uso, todos hemos vivido el que un programa se cierre solo, de un error o directamente se cuelga y tenemos que reiniciarlo. A veces solo un programa a veces el sistema operativo. Los que tengan Windows hace años, recordarán la frase de "reinicia el Windows cada dos o tres dias".

Nada es perfecto, y así como explotaban ciertas baterías por defectos de construcción, también ocurre que ciertos programas fallan si ocurre algo en particular (ciertas condiciones o combinaciones de acciones).

Esto no es nuevo y desde hace muchos años, las empresas tienen sitios donde se pueden reportar esos errores para que ellos los arreglen. Y en algunos casos hasta pagan a los informantes de esos errores.

En el caso de las empresas propietarias, Microsoft, Apple y otras tantas, suelen intentar tapar los errores porque cobraron por un producto que tiene fallos, cada uno representa un error/problema para su marca, un aumento de costo de reparación, una caída de su imágen... etc... Como esas empresas ganan dinero vendiendo sus productos, es "mejor" para ellos que no parezca tener tantos problemas. Y hay un costo asociado al arreglar esos problemas que reducen sus ganancias (millonarias), ademas de que venden el derecho de uso de un programa pero ellos siguen siendo los propietarios.

En el mundo GPL/Abierto de Linux, los errores/bugs son bien recibidos porque ayudan a mejorar el producto que todos estamos usando, de cierta manera es "mejor recibido" porque se busca tener productos de mejor calidad. No hay costo de uso, ni de licencia por lo que cada error es arreglado porque sirve para mantener la calidad de cada programa.



Ahora llegamos a una parte aún mas oscura.

Tal como han reportado Edward Snowden, Chelsea Manning, Richard Stallman, julian assange, Wikileaks, Anonymous y otros tantos profesionales/sitios de la tecnología, el Gobierno de Estados Unidos (seguramente otros también) ha comprado y desarrollado internamente programas para "explotar"/"Usar" los errores de otros programas, en lugar de reportarlo a Microsoft, Apple y otras empresas, se guardan el conocimiento de "si hago esto y esto, puedo entrar a un equipo con Windows remoto". Se lo denomina "explotar la vulnerabilidad" de un componente.

Hay un mercado de "programas que se aprovechan de errores de otros programas" con grandes empresas que facturan millones para encontrar esos fallos, también grupos de hackers oscuros en el mundo y hasta los propios gobiernos metidos, la inseguridad es un gran negocio porque permite tener el control de equipos de otros SIN SU PERMISO, colgarlos o destruirlos.

Hay pruebas de que la NSA y otras oficinas gubernamentales en el mundo han comprado ese tipo de programas a consultoras legalmente, amparados en sus leyes o no. Han logrado construir el denominado "armamento cibernético".

Ejemplo, supongamos que en un pais del medio oriente que usa Windows en sus equipos y quiere fabricar Uranio enriquecido.
A Estados Unidos (USA) no le gusta y les envía un virus/troyano/programa_malo para que infecte sus PCs y que esos equipos con Windows se reseteen cada hora, o la fecha/hora cambie permanentemente o aparezcan las pantallas azules de "colgado". Eso ha ocurrido y se llama "ataque cibernético" o "ciberataque". Ver Stuxnet.

Al mismo tiempo, puede haber grupos de hackers pagados por China, Rusia, Alemania, UK o "autónomos" que pueden hacer algo similar, desarrollan un programa e "infectan" determinados equipos (o todos los que puedan) para intentar ganar algo, sea molestar a otros, ganar dinero, bajar las acciones de la Bolsa... El daño es para unos y el beneficio para otros.

Creo que hay tres motivaciones para este tipo de acciones, motivaciones políticas/gobierno, motivaciones económicas personales/grupo o simplemente buscar "fama"/reconocimiento durante un tiempo.
Para las motivaciones económicas a veces el mal paga mas y mas rápido que el bien, no hay datos de lo recaudado por los cyberdelincuentes de WannaCry, pero seguramente es muchisimo mas de lo que hubieran ganado enviando los errores a Microsoft para su arreglo.

Si esto lo hacen grupos "muy malos" sin estar soportados por gobiernos se lo suele llamar "cyber terrorismo", es como poner una bomba en un centro comercial y generar "miedo".
Si lo hacen los gobiernos y aunque la acción sea la misma, se lo denomina "Seguridad Nacional"...

Las creencias nacionalistas, religiosas, morales hacen que todos estos grupos puedan ser vistos como "buenos o malos", no voy a emitir opinión.



Orígen del incidente del 12 Mayo.

Hace unos cuantos meses, un grupo de hackers pudo obtener una copia de todos los virus/troyanos/programas_malos de la NSA (su cyberarmamento), el paralelo sería entrar en un complejo de investigación de enfermedades contagiosas y robar las muestras de todos los virus que mantenían guardados (en muchos casos sin vacuna). Quien tenían esos virus los guardaba para enviarlos a un pais lejano y hacer ataques bacteriológicos a otros.

Ese grupo hizo público todos los virus que encontraron y pidió un rescate para vender/entregarlos en internet, cobrando Bitcoins a cambio. Comenzó a liberar de a partes lo que habían encontrado.
Y en un punto del tiempo hicieron público la información de todos los virus que le habían robado a la NSA.

Quizas ellos mismos o otros grupos hackers, obtuvieron esos virus, los mezclaron, les agregaron otras enfermedades y los enviaron a muchos emails en el mundo, generalmente como "Adjuntos en Email", o "Links de fotos/pdfs" o Webs infectados. Parece que lograron llegar a Telefónica, Sistemas de salud Ingleses, empresas de todo tipo y como los virus biológicos, estos virus informáticos infectaron cientos de miles de PCs en el mundo, en pequeñas empresas, grandes, equipos de Universidades, etc. El número total de infectados jamas se sabrá porque es casi imposible estimarlo. Muchas gente reinstaló Windows y no hay donde informar de eso.

En este caso le agregaron un componente para pedir dinero a los infectados, el virus infectó un equipo con Windows, encriptó determinados ficheros y pide dinero a su dueño para des-encriptarlo, esto se llama RansomWare (exactamente esto mismo apareció en una serie llamada MrRobot), una profesía autocumplida o un riezgo que todos veíamos y no se puedo parar.



El ataque.
Por determinadas condiciones todos los equipos infectados (quizas hace meses) se "activaron" y comenzaron a infectar a sus vecinos, y se disparó la epidemia, en varias empresas mandaron a sus empleados a la calle "SIN EQUIPOS" para evitar que contagie a otros equipos (en sus casas).

Esto pasó en equipos con Windows como sistema operativo, pero puede pasar con productos Apple, con Linux y lo peor de todo es que "puede volver a pasar nuevamente".

El programa ademas de encriptar los ficheros presenta una pantalla para pedir un "rescate" de unos 300 U$S, y por conocidos que han aceptado y enviado el dinero, les han enviado la clave para des-encriptar todos sus ficheros.

Gracias a empresas de seguridad que entendieron que estaba pasando, probaron soluciones y además informaron a Microsoft, se pudieron fabricar las vacunas para "ESE VIRUS".
El término es "patchear" Windows, colocarle unos parches/arreglos en sus programas para evitar que vuelvan a vulnerar esos mismos puntos.

Investigadores y consultoras de seguridad mundiales han verificado que en este caso, varios componentes del virus estaban en el armamento robado a la NSA, con una mezcla de otros programas y preparado para encriptar archivos y solicitar dinero.





¿ Responsables ?
Aqui nuevamente por razones "políticas, religiosas, humanas o sociales" se puede acusar a la NSA de construir, pagar y almacenar un muestrario de virus para sus propios fines, SIN avisar a Microsoft (en este caso) de lo que encontraron, buscando su propio beneficio en ataques a otros.
Podemos apuntar a Microsoft por sus políticas propietarias y oscurantismo en la manera de gestionar su seguridad, sus productos propietarios y por "permitir" que existan errores SIN arreglarse en sus productos. O que no hayan sido arreglados rápidamente.

Podemos acusar a un grupo de hackers malos que robaron el armamento bacteriológico/informático de la NSA, sería un robo en instalaciones de un ente de gobierno que se dedica a "Seguridad"...

Las personas y empresas que usan Windows y que confían en su seguridad y sistema de parches, también tienen un 2% de culpa, seguramente escucharon cientos de veces los problemas de un Sistema Operativo pero confiaron que no les pasaría nada, no hacían copias de seguridad, no tenían antivirus (algo que no les hubiera servido en este caso), no mantienen sus productos actualizados, etc.etc.... Es algo mínimo pero son responsables también.



¿ Esto puede volver a pasar ?
SI, SIN DUDA. la pregunta es ¿Cuándo?, porque puede volver a pasar hoy mismo.
¿ Puede ocurrir usando productos Apple ? SI, perfectamente.
¿ Y usando Linux ? Si, quizas en menor grado, pero SI, podría pasar.

Las estadísticas dicen que el 70% de los equipos tiene Windows, un 25% Apple y un 5% Linux. Para mi, eso esos números representan los porcentajes de que vuelva a ocurrir.

Grupos que busquen un beneficio económico o gobiernos que busquen un beneficio estratégico/económico pueden volver a provocar algo similar.



¿ Es este el fin de la tecnología tal como la conocemos ?
¿ Hará falta que la humanidad intente ser mas cooperativa, que mucha gente salga de productos propietarios y se pase a soluciones GPL ?
¿ Hace falta que los directivos de Seguridad en el mundo entiendan los problemas y vean como solucionarlos eficientemente en lugar de patear las pelotas fuera de la cancha ?
¿ Un mundo mas justo ?
Total, que no sea por no pedir.



jueves, 4 de mayo de 2017

VoltDB


En estos dias estoy probando VOLTDB, un nuevo producto para gestión de datos.
Requiere Java.... ya empezamos mal... hay que instalar unos cuantos componentes y ademas solo dice que está soportado para Ubuntu 16.04 (y no en nuevas versiones).

En fin, seguiré probando.


Todo esto sumado a que no compila....
buildinfo:
[exec] This is not a git working tree
[exec]
[exec] This not an svn working copy
[exec] Version: 7.2.1 This is not from a known repository

ee_buildmakefile:
[exec] Traceback (most recent call last):
[exec] File "build.py", line 52, in
[exec] if CTX.compilerName() == 'gcc':
[exec] File "/home/dac/voltdb-voltdb-7.2.1/buildtools.py", line 74, in compilerName
[exec] self.getCompilerVersion()
[exec] File "/home/dac/voltdb-voltdb-7.2.1/buildtools.py", line 92, in getCompilerVersion
[exec] vinfo = output = Popen([self.CXX, "-v"], stderr=PIPE).communicate()[1]
[exec] File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
[exec] errread, errwrite)
[exec] File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
[exec] raise child_exception
[exec] OSError: [Errno 2] No such file or directory

BUILD FAILED
/home/dac/voltdb-voltdb-7.2.1/build.xml:1556: exec returned: 1

Total time: 2 minutes 23 seconds



Un buen rato después, varios paquetes instalados, sistema actualizado nuevamente..... otro error.

[exec] make[1]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d'
[exec] making all in crypto...
[exec] make[2]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] making all in crypto/objects...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] making all in crypto/bn...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] making all in crypto/buffer...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] making all in crypto/bio...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] making all in crypto/stack...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] making all in crypto/lhash...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] making all in crypto/rand...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] making all in crypto/err...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] making all in crypto/asn1...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] if [ -n "" ]; then \
[exec] (cd ..; make libcrypto); \
[exec] fi
[exec] make[2]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/bin'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/engines'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/include'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/include/openssl'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/misc'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/certs'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/private'
[exec] making install in crypto...
[exec] make[2]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] making install in crypto/objects...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] making install in crypto/bn...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] making install in crypto/buffer...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] making install in crypto/bio...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] making install in crypto/stack...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] making install in crypto/lhash...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] making install in crypto/rand...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] making install in crypto/err...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] making install in crypto/asn1...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[2]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] installing libcrypto.a
[exec] cp libcrypto.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/libcrypto.pc
[exec] cp libssl.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] /bin/sh: 5: cmake: not found
[exec] make: *** [configure-s2-geometry] Error 127
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/libssl.pc
[exec] cp openssl.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/openssl.pc
[exec] make[1]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d'
[exec] Configuring The S2 Library for building.
[exec] if [ ! -f google-s2-geometry/Makefile ] ; then \
[exec] rm -rf google-s2-geometry; \
[exec] mkdir google-s2-geometry; \
[exec] cd google-s2-geometry; \
[exec] cmake -DCXX_VERSION_FLAG="-std=c++11" -DVOLTDB_THIRD_PARTY_CPP_DIR="/home/dac/voltdb-voltdb-7.2.1/third_party/cpp" -DCMAKE_INSTALL_PREFIX="/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install" -DCMAKE_BUILD_TYPE="Release" "/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/google-s2-geometry"; \
[exec] fi
[exec] makefile:382: recipe for target 'configure-s2-geometry' failed
[exec] make: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/obj/release'
[exec] Building with c++11
[exec] Compiler: gcc 5.4.0
[exec] OpenSSL: version 1.0.2d, config linux-x86_64:gcc -fpic
[exec]
[exec] Making in directory "obj/release/" with 1 threads

BUILD FAILED
/home/dac/voltdb-voltdb-7.2.1/build.xml:1546: exec returned: 255

Total time: 1 minute 2 seconds

lunes, 24 de abril de 2017

Cámara de Fotos de Carrefour


Hace unos dias recibí un cupón de "DESCUENTO" de Carrefour para comprar una cámarita "PARECIDA" a una GoPro, por un precio mínimo (29€) aunque el precio de lista dicen que era de 70 €uros.


La compré para probarla, sin esperar demasiado y dos horas después la devolví, aquí están las razones.

Ni se imaginarán la calidad del video/audio cuando grabé.



miércoles, 19 de abril de 2017

Bot Trading v2.0


Ya tengo la pantalla de la última versión del BOT para Trading de BTC Bitcoins.

En breve tendré listo la máquina virtual para operar, all-in-one. Eso facilitará la puesta en marcha a personas no-técnicas.
También se mejorará la comunicación con otros mercados (big traders) y mayor inteligencia del BOT.

Me preguntaban que pocentaje de efectividad tiene el BOT, humildemente tiene un 100% de efectividad... aunque parezca una frase de marketing es real, solamente opera cuando se cumplen determinadas situaciones del mercado que nos favoreces, es decir, cuando opera ganará un porcentaje mínimo, puede demorar horas o dias en operar pero nunca pierde dinero.

¿ Quieres verlo en funcionamiento ? te interesa ? te gustaría usarlo ?
Se ofrece en un paquete de
* Equipo funcionando (real o virtual)
* Curso de 1 horas para su configuración
* Curso de 3 horas sobre trading de BTC
* Soporte por email en caso de incidentes del BOT y sus respectivos parches durante un año.

¿ Qué estas esperando para usarlo ?


New York hotspots


Gracias a DECO por enviarme unas fotos de unos equipos que están en la Ciudad de New York, al mejor estilo HotSpot llamado LinkNYC, ofrecen dos conectores para cargar USB, algo realmente tan necesario como el agua... Ideal para personas que se queden sin bateria en la calle, también un sistema mediante una tablet para hacer llamadas sin costo, posibilidad de llamar al 911 directamente, poder conectarle unos auriculares y muestran publicidad en unos monitores muy grandes, que supongo que es el sistema para financiarlo.

Como idea me parece brillante, lo he visto en trenes, autobuses y otros medios de comunicación, pero esto en la calle es "MUY BUENO", ademas de poder hacer llamadas.

Imagino que tienen algunas camaritas que graban todo el dia, y quizas mas gadgets para saber que esta pasando a unos metros de cada uno de estos Links. Ojalá hicieron algo similar en nuestras queridas ciudades. Veo que también dan mensajes en Español.

¿ Qué les parece ?


Bot para Trading Bitcoin


Ya está funcionando la nueva versión de BOT paar Trading Bitcoins, mas funciones, mas datos, interfaz mejorada...
Las primeras versiones fueron del 2014, hoy sigue operando.

viernes, 31 de marzo de 2017

Raspberry PI Server


Raspberry PI 1b como servidor en casa

Hace mas de 8 años que tenemos un portátil como servidor en casa, un Celeron II + 4 gb + 128 gb SSD y Xubuntu.
Lo compramos por unos 300 €uros en época de ofertas y luego le pusimos el disco 128 SSD.


El server hace todo lo que necesito y también sirve como "Cliente" para la familia, los productos/servicios que tiene corriendo son
Servidor Correo para varias cuentas de la familia
Srv OwnCloud
Srv SSH
Srv web + https + servicios + php + cgis + WebMail
Srv de Impresión + Impresora HP Laser
Srv openvpn (VPN)
Srv Squid (proxy)
Srv MySQL
noip2 (gestión de ip dinámico)
ThinkSpeak (monitorización del server remota)
LetsEncrypt
mpg123 (mp3 player como hilo musical)

Estos son aplicaciones Clientes
www.netflix.com
GMusicPlayer (reprod mp3)
PGAdmin
VirtualBox (con 2 equipos virtuales)
Skype + Whatsapp + telegram + slack
Aftershoot (retoques de fotos)
R Studio
Remmina
Keypassx
WPS (clone de office)
Claws (cliente de correo)
RoboMongo
SqlDeveloper (Oracle)
SublimeText3
TeamViewer 12
VeraCrypt
Vivaldi browser
GPG4USB
SNX para redes VPN en empresas

Suele estar encendido las 24 hs todos los dias del año, excepto durante las vacaciones, las teclas están gastados, pensaba en cambiarlo y poner algo mejor/mejor. pensando que ya tenemos 4 portátiles en casa, comprar otro mas para servidor produciría pasar a tener 5 (CINCO) portátiles.... parece demasiado.

¿ Porqué una PI 1b ?
Recordé que tenía tirada en un cajón una Raspberry PI B (512 mb), estaba tirada desde hace unos 3 años luego de hacer pruebas y descubrir que le faltaba potencia para ser un ReproMultimedia, el KODI es muy bueno pero la PI es demasiado poco para moverlo.
https://kodi.tv/kodi-v17-1-krypton/

Luego de probar Raspbian, pendrive, teclados, ratones, wifi USB... fue al cajón.

Hasta hace 1 mes atras, donde pensé en darle otra oportunidad.
https://www.raspberrypi.org/products/model-b/

Pensé en Raspbian, un SD de 8 gb serie 10 que también estaba tirado en el cajón.
https://www.raspberrypi.org/downloads/noobs/

La instalación es bastante simple, bajar Noobs, renombrarlo de ZIP a ISO, usando DD, pasar el ISO al SD, meter el SD en la PI y enchufar un cargador de teléfomo MicroSD.
Durante la instalación indicar un "overclock MEDIO", para que no caliente tanto la PI pero que los Mhz que brinde el micro sean un poco mayores. La verdad que es que el CPU es muy limitada en potencia (ARM) y 512 no es tanto, pero acaba funcionando un Raspbian con interfax gráfica.


Luego estuvo unos dias, quitando cosas, la parte gráfica, paquetes y servicios que no necesitaba, con eso logré llegar a los 800 megas usados en Disco y un consumo inicial de ram de 150 megas.

Al ser Debian (cada año que pasa me gusta mas), fuí copiando configuraciones y archivos del portátil (server viejo) a la PI (Server nuevo). El proceso era instalar el producto (ej: apt install squid) y luego pisar los ficheros de configuración.

Estuve unos 15 horas para preparar todo, algunos procesos son demasiado lentos para la PI, algo que con un disco SSD y un Celeron demoran segundos, en la PI fueron minutos. pero quedó todo funcionando bastante bien.

Luego tuve que cambiar unas reglas en el router para redireccionamiento de puertos y mantener ambos servidores en paralelo durante unos dias.

Hoy llevo un mes funcionando únicamente con la PI, el consumo eléctrico es notoriamente menor, ocupo mucho menos espacio en mi "cuevita" informática privada (cajita plástica), tengo que acomodar las partes, porque ahora tengo un monitor Dell 27" que enciendo durante las horas de trabajo en casa.
https://www.amazon.es/gp/product/B00OOKGECK/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1



El viejo servidor Asus, ahora está cerrado la mayoría del tiempo (hibernando), lo abrimos y usamos para ver NetFlix, navegación en internet y edición de fotos. Unas horas cada dia como mucho.

He logrado pasar todo a una PI 1b y que funcione bastante bien, inclusive OwnCloud y OpenVPN que son productos mas pesados, funcionan "bastante bien". La velocidad no es la misma que con el Portátil y el SSD... pero se pueden usar.


Para OwnCloud instalé un miniusb de 16 gb conectado a la PI, suficiente para los archivos de uso diario, además de tener dos NAS de 1 tb cada una conectadas a la red.


Pensé en colocarle XFCE y usarla como Browser, pero la PI no lo soporta, es lenta y con poca RAM para eso, en mi portátil personal (Asus tp300) veo que uso 6 gb de RAM solo con Firefox... imposible tener funcionando la parte gráfica en la PI, aunque la parte texto si que funciona bien.


Al arrancar con todo funcionando, usa 124 mb ram.




SCRIPT para enviar datos a thingspeak
#!/bin/bash

api_key='xxxxxxxxxx'

stat | awk '/^cpu / {print $5}'`; USED=`echo 2 k 100 $SECOND $FIRST - $NUMCPUS / - p | dc`
used_cpu_percent=`awk -v a="$(awk '/cpu /{print $2+$4,$2+$4+$5}' /proc/stat; sleep 1)" '/cpu /{split(a,b," "); print 100*($2+$4-b[1])/($2+$4+$5-b[2])}' /proc/stat`
echo $used_cpu_percent

# get memory
used_mem=`ps -A | wc -l`
# free -m | tr -s ' ' | grep buffers/cache | cut -f3 -d' '`
# total_mem=`free -m | tr -s ' ' | grep Mem | cut -f2 -d' '`
# used_mem_percent=`echo "scale=2;100*$used_mem/$total_mem" | bc`
echo $used_mem

# get disk use as a percent
used_disk_percent=`df -lh | awk '{if ($6 == "/") { print $5 }}' | head -1 | cut -d'%' -f1`
echo $used_disk_percent

# Post Ext Storage usage
disco=`df -h | grep /opt | cut -c 34-36`
echo $disco

# post the data to thingspeak
curl -k --data "api_key=$api_key&field1=$used_cpu_percent&field2=$used_mem&field3=$used_disk_percent&field4=$disco" https://api.thingspeak.com/update



Finalmente los servicios que quedaron corriendo son

[ - ] alsa-utils
[ + ] apache2
[ + ] avahi-daemon
[ - ] bootlogs
[ - ] bootmisc.sh
[ - ] checkfs.sh
[ - ] checkroot-bootclean.sh
[ - ] checkroot.sh
[ + ] console-setup
[ + ] cron
[ + ] cups
[ + ] cups-browsed
[ + ] dbus
[ + ] dhcpcd
[ + ] dovecot
[ + ] dphys-swapfile
[ + ] fake-hwclock
[ - ] hostname.sh
[ - ] hwclock.sh
[ + ] kbd
[ + ] keyboard-setup
[ - ] killprocs
[ - ] kmod
[ - ] lightdm
[ - ] motd
[ - ] mountall-bootclean.sh
[ - ] mountall.sh
[ - ] mountdevsubfs.sh
[ - ] mountkernfs.sh
[ - ] mountnfs-bootclean.sh
[ - ] mountnfs.sh
[ + ] mysql
[ + ] networking
[ - ] nfs-common
[ + ] ntp
[ + ] openvpn
[ - ] plymouth
[ - ] plymouth-log
[ + ] postfix
[ + ] procps
[ + ] raspi-config
[ + ] rc.local
[ - ] rmnologin
[ - ] rpcbind
[ - ] rsync
[ + ] rsyslog
[ - ] saned
[ - ] sendsigs
[ + ] squid
[ + ] ssh
[ - ] sudo
[ + ] triggerhappy
[ + ] udev
[ + ] udev-finish
[ - ] umountfs
[ - ] umountnfs.sh
[ - ] umountroot
[ + ] urandom
[ - ] x11-common



Los puertos

PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
143/tcp open imap
443/tcp open https
631/tcp open ipp
993/tcp open imaps
3128/tcp open squid-http
3306/tcp open mysql


Almacenamiento

Filesystem Size Used Avail Use% Mounted on
/dev/root 5,9G 2,8G 2,8G 50% /
devtmpfs 214M 0 214M 0% /dev
tmpfs 218M 0 218M 0% /dev/shm
tmpfs 218M 8,6M 209M 4% /run
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 218M 0 218M 0% /sys/fs/cgroup
/dev/mmcblk0p6 65M 21M 45M 32% /boot
/dev/sda1 15G 4,0G 9,4G 30% /opt/a
tmpfs 44M 0 44M 0% /run/user/1000
tmpfs 44M 0 44M 0% /run/user/0


Procesos

systemd─┬─agetty
├─apache2───10*[apache2]
├─avahi-daemon───avahi-daemon
├─colord─┬─{gdbus}
│ └─{gmain}
├─cron
├─cups-browsed
├─cupsd
├─dbus-daemon
├─dhcpcd
├─dovecot─┬─anvil
│ └─log
├─login───bash
├─master─┬─anvil
│ ├─pickup
│ ├─proxymap
│ ├─qmgr
│ ├─smtpd
│ └─tlsmgr
├─mysqld_safe───mysqld───23*[{mysqld}]
├─noip2
├─ntpd
├─openvpn
├─packagekitd─┬─{gdbus}
│ └─{gmain}
├─polkitd─┬─{gdbus}
│ └─{gmain}
├─pulseaudio───{null-sink}
├─rsyslogd─┬─{in:imklog}
│ ├─{in:imuxsock}
│ └─{rs:main Q:Reg}
├─rtkit-daemon───2*[{rtkit-daemon}]
├─squid───squid───unlinkd
├─sshd───sshd───sshd───bash───sudo───su───bash───pstree
├─2*[systemd───(sd-pam)]
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─thd

lunes, 6 de marzo de 2017

Node.js


Necesito hacer un programa bastante sencillo en Node.js, así que luego de 3 años retomo el tema y trataré de hacerlo aprendiendo.
Acepto voluntarios que me ayuden un poco...

Dejo links a ayudas.
http://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js

Linux disable IP6


en el archivo /etc/sysctl.conf
agregar estas líneas al final

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1


luego hacer un
sysctl -p

domingo, 19 de febrero de 2017

Linux CPU speed y ahorro de energia



En estas últimas semanas en modo paranoico, estoy tratando de reducir el consumo eléctrico de mi portátil y al mismo tiempo hacer durar la batería todo lo posible.

Primero instalar los "CPU FREQ Utils", luego definir a mano la velocidad o el modo en el que quiero que trabaje el equipo (CPUs).

# apt install cpufrequtils

# Info sobre las velocidades del CPU que están soportadas.
cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 0.97 ms.
hardware limits: 800 MHz - 1.80 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.80 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 1.80 GHz (asserted by call to hardware).


# Cambio a una determinada velocidad.
cpufreq-set -f 1000

# Cambio a un modo de funcionamiento. (powersave, performance)
aunque en otros equipos dice ondemand, powersave, conservative.

cpufreq-set -g powersave

lunes, 13 de febrero de 2017

Debian Tactiles


En estos dias configuré un display táctil y touchpad para un equipo "transformer", donde el display se gira y parece una tablet.
Un excelente equipo y ahora demás bastante bueno para leer y manejarlo de manera táctil.

El script que usé debajo, y programé el botón de "giro" para que lo invoque y gire a la izquierda o vuelva al modo normal.
En XFCE, dentro del APP "Keyboard", luego "Application shorcut" y agregar una entrada que invoque al script.



#!/bin/bash
#
# rotate_desktop.sh
#
# Rotates modern Linux desktop screen and input devices to match. Handy for
# convertible notebooks. Call this script from panel launchers, keyboard
# shortcuts, or touch gesture bindings (xSwipe, touchegg, etc.).
#
# Using transformation matrix bits taken from:
# https://wiki.ubuntu.com/X/InputCoordinateTransformation
#

if [ -f /tmp/pantalla.txt ]
then
xrandr --output eDP-1 --rotate normal
xinput set-prop 'FocalTechPS/2 FocalTech Touchpad' "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1
xinput set-prop 'Atmel' "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1

killall florence

rm /tmp/pantalla.txt

else
xrandr --output eDP-1 --rotate right
xinput set-prop 'FocalTechPS/2 FocalTech Touchpad' "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
xinput set-prop 'Atmel' "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1

florence &

echo " " > /tmp/pantalla.txt
chmod 777 /tmp/pantalla.txt

fi

exit 0
#
# fin
#



viernes, 27 de enero de 2017

DooGee


Llevamos un año probando un teléfono DooGee X5Pro, bastante bueno salió.
En estos dias encontré el sitio para descargar el firmware y tenerlo al dia.

http://www.doogee.cc/bbs/viewtopic.php?f=10&t=29

El proceso es muy sencillo, bajar el último fichero de tu modelo (en mi caso x5 pro), es un RAR.
Luego copiarlo a la memoria del teléfono via USB desde un PC.
Luego desde el teléfono indicar "Actualizar Firmware" y usar la opción manual,buscando el fichero ZIP.

Todo perfecto. ahora mismo está en "Android 6.1"