Linux

Backup de todo tu Raspberry

Hoy les dejo un detalle que siempre es muy util, si estamos haciendo una investigación forense informática o queremos clonar un disco, siempre es necesario conocer todos los comandos.
En este caso el que utilizo continuamente para clonar proyectos con la RaspberrPi, es el DD, ya que utilizo a diario MAC oSX y LINUX, la mejor forma de realizar esto es mediante la interfaz de comando.

De esta manera evitamos perdidas de rendimiento con el renderizado de las GUI y demás tonterías que solo embellecen el programa, que por debajo realiza la misma tarea.

Necesitamos acceso ROOT, por tal motivo pondremos el sudo delante del comando.

sudo dd if=/dev/rdisk1 of=~/Desktop/pi.img bs=1m

El atributo “if” nos indica el Input File.
El atributo “of” nos indica el Output File.

En el caso inicial queremos realizar una copia o imagen del disco SD de la rasp. Por esto en el caso del atributo “if” indicaremos el disco que se le asigno a la tarjeta SD.
Cuando conectamos una tarjeta a nuestro MACOSX o LINUX, este le asigna una unidad o device. La cual encontraremos dentro del directorio “/dev”

El comando genérico para ver esto es “df -k”, el cual devuelve una lista de las “devices” asignadas a los diferentes dispositivos.

En MacOsx veremos disk con un numero. Por ejemplo /dev/disk1
En Linux veremos un sd con una letra. Por ejemplo /dev/sdb o sdc
Las “s1 o números” tras estas, solo indican las particiones. En este caso no nos importan.

Para estar seguros de lo que hacemos podemos ejecutar “df -k” antes de poner la tarjeta SD. Obteniendo por ejemplo:

sh-3.2# df -k
Filesystem 1024-blocks Used Available Capacity iused ifree %iused Mounted on
/dev/disk0s2 487546976 461145040 26145936 95% 115350258 6536484 95% /
devfs 181 181 0 100% 628 0 100% /dev
map -hosts 0 0 0 100% 0 0 100% /net
map auto_home 0 0 0 100% 0 0 100% /home
localhost:/DiO2XSaMW-DZkD_gbnPrOS 487546976 487546976 0 100% 0 0 100% /Volumes/MobileBackups

Lo importante son los “devs”

Conectamos la tarjeta SD y repetimos el comando.

sh-3.2# df -k
Filesystem 1024-blocks Used Available Capacity iused ifree %iused Mounted on
/dev/disk0s2 487546976 461145200 26145776 95% 115350298 6536444 95% /
devfs 185 185 0 100% 640 0 100% /dev
map -hosts 0 0 0 100% 0 0 100% /net
map auto_home 0 0 0 100% 0 0 100% /home
localhost:/DiO2XSaMW-DZkD_gbnPrOS 487546976 487546976 0 100% 0 0 100% /Volumes/MobileBackups
/dev/disk1s1 57288 20288 37000 36% 512 0 100% /Volumes/boot

Mágicamente aparece un nuevo “dev” llamado disk1s1.
En MacOSX también existe otro comando de lectura mas cómoda. “diskutil list”

sh-3.2# diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.1 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_HFS MacOsx 499.2 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *8.0 GB disk1
1: Windows_FAT_32 boot 58.7 MB disk1s1
2: Linux 7.9 GB disk1s2

En ambos comandos vemos que el disco SD es el “disk1”.

Con dicha información ya podemos incluir el atributo “if” = /dev/disk1 (¿porque disk1 y no disk1s1? porque queremos copiar el disco completo y no solo una partición).

en el atributo “of” tendremos que indicar el destino de los datos. En este caso podemos poner un archivo de imagen. Por ejemplo “copiaRasp.img”

Finalemente el ultimo atributo que no es obligatorio pero ayuda, es el “BS”, que indica la cantidad de bloques que queremos leer en cada ciclo. En este caso se puede poner lo que desees, pero tras varias pruebas hemos determinado que lo mas compatible con todos los sistemas es poner “1Mb”.

Ya tenemos todo, construimos el comando.

$ sudo dd if=’/dev/disk1′ of=’copiaRasp.img’ bs=1m

antes de ejecutar el comando vamos a “tunearlo un poco”

La experiencia nos ha dicho siempre que si leemos de un dispositivo, es mejor que no este montado, para evitar cambios mientras lo leemos, por tal motivo lo desmontaremos.

En linux
$sudo unmount /dev/disk1
En MacOsx
$diskutil unmountDisk /dev/disk1

