lunes, 28 de marzo de 2016

Flashear Samsung S5 (G900H) Exynos desde Archlinux con VM

Bueno papilos, luego de una linda experiencia con Linux (en éste caso Arch, no probé en otra distribución para ser sincero), voy a explicarles como logré flashear un dispositivo Samsung S5 (G900H) Exynos.

Comencemos!


Requisitos:

* Vamos a necesitar también yaourt, asi que en el caso que no sepan cómo instalarlo por favor visiten éste link. (colocar link de pasos de instalación)


Instalación:

1 - Vamos a descargar los siguientes paquetes:

pacman -S virtualbox virtualbox-host-dkms gvfs gvfs-mtp

y de yaourt:

yaourt -S virtualbox-ext-oracle



2 - Ejecutamos Oracle VM Virtualbox y lo vamos a configurar de ésta manera (las opciones NO nombradas no las toqué, dejé todo default, si quieren pueden colocar la cantidad de procesadores, ram, etc, éso si coloquen lo que tienen en sus equipos):

- Archivo > Preferencias > Extenciones > y corroborar que esté activado Oracle VM Virtualbox Extension Pack. Aceptamos y salimos.



- Ahora vamos a Agregar nuestro usuario al grupo vboxusers, vamos a la tty y escribimos lo siguiente:

sudo gpasswd -a ice vboxusers

NOTA: ice = es mi usuario, en ése caso ustedes deben colocar el nombre de su usuario.

- Clic en Configuración > USB > Tildamos Habilitar controlador USB > Seleccionar Controlador USB 2.0 (EHCI).
- Ahora vamos a apagar el teléfono y lo colocamos en modo Download (lo dejamos como si ya lo conectáramos a Odin) y conectamos a la pc. Luego hacen clic en Agregar un nuevo filtro y les aparecerá: Samsung Gadget Serial [021B]. Lo agregamos.
NOTA: En el caso que no les aparezca nada, reincian la pc y prueban de nuevo.
- Ahora van a encender el teléfono y lo conectan como si fueran a copiar información de la pc al teléfono o al revés. (MTP) y repiten lo mismo Agregar un nuevo filtro y aparecerá Samsung_Android [0400]. Bién tocan en el botón aceptar e inician el sistema operativo (Windows10).



3 - Una vez instalados los paquetes, van a instalar Windows 10 (de 32 bits). No hace falta que instalen los paquetes de actualización. También van a instalar los Drivers USB de Samsung que les dejo aquí un link de mi dropbox y también van a usar la última versión de Odin que también se las dejo aquí. Terminado de instalar drivers reincian windows, conectan el teléfono en modo download y debería reconocerlo correctamente el sisitema.

4 - Bueno ahora descomprimen el firmware descargado de Android 5.0, en mi caso es ARO-G900HXXS1BPC9. (Gracias briann_cs por el link de mega).
Una vez que tengan el firmware en .tar.md5 lo colocan en dónde dice AP y le dan a Start.



5 - Esperan que termine el proceso son unos 10 minutos tal vez menos, depende la pc que tengan, se reiniciará el teléfono y comenzará a actualizar los paquetes. Una vez que termine ya tendrán su S5 Exynos flasheado con el último firmware disponible y desde LINUX!!!

Espero que la guía les haya servido ésta guía y puedan dejar de usar Windows en una opartición ocupado espacio al pedo! :)


¿Qué usé?
* Distribución: Archlinux 2016.03.01
* Versión de Virtualbox: 5.0.16-3
* Móvil: Samsung S5 Exynos con Android 5. (Sirve para versiones anteriores, en el caso que no puedan con versiones anterior como KitKat, les de aquí las versiones más antiguas).

domingo, 27 de marzo de 2016

Conocer tu IP pública desde la Terminal

Sencillo míni How-To de como conocer o mirar tu IP pública desde linux, sin usar el navegador para recurrir a las típicas páginas que hay.
En éste casoy voy a usar Archlinux, pero es válido para otras versiones de Linux también.

1 - Primero revisamos que tengamos instalado "curl" así:

pacman -Ss curl o pacman -Q curl



2 - En caso de no tenerlo, lo instalamos:

pacman -S curl


En el caso de mi screen, ya lo tengo instalado, ustedes le dan Y y lo instalan. :D


3 - Ahora lo ejecutamos ya sea como usuario normal o root de la siguiente manera:

curl ifconfig.me



4 - Así de sencillo vieron?

