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.

 

 

firefox is already running error


Este error sucede ante caídas abrutas del sistema operativo o, en la red si el cliente utiliza NFS.

Firefox nos muestra un cartel indicando: Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system.

Como lo solucionamos ?

1) verificamos si el proceso se está ejecutando con un ps -ef|grep firefox. Si tenemos algun proceso en ejecución lo matamos con un kill -9 PID

2) Si el punto 1 no resolvió el problema, buscamos nuestro perfil de firefox en ~/.mozilla/firefox/[nombreperfil]/  y eliminamos de ese directorio los archivos “lock“, “.partentlock“, “places.sqlite” y “*-journal

Eso es todo.

Factura Electrónica con Software Libre – Reutilización de Ticket de Acceso


Para los que han implementado el uso de factura electrónica con software libre a través del desarrollo en python realizado por la gente de Sistemas Agiles, como comentábamos en este artículo, seguramente se han encontrado últimamente (nov/2011) con un problema ajeno a esta implementación, pero que trae grandes dolores de cabeza.

Resulta que ultimamente hemos tenido grandes problemas de comunicación con los servidores de AFIP a la hora de actualizar facturas electrónicas utilizando WSFEv1.

Uno de los errores mas comunes es: “600: ValidacionDeToken: Error al verificar hash: VerificaciónDeHash: Error al convertir de Bas64 al token:”

Este es uno de los varios errores que se producen por un corte o timeout en la comunicación con el servidor.

Gracias a nuestro gran amigo Reinghart, hemos descubierto que reutilizando el ticket de acceso, se puede bajar un poco la taza de comprobantes rechazados.

Sumado a esto, notamos que nuestros sitemas, están generando facturas electrónicas con una frecuencia muy alta (2 o  3 facturas por minuto), lo que para un sistema ocn problemas de ancho de banda y concurrencia es bastante dificil de manejar, así que tambien hemos descubierto que si se graban comprobantes cada 3 minutos, prácticamente no hay rechazos.

Espero que esta información sea útil para muchos que se estén rompiendo la cabeza con este tema en estos días.

Pueden encontrar mas info de este y otros problemas en el foro de google pyafipws.

Instalando Firebird Database en Fedora


Firebird es una excelente base de datos de código abierto. En su momento era propiedad de Borland y se llamaba Interbase. En el año 2000 Borland (en ese monento Inprise) libero el codigo fuente bajo licencia Interbase Public License. Firebird es la descendiente open source de dicha base de datos.

Existen dos grandes versiones de esta base de datos: Firebird Super Server y Firebird Classic Server. En principio, sus diferencias radican en el enfoque de diseño: La versión Super Server utiliza hilos (threads) para atender multiples clientes concurrentes. Mientras que la versión Classic Server, se basa en el modo de trabajo de Interbase que genera un proceso nuevo por cada conexión.

Veamos el proceso de instalación:

Descargamos la versión Super Server de aqui, puede ser el tar.gz o el rpm. En el caso del tar.gz, debemos descomprimir y luego ejecutar el install.sh:

$ tar -zxvf FirebirdSS-2.5.1.26351-0.amd64.tar.gz
$ cd FirebirdSS-2.5.1.26351-0.amd64
$ ./install.sh

Al finalizar la instalación, nos preguntará la password de SYSDBA. Si queremos cambiarla mas adelante, encontraremos un script para cambiarla en: /opt/firebird/bin/changeDBAPassword.sh

Al finalizar la instalación, tendremos los archivos de firebird en /opt/firebird. En particular, en el directorio bin tendremos las utilidades, entre ellas el isql que es la herramienta por linea de comandos para manejar la base.

Probamos su funcionamiento con isql conectando a una db presintalada y mostrando sus tablas:

$ cd /opt/firebird
$ ./bin/isql
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect "/opt/firebird/examples/empbuild/employee.fdb" user "SYSDBA" password "clave";
Database:  "/opt/firebird/examples/empbuild/employee.fdb", User: SYSDBA
SQL> show tables;
       COUNTRY                                CUSTOMER                       
       DEPARTMENT                             EMPLOYEE                       
       EMPLOYEE_PROJECT                       JOB                            
       PROJECT                                PROJ_DEPT_BUDGET               
       SALARY_HISTORY                         SALES

Aquí tenemos una lista de herramientas administrativas adicionales para eta base de datos.

Montaje manual de pendrive’s / usb sticks