También la experiencia nos enseña que si leemos el disco original en formato RAW, es una lectura mas rápida. Por tal motivo reemplazamos el “disk1” por “rdisk1”

Quedándonos este comando:

$sudo dd if=’/dev/rdisk1′ of=’copiaRasp.img’ bs=1m

Una vez que tenemos nuestra imagen copiada, lo cual tarda un tiempo proporcional a la velocidad de lectura de nuestra tarjeta SD y al tamaño de esta.

Nota: Con este comando la imagen generada tendrá el mismo tamaño que el tamaño de la SD, porque copia todo el disco.

Procederemos a quitar la tarjeta SD y poner la nueva, y ejecutamos el comando de forma inversa.

Verificamos el “device” asignado a nuestra tarjeta SD, en la mayoría de los casos como quitamos una y conectamos otra el numero de device será el mismo. Para otros casos no, y por eso mejor verificamos esto con el comando anteriormente mencionado “df -k o diskutil list”

Cuando tenemos seguridad del numero del device ejecutaremos el comando. No antes, ya que este paso y el comando DD ejecutado como ROOT, son una herramienta muy poderosa, y puede eliminarnos un disco en segundos.
Verificamos nuevamente que el device sea el correcto y si es necesario, una vez mas. Nada es suficiente para cuidar nuestro ordenador.

$sudo dd if=’copiaRasp.img’ of=’/dev/rdisk1′ bs=1m

La escritura siempre toma mas tiempo, y necesitamos paciencia.

Ahora mejorando lo anterior, podemos aprovechar el espacio y reducir el archivo de backup podemos comprimir la imagen con “gzip”, este comando elimina todo el espacio en blanco de la tarjeta y comprime estos espacios.
Por ejemplo si tenemos “0000000000” el comando gzip comprime en “10*0”, es una forma de explicarlo.

Para comprimirlo podemos hacerlo todo en el mismo comando, por ejemplo utilizando “|”

sudo dd if=/dev/rdisk1 bs=1m | gzip > copiaRasp.gz

Y para copiar la imagen a la nueva tarjeta SD

gzip -dc ~/Desktop/pi.gz | sudo dd of=/dev/rdisk1 bs=1m

Os recomiendo utilizar este ultimo comando, ya que se aprovecha mucho mejor el espacio y la imagen no depende del tamaño de la SD original sino de los programas que tengamos instalados.
En mi caso, el primer comando resulto una imagen de 8GB, porque la tarjeta tenia este tamaño, y el segundo comando resulto una imagen de 4,3GB porque los datos ocupaban eso.

Saludos.

Movies from you PC to Playstation 4

This is a step by step tutorial on how to watch movies on your computer without transferring them to your PlayStation and when.

A similar WUAKI.TV or local NETFLIX on your computer.

We will remove all in steps, so you fences performing checks does not operate.

NET

The first is to have both devices on the same network, wireless or cable.

 

WEB SERVER


Once we are on the same network, we will install a web server on your computer.
There are many solutions but it’s best to find a XAMPP for our platform. Either Linux, Windows or Mac, compatibility is assured.ApafreFirends.org people has done a great job with XAMPP package that supports all platforms.

https://www.apachefriends.org/es/index.html

 

Basically XAMPP means that it is a group of servers, X was by Linux, but later became multi platform, is Apache web server using the solution, M Mysql, although currently using MariaDB, P PERL and the last P PHP.

This package creates a complete installation of all these programs and set to work together.

Once installed, we could start programs, in this case we only need APACHE.

 

 

Screen Shot 2016-02-09 at 18.08.23

Let’s option MANAGE SERVERS

Here we select the APACHE WEB SERVER and press START

 

Screen Shot 2016-02-09 at 18.08.44
After a few seconds, we will have the service running.

Screen Shot 2016-02-09 at 18.08.58

 

And you can visit our server by typing the address in any browser

 

http://localhost o http://127.0.0.1

Always from the same computer on which you installed the server.

 

Screen Shot 2016-02-09 at 18.09.38

 

 

 

 

 

ACCESS FROM OUTSIDE
We verified that we have access from anywhere, with another computer or mobile phone connected to the same network, try to access the IP address of the computer where you installed the server, for example IP 192.168.0.11, we put on the web browser as follows address

http://192.168.0.11

If all went well, we will see the same page as in the previous image, otherwise, we modify the firewall settings of your computer to allow access to port 80 from outside or in the service of the Apache server. This is done automatically when you start Windows Server, wondering if we permit access to that service.

 