Bueno espero que les sirva a los curiosos que les da pereza abrir el navegador para ver sus ip.

Agrego:

También pueden obtener la ip pública con wget de ésta manera:

wget -qO- icanhazip.com


Si quieren mirar el video en YouTube ya que muestro otra manera de conocer tu IP pública usando wget también lo pueden hacer aquí:



Abrazo de gol!

jueves, 24 de marzo de 2016

Solucion al Error: "Failed Load Kernel Modules"

Bueno papilos, vengo a dejar un mini tutorial, con respecto a un inconveniente que me venia sucediendo con virtualbox, cuando instale virtualbox instalé varias cosas de guest, y eso me traía el clásico error en el inicio del sistema: "Failed Load Kernel Modules".
Asi que ahora mostraré lo simple que era la solución!

1 - reviso que desde systemctl cuál es el inconveniente escribiendo en la tty:
systemctl status systemd-modules-load.service



2 - Lo que se me ocurre es fijarme si instalé el paquete virtualbox-guest-dkms y virtualbox-guest-utils así:
pacman -Ss virtualbox



3 - Teniendo en cuenta ésto, lo que sucede es que se genera un error ya que también tenemos instalado virtualbox-host-dkms, entonces que hacemos? los desintalamos a los paquetes "guest" así:

pacman -Rsc virtualbox-guest-dkms virtualbox-guest-utils



4 - Ahora vamos a re-instalar los paquetes virtualbox y virtualbox-host-dkms



5 - Veremos que si hacemos ls /usr/lib/modules-load.d/ ahora aparecerá el archivo "virtualbox-host-dkms.conf" que antes no aparecía.
Asi que sólo debemos reiniciar el servicio de systemd-modules-load.service de ésta manera:

systemctl restart systemd-modules-load.service

y luego chequeamos como quedó sin errores ahora con:

systemctl status systemd-modules-load.service



6 - Listo!

Nota: Éste es sólo un caso de lo que me sucedió a mi, con éste inconveniente en particular, algunas veces se puede deber a otro tipo de casuística, pero siempre podemos ver que sucede con los servicios que se inician con systemctl. Recuerden que tienen una guía muy completa aquí.

Espero que les haya servido y nos vemos la próxima!

Abrazo de gol!

domingo, 13 de marzo de 2016

Instalar LAMP en Arch y derivadas

Bueno papilos hoy hago éste tutorial de como instalar un servidor web en nuestro equipo.
Ésto más que nada sirve para practicar, tal vez administrar algo muy pequeño, sólo dejaré una configuración básica, de acuerdo a la máquina que tengamos y el acceso a internet.


 Qué es LAMP?
 LAMP es el acrónimo usado para describir un sistema de infraestructura de internet que usa las siguientes herramientas:
Linux, el sistema operativo; En algunos casos también se refiere a LDAP.
Apache, el servidor web;
MySQL/MariaDB, el gestor de bases de datos;
Perl, PHP, o Python, los lenguajes de programación.

La combinación de estas tecnologías es usada principalmente para definir la infraestructura de un servidor web, utilizando un paradigma de programación para el desarrollo.


Archivos que vamos a utilizar:

*Apache: /etc/httpd/conf/httpd.conf
*PHP: /etc/php/php.ini
*MySQL/MariaDB: /etc/mysql/my.cnf


Instalación de los paquetes necesarios:

Apache: pacman -S apache




Base de Datos: pacman -S mariadb


Base de datos Opcional método gráfico : pacman -S mysql-workbench


PHP: pacman -S php php-apache



Configuración de Apache:

- Una vez instalado el paquete apache prácticamente ya se encuentra listo para ser usado, pero obviamente tenemos el archivo de configuración httpd.conf que se encuentra en el directorio: /etc/httpd/conf/
- En éste caso usaré la configuración default, pero en otro momento veremos que más podemos hacer con apache, ya que me resultó cómodo, asi que los archivos HTML se encuentran en el directorio /srv/http.
- Asi que vamos hasta dicho directorio y vamos a crear un archivo .html con el siguiente código dentro:

<html>
  <head>
    <title>Bienvenido a Apache!</title>
  </head>
    <body>
      <h2>Funcionando correctamente!</h2>
    </body>
</html>



- Lo guardamos con el nombre index.html y para corroborar que quedó funcionando el server apache, vamos a iniciar el servicio httpd de la siguiente manera (como root):

systemctl start httpd.service

