Refosco Ingeniería Informática

Refosco Ingeniería Informática
Rivadavia 877 CP 3306 Oberá Mnes. Te 03755 406060

viernes, 6 de abril de 2012

Instalar OpenWRT en TP-LINK TL-WR1043ND

Hola, resulta que en mi casa no se usaba mucho la conexiòn ADSL durante la semana, pensé en dejar bajando algunas cosas, pero no quería que quede prendida todo el tiempo la PC, por eso me puse en campaña para ver como podía solucionar esto. El esquema que encontré que me podía servir es:
Modem conectado a TP-LINK TL-WR1043ND, y este con un disco USB Externo.
El Router TP-LINK TL-WR1043ND tiene un conector USB , con algunas utilidades como para compartir en la Red la unidad conectada al puerto USB, pero no era lo que quería, yo no quería comparir , si no mas bien utilizar como una unidad local de disco del Router y que este descargue el archivo sobre esta unidad.
Para ello es necesario cambiar el Firmware original que trae el TP-LINK TL-WR1043ND y poner otro llamado OpenWRT que es un GNU/Linux modificado para poder ser instalado en algunos equips ( embebidos).
Ver para mas detalle: wiki.openwrt.org
Entonces para proceder a instalar el Firmaware correspondiente  vamos a  ver la lista de hardware soportado: wiki.openwrt.org/toh/start , en esta pagina podemos buscar el equipo ubicando la marca, TP_link para nuestro caso, esto nos lleva a la sección de TP-Link , ubicamos el modelo en cusetión  WR1043ND, en la sección de instalación nos dice como obtener el Firmware correspondiente a la ultima versión.
Una vez descargado el mismo podemos actualizar , para ello abrimos la interfaz web de nuestro routrer escribiendo en el navegador: http://192.168.1.1, en la sección System Tools -> Frimware Upgrade.

 
 Con Browser , buscamos el archivo que bajamos de la pagina de OpenWRT y le damos Upgrade.
Observaciones:
1) Estar 100% seguro que el archivo descargado corresponde al hardware.
2) No apagar o desconectar la energía mientras durar el proceso de actualización de Firmware.
Una vez terminada el upgrade, si todo va bien veríamos algo como:

 
Haciendo click en el botton de login ingresaríamos al la interfaz web del OpenWRT que se vería algo así como:



Luego de esto, lo que hice fué asegurarme que el servicio ssh brindado por OpenWRT estubiera activo , para ello en System->Administration habilitamos el mismo de manera que quede:


Con esto podremos acceder en modo consola o terminal al OpenWTR, con ssh o putty ( para el caso de Windows , por ejemplo).
Ahora accedemos a la consola de OpenWRT , con ssh root@192.168.1.1 desde una terminal de GNU/linux  o desde Windows con el Putty.



Los  pasos son instalar el cliente de transsmission y los elementos que me permitan controlar el forma remota la descarga hacia el dispositivo selecccionado son indicados en en el Tutorial. de OpenWRT sobre instalación de Transmission.
Para ello instalamos:
transmission-daemon, transmission-cli transmission-web transmission-remote
Desde la misma consola editamos /etc/config/transmission con el vi  o vim , por ejemplo ( consejo : como estos  no tiene entorno gráfico conviene , leerse alguna guia sobre el mismo, hay varias en internet).
En este archivo modificamos la línea: option enabled 1, en mi caso tenía option enabled 0, es la primer línea y es la que permirte habilitar el acceso via Web al Servicio de Transmission.
Luego reiniciamos el servicio /etc/init.d/transmission restart , para que las modificaciones en el archivo anterior sean tomadas y listo podemos acceder a la interface web, la cual se verá mas o menos así:


Podemos ver que el servicio de Transmission se etiende en el puerto 9091, tal cual se indica en la línea de /etc/config/transmission ->option rpc_port 9091.
Bueno lo que resta ahora es montar la unidad usb externa en el Openwrt, para ello tenemos que instalar o ver que estén instalados algunos módulos que me permitirán detectar la unidad USB , para luego montarla.
Para ver los módulos instalados vamos a  System->Software y en la parte inferior observamos los paquetes instalados:





 En mi caso probé con kmod-fs-ntfs, pero en la pagina de OpenWRT, no lo recomienda, y por otro lado no podía hacer que se montara el disco USB como rw, así  que hice la mas practica, redimensioné el disco y creé una partición EXT3,  instalé  kmod-fs-ext3 para poder ver el contenido del disco
    kmod-usb-core  ( este en mi caso lo tenía instalado)
    kmod-usb2 (en caso de que nuestro router tenga usb 2.0) ( este en mi caso lo tenía instalado)
    kmod-usb-uhci (en caso de que nuestro router tenga usb 1.1, especificación uhci)
    kmod-usb-ohci (en caso de que nuestro router tenga usb 1.1, especificación ohci)( este en mi caso lo tenía instalado)
    kmod-usb-storage
    usbutils
    block-mount
    block-hotplug
Luego cree el directorio /mnt/usbdisk y modifique el /etc/config/fstab para que lo monte siempre a la partición ext3 /dev/sda2 en /mnt/usbdisk, también modifiqué la opción de directorio de descarga de trasmission ( /etc/config/transmission) para que las descargas vayan a para a /mnt/usbdisk.
Luego de esto abrí la interfaz web de transmissión:


