Unknown's avatar

About hvivani

Systems Engineer, Developer, Technical Leader, IT Manager

Un buscador Libre, descentralizado y sin censura


Hace unos días estuve buscando un buscador, valga la redundancia, que me mostrara mas resultados de búsqueda que lo que normalmente muestra Google. Es decir, Google, por defecto, filtra resultados y para evitar estos filtros hay que modificar las preferencias de búsqueda.

Resulta que me encontré con YaCy. Un buscador libre con licencia GPL, que es en sí mismo un motor de búsqueda que puede trabajar en dos modos, privado, para indexar una red privada o peer2peer para indexar con el resto de los pares la información. De esta manera no hay un servidor centralizado gestionando las búsquedas, cada cliente (peer) puede indexar la red.

Al ser una red p2p, los resultados no pueden ser censurados y el motor de búsqueda es de la comunidad.

La instalación en Fedora es muy simple:

Descargamos y descomprimimos:

$ wget http://yacy.net/release/yacy_v1.01_20111207_9000.tar.gz

$ tar -zxvf yacy_v1.01_20111207_9000.tar.gz

Ejecutamos YaCy:

$ cd yacy
./startYACY.sh

Luego, bastará con navegar a la dirección: http://localhost:8090 y listo.

También hay una versión para Window$.

 

Tormentas Solares y Sistemas


Alguien podrá decir: que tienen que ver las tormentas solares con las computadoras ? Hoy en día mucho !

Todo tienen relación con todo, mas aún cuando las tormentas solares están relacionadas con los campos magnéticos y esto influye en cualquier sistema eléctrico en general, inclusive los que se encuentran en la tierra.

Resulta que el Sol, es una estrella que se encuentra en el centro del sistema solar y constituye la mayor fuente de energía electromagnética de nuestro sistema planetario. Tiene una distancia promedio a nuestro planeta de 149.600.000 Km… sabías que la luz del Sol tarda 8 minutos y 19 segundos en llegar a la Tierra ? Si de repente se apagara… tardaríamos 8 minutos en enterarnos de la noticia…

La cuestión es que las tormentas solares son generadas por las CME’s (Coronal Mass Ejection) o llamaradas de la superficie solar que generan radiación y viento solar que expulsa el sol en los períodos llamados Solar Max o Maximo Solar.

Cada 11 años, el Sol entra en un ciclo donde predominan las CME, generando tormentas solares. Este ciclo termina con el cambio de polaridad solar, es decir, intercambia de lugar sus polos magnéticos.

En este momento, nuestro Sol está terminando uno de estos ciclos.

Cuando esta radiación y viento solar impactan en nuestra atmósfera sacuden el campo magnético de la tierra, generando corrientes eléctricas hasta la superficie del planeta que dañan los circuítos eléctricos, transformadores y sistemas de comunicación.

De la misma manera, los satélites que orbitan nuestro planeta pueden verse inutilizados temporatiamente o permanentemente dependiendo del tipo impacto.

Hoy en día, donde dependemos en gran medida de la electrónica y la electricidad, tenemos que tener conocimiento de estos fenómenos, dado que pueden provocar el corte de suministro eléctrico, la pérdida de señal en celulares y GPS’s y muchos otros trastornos relacionados con el mal funcionamiento de los equipos electrónicos y eléctricos.

En SpaceWeather podemos mantenernos actualizados respecto del estado y pronóstico de las tormentas solares.

 

Formateando un pendrive con mkfs


Formatear un pendrive con compatibilidad con sistemas de archivos FAT (Windows) es tan simple como ejecutar un solo comando de la forma:

mkfs.vfat -n <etiqueta> <dispositivo>

por ejemplo:

$ sudo mkfs.vfat -n kingston /dev/sdb1

Ahora bien, el pendrive debe estar desmontado al momento de formatear, asi que para saber que dispositivo es el que debemos formatear, antes de desmontar hacemos un

$ sudo fdisk -l

o un

dmesg | tail

para ver con que nombre está montado.

 

 

 

 

Creando un Live USB con livecd-iso-to-disk.sh


Vamos a crear un live usb booteable utilizando una imágen de Linux, de por ejemplo algún cd de rescate.

Esta es una herramienta útil en cualquier momento para salvar algún servidor o hacer una instalación por red.

OJO: supongo que el pendrive está vacío. De otro modo, tomar los recaudos necesarios.

Para esto primero descargamos el script livecd-iso-to-disk.sh que es el que realizará el trabajo de instalación de la imágen al usb.

Necesitaremos el archivo imágen de linux a instalar previamente descargado. yo voy a utilzar una de Fedora 7 Rescue.

Necesitamos tener instalado syslinux, si no lo tenemos:

$ sudo yum install syslinux

Debemos tener marcada la partición del usb como booteable, si no es así, la modificamos con fdisk:

$ sudo fdisk /dev/sdc

Orden (m para obtener ayuda): p

Disco /dev/sdc: 1940 MB, 1940226048 bytes
16 heads, 32 sectors/track, 7401 cylinders, 3789504 sectores en total
Units = sectores of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificador del disco: 0xc3072e18