Screen Shot 2016-02-09 at 18.09.38

FIND APACHE home directory.


On the computer where the web server we have installed, look for the basis of our APACHE directory, use the htdocs directory which can be in different places depending on the operating system.
LINUX is located in / var / wwwWINDOWS is in My Documents / wwwMAC OSX is located inside the XAMPP installation in a directory / htdocsWhen we find the base directory, we delete or change any files directory, in my case, for example I have moved all files to another folder, so I do not lose access example brings XAMPP.

Screen Shot 2016-02-09 at 18.21.00

 

In my case I created the original XAMPP folder where you‘ve moved the entire contents, and then I created a file index.php to test the change.

Screen Shot 2016-02-09 at 18.24.18

 

Index.php just have these lines to confirm that I am in the right place and there is nothing left of the examples of XAMPP

 

<code>
<!–?php?–>
<h1>HOLA MUNDO</h1>

</code>

In this case, Internet Explorer will see the following.

Screen Shot 2016-02-09 at 18.23.43

 

 

 

 

 

 

Now we know that the directory is correct and we have control.

 

 

CREATION VIDEO SERVER

In this case create a server with support for HTML5 video, and post files in a directory accessible by the web server, and we could see our movies.

If you want you can download my design HTML5 VIDEO, paying a token contribution to continue developing.

 

 

BUY  contact admin@wadisa.com





 

Version Details:

The films must be encoded in x264, no matter the end, although it is better be MP4, because some browsers do not endure other, even while they are encoded X264 is sufficient.

File names must have a unique format. The name of the movie of the year separated by an underscore. For example:

 

Hot Porsuit_2015.mp4

Little Manhattan_2005.mkv

Night at the Museum Secret of the Tomb_2014.mp4

 

The actual name can be obtained from the search engine including HTML5VIDEO program, which will indicate if the film is, and thus ensure that the original cover art and all details will be correct.
These video files are placed in the VIDEO directory HTML5VIDEO our application.
The system will automatically scan the cover and movie details. For remove the film from the directory, the system automatically remove everything about this film.

 

 

 

 

TESTING ALL LOCALLY

Once you have the server installed, running our HTML5VIDEO design, we can access locally and get the following result.

http://127.0.0.1

Screen Shot 2016-02-09 at 18.32.49

The program has been designed based on information obtained from www.omdbapi.com from which we get the covers and information from each of the films.

And by clicking on any of the covers, we collect your information and a link to the video.

 

Screen Shot 2016-02-09 at 18.35.16

If we want to see the movie in full screen, we click on the symbol to the right of volume control.

Screen Shot 2016-02-09 at 18.35.29

TESTING FROM ALL PlayStation 4 browser.

These are screenshots Screen PlayStation 4.

Let the WEB BROWSER

and in the address bar we put the direction of your Apache server.

http://192.168.0.11

IMG_7748 copy

Click on any of the covers and access the details and link Video.

IMG_7749 copy

Click on the triangle representing the play and begin to see the film.

IMG_7751 copy

We can then access the full screen, with the symbol of the four arrows out.

IMG_7752

 

The photos do not do it justice, and my not being LED TV, it is complicated to take good pictures.

I leave a video on Youtube to see fluency.

 

 

 

 

CUAD COPTER CASERO

Tras mucho tiempo de pruebas y vacaciones, he decido publicar mi CUADCopter, realizado el chasis íntegramente en productos del LEROY MERLIN (Ferretería), en donde he comprador el material (aluminio) en varios formatos, planos y tubos cuadrados para refuerzos.

En las siguiente fotos observaremos la distribución de componentes y las dimensiones.

Mi CuadCopter lo he realizado en formato X (hay formato +, pero prefiero en formato X) de unas dimensiones de 40Cm entre hélice y hélice, y unos 15 centimetros de algo. Entre pie y pie tiene un poco mas, cerca de 50cm, pero prefiero medirlo entre hélice y hélice ya que esta es la medida que se usa en este campo.