- Abrimos el navegador y escribimos: http://127.0.0.1 o http://localhost y voila!

- Ahora en el caso que quieran que inicie justo a la pc escribimos:

systemctl enable httpd.service

- Y listo! el servicio httpd iniciará con el sistema cada vez que enciendan el equipo.


Configuración de mariadb:

- Antes de utilizar el script de instalación de mariadb, vamos a setear la base de datos de ésta manera:

mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql (Wiki link: https://wiki.archlinux.org/index.php/MySQL)

- Luego ejecutamos el script de instalación: mysql_secure_installation y vamos siguiendo los pasos y configurando lo que necesitamos.

- Luego de haber finalizado el script podemos crear un usuario y darle todos los privilegios de la siguiente manera:

* Recuerda colocar el password que colocaste cuando configuraste el script.


- Listo! Ya queda configurada mariadb con un usuario agregado con todos los privilegios.


Configuración de PHP:

- Ahora lo que vamos hacer es configurar Apache junto a PHP. Es una configuración básica, pero como dije más arriba, es para practicar, luego ustedes pueden ir personalizando lo que necesiten.

- Vamos a editar el archivo /etc/httpd/conf/httpd.conf y vamos a comentar la línea:


#LoadModule mpm_event_module modules/mod_mpm_event.so <- quedando de ésa forma con el "#" delante.

Y vamos a agregar la línea:
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so debajo.

- Ahora vamos a buscar dentro del mismo archivo la línea:
LoadModule dir_module modules/mod_dir.so

y debajo de ésa agregamos la siguiente:
LoadModule php7_module modules/libphp7.so

- Nos fijamos que se encuentre la línea:
Include conf/extra/php7_module.conf

- También vamos a decirle a PHP que usamos mysql también asi que vamos a editar el archivo php.ini que se encuentra en /etc/php y descomentamos la línea eliminando el ";" que se encuentra delante:

extension=mysqli.so



Guardamos y salimos.

- Y finalmente vamos a crear un archivo por ejemplo:
info.php y agregamos ésta líena dentro del mismo:

<?php phpinfo(); ?>

- Guardamos los cambios, ejecutamos: systemctl restart httpd

- Abrimos navegador e ingresamos a: localhost/info.php





- En el caso de que no se visualice nada, vamos a editar nuevamente el archivo httpd.conf y vamos a la parte de "AddType" y aquí vamos a descomentar un addtype y colcamos éste: AddType application/x-httpd-php .php

Quedando así:




- Finalmente reiniciamos los servicios:

systemctl restart httpd
systemctl restart mysqld

- Listo!

Recuerden que los comandos systemctl se pueden usar así:

* Ejecutar inmediatamente: systemctl start httpd
* Detener inmediatamente: systemctl stop httpd
* Ejecutar al inicio del sistema: systemctl enable httpd
* Deshabilitar el servicio del inicio: systemctl disable httpd
* Visualizar estado del servicio: systemctl status httpd (ésto nos da un parámetro genial para ver si tenemos algún error para darnos idea como solucionarlo).


Espero que les sirva y que tengan una linda experiencia!

Abrazo de gol!

viernes, 11 de marzo de 2016

Eliminar paquetes huérfanos en Arch

Seguramente habrá miles de documentos en internet mostrando como eliminar los paquetes huérfanos en arch, pero es un bajón andar buscando aquí, allá, arriba, abajo, tipo fatality de MK, asi que yo dejo aquí como eliminarlos en algo que ni siquiera es un mini tutorial, sinó más que nada un little how-to, asi que ahí voy!

Abrimos una terminal y escribimos:
sudo pacman -Rsc $(pacman -Qtdq)




Para los que no saben ahí va en más detalle:

pacman -Rsc:
-R: elimina el paquete del sistema.
-c: elimina los paquetes y los que dependen del mismo.
-s: elimina todos los paquetes y sus dependencias siempre que no sean requeridos por otros paquetes que si están siendo usados en nuestro sistema.

pacman -Qtdq:
-Q busca los paquetes en nuestra base de datos.
-t: filtra la salida de los paquetes que no son necesarios.
-d: filtra la salida de los paquetes instalados como dependencias.
-q: mostrará menos información de lo habitual.

Ésto también se puede utilizar en un script como lo harían en sistemas debian con la opción: apt-get autoremove --purge, que eliminaría los paquetes huérfanos y además los archivos de configuración de dichos paquetes.

VideoTutorial:




Nos vemos en la próxima... Abrazo de gol!