Disposit. Inicio    Comienzo      Fin      Bloques  Id  Sistema
/dev/sdc1            8064     3789503     1890720    6  FAT16

Orden (m para obtener ayuda): h
h: orden desconocida
Orden  Acción
   a   Conmuta el indicador de iniciable
   b   Modifica la etiqueta de disco bsd
   c   Conmuta el indicador de compatibilidad con DOS
   d   Suprime una partición
   l   Lista los tipos de particiones conocidos
   m   Imprime este menú
   n   Añade una nueva partición
   o   Crea una nueva tabla de particiones DOS vacía
   p   Imprime la tabla de particiones
   q   Sale sin guardar los cambios
   s   Crea una nueva etiqueta de disco Sun
   t   Cambia el identificador de sistema de una partición
   u   Cambia las unidades de visualización/entrada
   v   Verifica la tabla de particiones
   w   Escribe la tabla en el disco y sale
   x   Funciones adicionales (sólo para usuarios avanzados)

Orden (m para obtener ayuda): a
Número de partición (1-4): 1

Orden (m para obtener ayuda): p

Disco /dev/sdc: 1940 MB, 1940226048 bytes
16 heads, 32 sectors/track, 7401 cylinders, 3789504 sectores en total
Units = sectores of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificador del disco: 0xc3072e18

Disposit. Inicio    Comienzo      Fin      Bloques  Id  Sistema
/dev/sdc1   *        8064     3789503     1890720    6  FAT16

Orden (m para obtener ayuda): w
¡Se ha modificado la tabla de particiones!

Llamando a ioctl() para volver a leer la tabla de particiones.
Se están sincronizando los discos.

Ahora procedemos a ejecutar el script pasandole como parámetros la imágen a instalar y la partición del usb donde debe instalarse:

OJO: Desmontar el pendrive antes de ejecutar.

$ su -c "./tools_livecd-iso-to-disk.sh --format --reset-mbr Fedora7-i386-rescuecd.iso /dev/sdc1"
Contraseña:
Verifying image...
./tools_livecd-iso-to-disk.sh: línea 806: checkisomd5: no se encontró la orden
Are you SURE you want to continue?
Press Enter to continue or ctrl-c to abort

/home/hvivani/TMP/Fedora7-i386-rescuecd.iso uses initrd.img w/o install.img
Copying DVD image to target device.
Updating boot config file
Installing boot loader
Target device is now set up with a Live image!

Listo !

 

 

 

Permitir el tráfico a un solo sitio con squid


Supongamos que en un equipo o puesto de trabajo debemos habilitar la navegación pero solo para un sitio en particular. Es decir, queremos que pueda acceder solo a un sitio determinado y no que navegue por toda internet.

Una situación así la podemos resolver facilmente si utilizamos squid proxy para controlar la navegación en nuestra red.

Por ejemplo, tenemos un punto de venta que  que solo debe poder acceder a validar cupones en validargroupon.com.

Las reglas serían así:

acl PuntoDeVenta src 192.168.28.9/255.255.255.255
acl Groupon dstdomain www.validargroupon.com

http_access allow Groupon PuntoDeVenta
http_access deny all

Con esto, este equipo solo podrá navegar dicha página.

 

 

Firefox: eliminar nombre de usuario mal almacenado


En firefox, por defecto, los nombres de usuario solicitados por diferentes portales, serán almacenados automáticamente. Eso ocasiona que si  ponemos mal el nombre, se vayan almacenando o guardando de manera errónea y cuando volvemos al sitio, se ve la lista de nombres de usuarios utilizados.

Lo mas peligroso es si lo que quedó mal almacenado es la password del usuario como nombre de usuario, como por ejemplo:

Dado que varios usuarios me han preguntado como eliminar estos usuarios y la solución no es tan intuitiva como debería, esta es una solución al problema: bajando con el teclado numérico al nombre de usuario que queremos eliminar y presionando la tecla delete o suprimir.

Instalando htop 1.0


Este es mi humilde homenaje a esta extraordinaria herramienta de monitoreo de procesos que hoy está lanzando su versión 1.0. Si han utilizado el comando top y aún no han probado el htop, a partir de que lo instalen van a arrepentirse del tiempo perdido… hasta ahora.

Este es uno de mis servidores con sus ocho nucleos corriendo, visto por el htop:

Podemos descargar los fuentes de htop o actualizar via yum utilizando los repos de fedora-extras.
Dado que los rpm’s de la versión 1.0 aún no están disponibles vamos a instalar desde los fuentes:

Descargamos:

$ wget http://ufpr.dl.sourceforge.net/project/htop/htop/1.0/htop-1.0.tar.gz

Descomprimimos:

$ tar -zxvf htop-1.0.tar.gz

Compilamos e instalamos:

$ cd htop-1.0
$ ./configure
$ make
$ su -c "make install"

Si antes teníamos instalado el htop por rpm podemos desinstalarlo haciendo un

rpm -q htop

y luego

rpm -e nombredelpaquete

Recuerden que htop muestra todos los atajos de teclado con la techa ‘h’.

Instalar Firefox 8 en Fedora / RHEL / CentOS