La damos click en Open y apuntamos al archivo bittorren y luego Upload, a partirt de allí la descarga comienza a almacenarse en el directorio seleccionado: /mnt/usbdisk, por supuesto como la partición era ext3 desde línux se vería sin inconvenientes.. desde Windows seguramente trabajar un poco.
Bueno espero que sea de ayuda.. .desde ya gracias por los comentarios o calificaciones.

jueves, 29 de marzo de 2012

Sincronizar Discos

Hace un tiempo tube que duplicar unos discos y me encontré que el comando dd encajaba como anillo al dedo, pero en esta ocación la situación es distinta y este comando tan util es esa ocación , no me servía, paso a comentar el escenario:
Tengo un Debian corriendo (/dev/sda), y tengo montado un otro disco (/dev/sdb) en un directorio /mnt/bkp del Servidor.
La idea es hacer un backup, pero con el comando dd, se copia todo el disco, para esta ocación eso no era eficiente, ya que solo cambiaban algunos archivos del disco (/dev/sda) y no tenía sentido copiar el contenido entero, a eso me refería con que no era eficiente.
Encontré que rsync es mas efectivo, para este caso, me permite mantener actualizado un backup, eligiendo los parámetros adecuados es posible solo copiar los archivos que se modifican ( esto es lo que pareció interesante) , de esta manera se puede ahorar bastante tiempo , al evitar copiar archivos que no han cambiado.
La sintaxis básica sería:
rsync opcion/es origen destino
Para ver los parámetros basta con hacer solo un man rsync, y en caso de que no tengan instalado el rsync, bastaría con un ejecutar como root:
apt-get install rsync
Algunas opciones que me interesa en esta situación: 
-u: actualizar. Si en el destino hay un archivo con una fecha de edición posterio al que queremos copiar, no lo sobreescribe. Esto puede dar problemas de actualización si se utiliza y sincroniza el dispositico con más de una fuente. 
-r: recursivo. Actualiza todo, desde el directorio principal que le damos, por todos sus subdirectorios hacia abajo.-p: mantiene los atributos de permisos del archivo copiado. Si se va a utilizar tambien en sistemas Linux es conveniente añadir tambien las opciones -o (de owner) y -g (de group), para mantener los atributos completos de los archivos.
-t: mantiene los atributos de tiempo de modificación del archivo copiado.
-P: progreso. Con cada archivo que copia o actualiza, muestra una barra de porcentaje durante el proceso. Es más util para transferencias por red.
-h: escribe los datos por pantalla más amigables (en Kbs, Mb, etc…). Combiar siempre con más opciones porque suelto muestra la ayuda.
–logfile: ruta al archivo de log donde se escribirán las acciones que se vayan realizando.
–stats: estadisticas. Al terminar la actualización presenta un pequeño resumen de actividad (archivos copiados, tiempos empleados, tamaño total de arcvhvos actualizados, etc…) 
–exclude:  Excluye patrones de archivos que concuerden con PATTERN


En mi caso debía usar si o si la opción --exclude , -r por lo menos la primera vez , por que el directorio de destino /mnt/bkp estaba incluido en / , así que para que no se haga algo recursivo, escribiré la opción --exlcude /mnt/bkp.


Un detalle importante es la barra final del path “/” que SI aparece en la ruta de origen, pero que NO debe aparecer en la ruta de destino. Si la dejamos en origen y en destino, rsync sincronizará todo el directorio de origen en el directorio de destino, haciendo una copia del directorio dentro del destino.
Ejemplo:
“/dev/sda/”   “dev/sdb/” NO!!
 “/dev/sda/”   “/dev/sdb”  SI!!

La sintaxis finalmente en mi caso quedaba:
rsync -r  -exclude=/mnt/bkp  /dev/sda/  /dev/sdb

Con esto sería suficiente para un backup, pero , el disco /dev/sdb no bootearía, por que existe lo que se conoce como UUID, Identificador universalmente único (universally unique identifier ), y el UUID del disco difiere del que figura en /etc/fstab por tal motivo debemos, ver el UUID del disco /dev/sdb, para ello hacemos desde la línea de comando:
ls -l /dev/disk/by-uuid
Aqui veremos el UUID de la unidad en cuestión , luego editamos  el /etc/fstab usando el UUID de mi nueva partición raíz.
Recordemos que hay que instalar el Grub o si ya lo teníamos instalado 
deberíamos, modificar  es el /boot/grub/menu.lst para cambiar los UUID y la partición raíz, para ello primero se debería saber que versión grub se tiene  ( 2 o 3)ya que cambia la forma de hacer las modificaciones.
Espero que sea de ayuda.

lunes, 19 de marzo de 2012

"La Biblioteca Libre online que estabas esperando"

Recibí un mail con un link este sitio, que tiene como su
slogan lo dice :

"La Biblioteca Libre online que estabas esperando"

http://www.etnassoft.com/biblioteca/

Espero que sea de utilidad

viernes, 9 de diciembre de 2011

Booteo Windows 7 en Debian Squezze

Tenía una PC con W7, y se me dió por instalar Debian.
Al finalizar en el menú del booteo no estaba la opción de bootear W7, así que me puse a buscar.. ya que tiene grub 2 , y no es como  antes que podías meter dedo  en menu.lst.
Lo que encontré mas facil fue:
1- Hacer bkp de /etc/grub.d
2-Ejecutar como root update-grub2.

Y listo quedó funcionando.