He utilizado los siguientes componentes:
Motores TURNIGY D2822/17 de 1100KV o revoluciones por minuto para un balance entre estabilidad y fuerza. Cuanta mas revoluciones es mas fuerte y cuanto menos es mas estable.
Una placa controladora KKMulticopter con un microcontrolador Atmega168PA y tres giroscopios Murata PiezoElectricos para cada eje.
También he necesitado reguladores, en mi caso MISTERY de 30 Amp para estar relajados, solo se entibian un poco.
Las hélices utilizadas son de 8×4 (8045).
Y una LIPO de 2200 3S nos dará unos 15 minutos.
Utilizo un radio FLYSKY de 9 canales, modificada con modulo FR-SKY D8R-II, con doble comunicación y largo alcance, (el mismo utilizo para el avión y a llegado a mas de 700mtrs sin interferencias.

El firmware que he utilizado y mas me ha convencido, es el KKXCOPTER 1.1 pero estoy modificándolo para poder llegar a la estabilidad que deseo.
http://www.kkmulticopter.com/downloads/firmware/XCopterV1_1.zip

Aquí una imagen del CUAD entero. He puesto protecciones en la batería y el controlador.

NewImage
El motor TURNIGY D2822/17 1100KV
NewImage

La placa controladora KKMULTICOPTER v5 con microcontrolador AMTEL 168p y 3 giroscopios piezoeléctricos.

NewImage

El radio receptor un FRSKY R8D-II con telemetría y de largo alcance.

NewImage

El regulador, un Mystery de 30Amp para cada motor.

NewImage

EL motor va montado en el extremo de un tubo cuadrado de 8x8mm para ofrecerle dureza y buen apollo.
Ademas he incluido unas patas para soportar todo el peso, pero como terminaba en un peligroso filo de aluminio he decidido incluirles estas pelotas viejas de tenis, ayudando mucho a la suspensión y resistencia a golpes, además de protección para las hélices que son muy propensas a romperse.

NewImage

Todo el conjunto pesa cerca de 1,5Kilos y levanta muy bien, ahora me falta estabilizarlo un poco, modificando el código y así llevarlo mejor, he intentado levantarlo en una zona de seguridad, con una cortina protectora para que no se me dispare en altura y para poder tener algo mas de seguridad.

NewImage

OpenWrt para Comtrend ct53XX

Tras conseguir dos routers de telefónica “comtrend CT53XX” donados por mis padres, me encuentro con que no existe una versión de OPENWRT creada para dichos equipos, y la verdad que me he desilusionado, pero investigando un poco parece que, esta opción esta incluida dentro de los últimos códigos fuentes y eso me ha hecho muy feliz, ya que hoy puedo disfrutar en su totalidad de ambos routers.
No son muy “guachiguau” pero poseen un switch de 4 puertos 10/100 y una antena wifi, por lo que a mi respecta, es el perfecto repetidor wireless y con posibilidades de tener USB, en el caso del 5361… el segundo es nu 5365 que por defecto no trae esta posibilidad…

El 5361 posee soporte nativo de USB aunque no está instalado, ¿que quiero decir con esto???, que no le han puesto la electrónica que se necesita para conectar cualquier artilugio USB, pero el chip lo soporta… así que investigando un poco he encontrado el circuito que necesito y las conexiones para tal fin.

Lo primero fue compilar el código fuente del OPENWRT, esto es facil y practivo, mas que el mecanismo de un chupete… y con los siguientes pasos lo podras hacer vos tambien.

lo primero es conseguir todo lo necesario:
1º un equipo con linux, en mi caso UBUNTU
2º las herramientas de software necesarias para compilar:

3º los archivos fuentes de OPENWRT: en este punto podriamos elegir la distribucion, o solamente dedicarnos a modificar el codigo para desarrolladores o bien llamado “trunk”
creamos un directorio para tal efecto
mkdir openwrt-source

entramos en el directorio
cd openwrt-source

Solicitamos los archivos fuentes, utilizando la herramienta SVN
svn checkout svn://svn.openwrt.org/openwrt/trunk/

4º A continuación necesitamos verificar que la version y los paquetes llamados “feeds” estan actualizados e instalados, para esto hacemos:
cd trunk
./scripts/feeds update -a
./scripts/feeds install -a

Con esto tendremos los ultimos paquetes y opciones en nuestra fuente.

5ºEn este paso verificaremos que no nos faltan dependencias, ejecutando:
make defconfig
si nos aparece algun error solo debemos instalar el programa que necesite y listo, ¿como hacemos esto?

./scripts/feeds update packages luci
./scripts/feeds install -a -p luci
./scripts/feeds install

con esto por ejemplo instalaremos luci (si fuese necesario)

6ºPodremos ejecutar nuevamente “make defconfig” para verificar que todo esta correcto y pasar al momento de la configuración de nuestro fuente. Esto con el comando:
make menuconfig
en donde veremos una interfaz grafica para seleccionar el tipo de dispositivo y los paquetes que se necesitan.

en donde veremos dos diferentes opciones aplicadas con la tecla ENTER o con el ESPACIADOR:
<> esto significa que el paquete o modulo no se encuentra instalado
esto significa que el paquete será compilado como modulo y se alojará en la carpeta PACKAGES para ser instalado mas adelante (no se instala en nuestro firmware)
< *> esto significa que el paquete se instalará en nuestro firmware y ocupará espacio en el archivo base, esto tenemos que utilizarlo con mucho cuidado porque sino la imagen de firmware será muy grande y no cabra dentro de la memoria de nuestros routers. En este caso 4MB.

7º una vez que terminamos de agregar paquetes a nuestro frimware, debemos compilarlo y verificar que no aparezcan errores, esto lo hacemos con los siguientes comandos:

para compilar puro y duro, se hace con el comando “MAKE”, con el cual tenemos varias posibilidades a detallar.
$make world (compila sin opciones y se toma su tiempo)
$make -j 3 (en donde 3 es el numero de nucleos +1 de nuestro procesador “donde compilaremos, NO donde utilizaremos el firmware”)
$make -j 3 V=99 (con la opcion V activamos el “vervose” para ver cualquier mensaje de error de nuestra compilación, 99 es el valor máximo de información)

si queremos compilar solo un paquete la opción es:
$make package/feeds/packages/mc/compile
y por ultimo la opción mas utilizada por mi:
$make -j3 V=99 2>&1 | tee build.log | grep -i error
Esta opción permite compilar en segundo plano, guardando toda la info en un archivo de nombre build.log y solo informandonos en pantalla de los errores que puedan ocurrir.

también existe una opcion para que nos avise cuando termine, con un sonido, pero en mi caso que compilo en una maquina remota, no me es útil.
$make V=99 ; echo -e ‘\a’

8º Cuando termine de compilar “tras 1 o 2 horas, depende de nuestro ordenador”, encontraremos los archivos binarios dentro del directorio con el mismo nombre /trunk/bin
en donde encontraremos los paquetes convertidos a modulos y el firmware para ser aplicado, deberemos buscar el correspondiente a nuestra plataforma, en mi caso openwrt-ct-53xx

Si queremos compilar una version distinta y queremos limpiar todo para empezar de cero, tenemos la opción de:
$make clean (pero deberemos tener cuidado ya que si queremos conservar la version compilada deberemos moverla a otro directorio sino la perderemos.)

Bueno esto es todo, ya tenemos nuestro firmware para el comtrend, ahora para instalarlo lo único que debemos hacer es ingresar en modo rescate y seleccionarla, esto se realiza de la siguiente forma.
En la parte trasera tenemos un boton muy pequeño que es solo accesible utilizando un lapiz o destornillador, necesitamos encender el router con este boton de reset presionado, y mantenerlo durante unos 15 segundos, hasta que veamos que se apaga la luz de power.
tras esto podremos acceder al webserver de rescate en la dirección 192.168.1.1, seleccionaremos el firmware y listo, en 2 minutos tendremos nuestro comtrend con OPENWRT.


Para descargar el firmware aqui tienes el link
http://www.megaupload.com/?d=19MY4YC0


Unetbootin Crear liveCD en una llave USB

Una nueva aplicación no tan nueva, para quienes quieran realizar un LIVE-USB o en palabras de terrestre, convertir una llave usb en un live cd de Linux, con la posibilidad de bootear desde la llave en cualquier ordenador (que posea la posibilidad de iniciar vía USB, en la actualidad casi todos los ordenadores).

Esto nos puede ayudar con tareas tales como, reparar una instalación antigua de Linux, instalar Linux desde la llave en cualquier ordenador, o simplemente probar Linux sin necesidad de instalarlo en nuestro ordenador…. Lo que tú quieras hacer con el… yo te doy la herramienta luego úsala a tu gusto.

Básicamente solo se elije la distribución que se desee y luego la llave donde instalarlo, esto lo que hace es buscar en internet la última actualización de dicha versión seleccionada, la descarga y la instala en la llave, otra posibilidad es la de una vez con la imagen del live-cd de Linux, (quizás una versión modificada por cada uno) o una imagen ya descargada que tengamos en nuestro disco y así no tener que esperar su descarga.

Cabe aclarar que es totalmente libre y existen dos versiones una para Windows y la otra para Linux. (No instalables, ejecutables desde su descarga), link del programa y link de descarga windows


Mi perfil de Google Plus

Visitas

Mis FOTOS

[slickr-flickr]