Si nuestro pendrive no monta automáticamente, cosa que no es normal, pero me ha pasado a menudo con algunos Kingston U3, lo que debemos hacer es lo siguiente:

Determinamos cuál es el dispositivo a través del comando lsusb. Así sabremos además si nuestro equipo “ve” el pendrive:

[root@athlon by-id]# lsusb
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 138a:0001 DigitalPersona, Inc Fingeprint Reader
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 08ec:0016 M-Systems Flash Disk Pioneers Kingston DataTraveler U3
Bus 001 Device 002: ID 064e:c107 Suyin Corp. HP webcam [dv6-1190en]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Aquí podemos ver que detectó el pendrive en el Bus 1 Device 4 (Kinston DataTraveler)

Luego hacemos:

[root@athlon by-id]# ls -l /dev/disk/by-id
total 0
lrwxrwxrwx. 1 root root  9 Nov  4 08:54 ata-Hitachi_HTS543225L9A300_090321FBCF00YLGRHLGA -> ../../sda
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 ata-Hitachi_HTS543225L9A300_090321FBCF00YLGRHLGA-part1 -> ../../sda1
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 ata-Hitachi_HTS543225L9A300_090321FBCF00YLGRHLGA-part2 -> ../../sda2
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-name-vg_athlon-lv_home -> ../../dm-2
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-name-vg_athlon-lv_root -> ../../dm-0
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-name-vg_athlon-lv_swap -> ../../dm-1
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-uuid-LVM-ISB6g7xgWLnnCOp0GFf3YBkKEnFCkefQguGzl08zaFUoSbyHh6uNCXjij5L7ImBa -> ../../dm-1
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-uuid-LVM-ISB6g7xgWLnnCOp0GFf3YBkKEnFCkefQS27psmgBsPMCIbp1gCoTDMrykek8qaTD -> ../../dm-2
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 dm-uuid-LVM-ISB6g7xgWLnnCOp0GFf3YBkKEnFCkefQuMe3syTiJDrSvO57gYETOxCDtgGNPpdF -> ../../dm-0
lrwxrwxrwx. 1 root root  9 Nov  4 08:54 scsi-SATA_Hitachi_HTS5432090321FBCF00YLGRHLGA -> ../../sda
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 scsi-SATA_Hitachi_HTS5432090321FBCF00YLGRHLGA-part1 -> ../../sda1
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 scsi-SATA_Hitachi_HTS5432090321FBCF00YLGRHLGA-part2 -> ../../sda2
lrwxrwxrwx. 1 root root  9 Nov  4 10:06 usb-Kingston_DataTraveler_U3_0BC157605321F985-0:0 -> ../../sdb
lrwxrwxrwx. 1 root root  9 Nov  4 10:06 usb-Kingston_DataTraveler_U3_0BC157605321F985-0:1 -> ../../sr1
lrwxrwxrwx. 1 root root  9 Nov  4 08:54 wwn-0x5000cca5b2ca3ab5 -> ../../sda
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 wwn-0x5000cca5b2ca3ab5-part1 -> ../../sda1
lrwxrwxrwx. 1 root root 10 Nov  4 08:54 wwn-0x5000cca5b2ca3ab5-part2 -> ../../sda2

y vemos que el Kingston DataTraveler está en el /dev/sr1

Ahora montamos:

[root@athlon dev]# mount /dev/sr1 /media/tmp
mount: block device /dev/sr1 is write-protected, mounting read-only

Listo !

msn messenger por consola / pidgin por consola


Para utilizar pidgin, pero en modo consola, debemos instalar finch:

$ su -c "yum install finch"

Tiene la misma funcionalidad, pero en modo consola. Inclusive si tenemos configurado pidgin, levantará la configuración de las cuentas almacenadas.

Para navegarlo, hay combinaciones con la tecla Alt que lo hacen bastante amigable. Algunas de las mas comunes:

  • Alt + q – quit
  • Alt + c – close window
  • Alt + n – next window
  • Alt + p – previous window
  • Alt + a – View available actions
  • Alt + w – list of windows
  • Alt + m – move window
  • Alt + r – resize window
  • F10 – Show menu for current window
  • Alt + tab – next URGENT window
  • Alt + Shift + tab – previous urgent window

Es una buena idea el pidgin en modo consola para usarlo en combinación con el comando screen para estar siempre online, como mencionabamos en este post.