En este post vamos paso a paso como instalar Firefox 8 en Fedora 12, 13, 14, 15 o 16 utilizando YUM. También es aplicable a CentOS 6 y RHEL 6. Los usuarios de Fedora 15 y 16 van a tener disponible esta versión de Firefox en los repositorios update, pero los usuarios de versiones anteriores van a tener que recurrir a otros repositorios como el remi.

1) Instalamos repositorios remi:

Fedora:

## Dependencia Remi en Fedora 14, Fedora 13, Fedora 12 ##
# rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
# rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

## Fedora 14 ##
# rpm -Uvh http://rpms.famillecollet.com/remi-release-14.rpm

## Fedora 13 ##
# rpm -Uvh http://rpms.famillecollet.com/remi-release-13.rpm

## Fedora 12 ##
# rpm -Uvh http://rpms.famillecollet.com/remi-release-12.rpm

CentOS / RHEL:

## Dependencia Remi en CentOS 6 y Red Hat (RHEL) 6 ##
rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/i386/epel-release-6-5.noarch.rpm

## CentOS 6 y Red Hat (RHEL) 6 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

2) Listamos versiones disponibles:

Fedora 15/16:

# yum --enablerepo=updates-testing list firefox

Fedora 12,13,14, CentOS, RHEL:

# yum --enablerepo=remi list firefox

3) Actualizamos o instalamos:

Fedora 15/16:

# yum --enablerepo=updates-testing update firefox
## OR ##
# yum --enablerepo=updates-testing install firefox

Fedora 12,13,14, CentOS, RHEL:

# yum --enablerepo=remi update firefox
## OR ##
# yum --enablerepo=remi install firefox

4) Iniciamos firefox:

$ firefox

Creando paquetes RPMs


Este es un breve resumen de lo básico e indispensable para crear paquetes rpm en fedora.

Instalamos entorno de desarrollo:

# yum install @development-tools
# yum install fedora-packager

Creamos estructura de directorio de trabajo para los RPMs:

$ rpmdev-setuptree

EJEMPLO: Creamos el RPM “hola mundo”:

Necesitamos el codigo fuente que vamos a empaquetar, tambien llamado codigo upstream. En este ejemplo lo descargamos en el directorio SOURCE directamente como tar.gz

$ cd ~/rpmbuild/SOURCES
$ wget http://ftp.gnu.org/gnu/hello/hello-2.7.tar.xz

Los paquetes RPM se configuran a través de los archivos .spec. Entonces creamos una plantilla para nuestro programa en el directorio SPECS:

$ cd ~/rpmbuild/SPECS
$ rpmdev-newspec hello

Editamos el hello.spec

vi hello.spec

Un ejemplo de un archivo .spec completo sería:

Name:           hello
Version:        2.7
Release:        1%{?dist}
Summary:        The "Hello World" program from GNU

License:        GPLv3+
URL:            http://ftp.gnu.org/gnu/%{name}
Source0:        http://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz

BuildRequires: gettext
# Requires:
Requires(post): info
Requires(preun): info

%description
The "Hello World" program, done with all bells and whistles of a proper FOSS
project, including configuration, build, internationalization, help files, etc.

%prep
%setup -q

%build
%configure
make %{?_smp_mflags}

%install

make install DESTDIR=%{buildroot}
%find_lang %{name}
rm -f %{buildroot}/%{_infodir}/dir

%post
/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || :

%preun
if [ $1 = 0 ] ; then
/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || :
fi

%files -f %{name}.lang
%{_bindir}/hello
%doc %{_mandir}/man1/hello.1.gz
%doc %{_infodir}/%{name}.info.gz

%changelog
* Tue Sep 06 2011 The Coon of Ty <Ty@coon.org> 2.7-1
- Initial version of the package

Construimos el paquete:

$ rpmbuild -ba hello.spec

Esto generará los paquetes de fuentes y binario en los directorios SPMS y RPMS. Ahora verificamos con rpmlint si los paquetes cumplen con las reglas de diseño de RPMs:

$ rpmlint hello.spec ../SRPMS/hello* ../RPMS/*/hello*

Si no hay errores, ya tenemos los paquetes listos para usar:

$ cd /home/hvivani/rpmbuild/RPMS/x86_64
$ sudo rpm -i hello-2.7-1.fc14.x86_64.rpm
[sudo] password for hvivani:
$ hello
¡Hola mundo!

Si queremos incursionar en profundidad en este tema, podemos hacerlo en este wiki de fedora.

desbloquear deposito de claves de inicio de sesion / enter password to unlock your login keyring


Este mensaje nos puede aparecer si hemos cambiado alguna clave y por alguna razón el depósito de claves de gnome no actualizó correctamente el archivo.

El depósito de claves de gnome es un almacen seguro utilizado para almacenar claves de aplicaciones que se ejecutan en gnome y de las cuales nosotros hemos elegido almacenar la contraseña.

Cuando esto sucede, la solución es realizar un solemne rm:

rm /home/usuario/.gnome2/keyrings/default.keyring

Considerando que las aplicaciones que tenían almacenadas las contraseñas, volverán a solicitarnos dichas claves.