jueves, 15 de mayo de 2008

Bug al desmontar en ubuntu

Aqui la direccion del bug: #85424.

Nose si les habra pasado, pero ami si.
Cuando montaba y desmontaba un pendrive desde consola, no habia problemas.
Pero cuando lo hacia graficamente y lo queria desmontar desde clic derecho, expulsar, me salia un cartel:

"No se puede desmontar el volumen"
"Failed to unmount drive"

Y en detalles me salia: "Cannot remove directory"

La solucion es remover los HAL mtabs de /media con el comando:

# sudo rm /media/.hal*

Espero que a alguien que tenga el mismo problema le sirva.

Saludos,

sábado, 10 de mayo de 2008

Instalar emesene en Debian Etch 4.0




Hay muchisimos clientes de mensajeria instantanea, pero hoy me voy a centrar en el programa: emesene. Lo he probado y la verdad que me gusto mucho la interfaz grafica, la velocidad con la que carga, que a comparacion de programas similares como aMSN, el amsn deja mucho que desear en cuanto a velocidad. eMeseNe está hecho en python y Gtk++ ,todavía no dispone de soporte WebCam y micrófono, pero ya estan trabajando en ello. Nos logueamos como root:

# su
Password:

Editamos la lista de repositorios:


# nano /etc/apt/sources.list

Añadimos a nuestro sources.list el repositorio de emesene:

deb http://apt.emesene.org ./

Guardamos, Salimos y despues:

# apt-get update

# apt-get install emesene

Y ya con esto tendriamos instalado el emesene.


Aplicaciones / Internet / emesene



Saludos,

Emmanuel Arreguez

martes, 29 de abril de 2008

Script Bash Matador de Carga en un servidor

Hola,

Bueno, resulta que en un servidor de IRCD, hay veces que se quedan colgados algunos procesos, ocupando CPU% hasta que yo me conectaba manualmente y mataba el proceso.
No era la gran cosa porque esto solo pasaba una q otra vez... pero como los usuarios se aumentaron en ese servidor, pasa mas a menudo.
Por lo que hice un script muy basico, pero que se obtiene buenos resultados.

Antes que nada hay que crear un directorio, hay que estar logueado como (root):

# mkdir /root/killcarga

# cd /root/killcarga

# nano killcarga

Y pegamos lo siguiente:

########################

#!/bin/bash

# Script en Bash para matar procesos con mucha carga de cpu
# Hecho por Emmanuel_Ar - Gulcar

cd /root/killcarga
top > top
cat top | grep K > top2

pdban=$(head -1 top2 | awk '{print $1}')
carga=$(head -1 top2 | awk '{print $10}' | cut -f1 -d '.')
pusuario=$(head -1 top2 | awk '{print $2}')

# Yo le puse q cuando pase de %30 CPU lo banee
if [ $carga -ge 30 ]; then
kill -9 $pdban
fecha=$(date)
echo "$fecha PID: $pdban % $carga usuario: $pusuario" >> log
fi

rm -fr top top2

#################

Guardamos con: ctrl +o
Salimos con: ctrl +x

Damos permiso de ejecucion:

chmod +x killcarga

Y ejecutamos:

./killcarga

########################

Tambien pueden programarlo con crontab para q se ejecute automaticamente con:

# crontab -e

Y pegamos:

*/10 * * * * /root/killcarga/killcarga >/dev/null 2>&1

Guardamos y salimos.

Con esto el servidor, cada 10 minutos se fijaria si algun proceso pasa de %30 de uso del CPU, de ser asi, lo mata.

#######################

Tambien vale comentar que este script funciona en freebsd y las variables del awk pueden cambiar segun el top de cada distribucion. Ya eso lo acomodan segun el top

[root@shells:~/killcarga] uname -a
FreeBSD shells.ircdshells.com.ar 4.11-RELEASE-p13 FreeBSD 4.11-RELEASE-p13 #0: Thu Oct 13 01:32:49 GMT 2005 root@shells.ircdshells.com.ar:/usr/obj/usr/src/sys/ i386


Bueno... si quieren cambiar, agregar lineas, comentar, etc realicen un comentario

Saludos,

lunes, 21 de abril de 2008

Instalar Driver Oficial de Ati en Debian Etch

Probada en una Ati Radeon Xpress 200 (integrada en la placa madre)

NOTA: Debes tener configurados los repositorios "non-free"

Comprobamos los Repositorios: IMPORTANTE
# cat /etc/apt/sources.list

# Disco de Instalación
# deb cdrom:[Debian GNU/Linux testing _Etch_ - Official Snapshot i386 Binary-1 (20061110)]/ etch contrib main

# Repositorio de paquetes en un servidor Francés
deb http://ftp.fr.debian.org/debian/ etch main contrib non-free

# Repositorio de paquetes en un servidor Español
deb http://ftp.caliu.info/debian/ etch main contrib non-free

deb http://security.debian.org/ etch/updates main contrib non-free
deb-src http://security.debian.org/ etch/updates main contrib non-free

1. Instalar los paquetes siguientes en una terminal (como usuario root):
# su -
password:

# aptitude install fglrx-control fglrx-driver fglrx-kernel-src module-assistant mesa-utils build-essential

2. Descargamos las fuentes del kernel
# aptitude install linux-source-2.6.18

3. Compilamos el módulo fglrx:
# cd /usr/src
# module-assistant prepare
Getting source for kernel version: 2.6.18-3-686
Kernel headers available in /lib/modules/2.6.18-3-686/build
apt-get install build-essential
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
build-essential ya está en su versión más reciente.
0 actualizados, 0 se instalarán, 0 para eliminar y 0 no actualizados.

Done!

# module-assistant a-i fglrx
Updated infos about 1 packages
Getting source for kernel version: 2.6.18-3-686
Kernel headers available in /lib/modules/2.6.18-3-686/build
apt-get install build-essential
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
build-essential ya está en su versión más reciente.
0 actualizados, 0 se instalarán, 0 para eliminar y 0 no actualizados.

Done!
unpack
Extracting the package tarball, /usr/src/fglrx.tar.bz2, please wait...
"/usr/share/modass/packages/fglrx-kernel-src" build KVERS=2.6.18-3-686 KSRC=/lib/modules/2.6.18-3-686/build KDREV=2.6.18-7 kdist_image
Done with /usr/src/fglrx-kernel-2.6.18-3-686_8.28.8-4+2.6.18-7_i386.deb .
dpkg -Ei /usr/src/fglrx-kernel-2.6.18-3-686_8.28.8-4+2.6.18-7_i386.deb
Seleccionando el paquete fglrx-kernel-2.6.18-3-686 previamente no seleccionado.
(Leyendo la base de datos ...
99860 ficheros y directorios instalados actualmente.)
Desempaquetando fglrx-kernel-2.6.18-3-686 (de .../fglrx-kernel-2.6.18-3-686_8.28.8-4+2.6.18-7_i386.deb) ...
Configurando fglrx-kernel-2.6.18-3-686 (8.28.8-4+2.6.18-7) ...

4. Modificamos el fichero /etc/X11/xorg.conf
# nano /etc/X11/xorg.conf

Yo tuve que añadir en la sección "Modules": Load "fglrx"

Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "vbe"
Load "fglrx"
EndSection

Y modificar y añadir en la sección "Device":
Driver "fglrx"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"

Section "Device"
Identifier "ATI Technologies Inc Radeon R350 [Radeon 9800 Pro]"
Driver "fglrx"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
BusID "PCI:1:0:0"
EndSection

Guardamos el fichero, salimos y ejecutamos los comandos:
# aticonfig --initial
Found fglrx primary device section
Nothing to do, terminating.

# aticonfig --overlay-type=Xv
Warning: Option 'VideoOverlay' doesn't affect running session.
Warning: Option 'OpenGLOverlay' doesn't affect running session.
Using /etc/X11/xorg.conf

5.
Cerramos la cesión de KDE o GNOME, accedemos a una consola de texto mediante la combinación de telcas CTRL+ALT+F1 y paramos el servicio kdm o gdm según corresponda, cargamos los drivers y volvemos a iniciar kdm o gdm.

login: root
password:

# /etc/init.d/kdm stop (si utilizas Gnome: /etc/init.d/gdm stop)
# modprobe -r radeon
[drm] Module unloaded

# modprobe fglrx
[fglrx] Maximum main memory to use for locked dma buffer 930 MBytes
[fglrx] module loaded - fglrx 8.28.8 [Aug 17 2006] on minor 0

# /etc/init.d/kdm start (si utilizas Gnome: /etc/init.d/gdm start)

6. Para verificar la instalación:

$ glxinfo | grep rendering (Hay que ejecutar éste comando como usuario que ha iniciado la sesión gráfica)
direct rendering: Yes

INFORMACIÓN OTROS COMANDOS:
$ glxgears -printfps
1235 frames in 5.0 seconds = 246.903 FPS
1250 frames in 5.0 seconds = 249.992 FPS
1250 frames in 5.0 seconds = 249.992 FPS
1250 frames in 5.0 seconds = 249.992 FPS
1258 frames in 5.0 seconds = 251.592 FPS

$ glxdemo

$ glxheads
glxheads: exercise multiple GLX connections (any key = exit)
Usage:
glxheads xdisplayname ...
Example:
glxheads :0 mars:0 venus:1
Name: :0
Display: 0x805e008
Window: 0x2a00002
Context: 0x8066fe8
GL_VERSION: 2.0.6011 (8.28.8)
GL_VENDOR: ATI Technologies Inc.
GL_RENDERER: RADEON 9800 Pro Generic

$ fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9800 Pro Generic
OpenGL version string: 2.0.6011 (8.28.8)

$ fgl_glxgears
Using GLX_SGIX_pbuffer
4266 frames in 5.0 seconds = 853.200 FPS
4331 frames in 5.0 seconds = 866.200 FPS
4310 frames in 5.0 seconds = 862.000 FPS
4342 frames in 5.0 seconds = 868.400 FPS

ACTUALIZACION DE KERNEL

En el caso que actualizemos el kernel, hay que volver a parchar el nuevo kernel:

- Instalamos las fuentes del Kernel:
# aptitude install linux-source-2.6.18

- Compilamos el módulo fglrx para el nuevo Kernel:
# cd /usr/src
# module-assistant prepare
# module-assistant a-i fglrx
# aticonfig --initial
# aticonfig --overlay-type=Xv

Reiniciamos la sesion:

Ctrl + Alt + Backspace

Y ya tendria que dar, una vez logueado (como usuario):

$ glxinfo | grep rendering (Hay que ejecutar éste comando como usuario que ha iniciado la sesión gráfica)
direct rendering: Yes

Fuente: http://debiantotal.blogspot.com/2007/02/instalar-driver-ati.html

Saludos,

Emmanuel Arreguez

viernes, 7 de marzo de 2008

Editor Nano

Este es sin duda nuestro editor favorito, el cual utilizamos todas las noches con mi colega Emmanuel_Ar en la proyección de algo que se viene! Que andara Tramando la dupla? ...

Nano es un editor de texto pequeño, liviano y eficiente para las necesidades que tiene un usuario común.
Para darle un mejor rendimiento, aspecto y aligerar tareas lo único que tenemos que hacer es modificar el fichero de configuración que se encuentra en /etc/nanorc .
  • nano /etc/nanorc
Todas las funciones que podemos agregar vienen comentadas con (#), lo único que tenemos que hacer es quitarle esa almohadilla.
  • set autoident #Se identa automáticamente cuando se pasa a la siguiente linea, es muy útil para que el código sea legible cuando se está programando, por ejemplo en python .
  • set const #Nos muestra el número de línea, el número de carácter y el número de columna que estamos posicionados con el cursor, así también el número de todas de lineas, caracteres y columnas.
  • set tabsize n #Donde se encuentra "n" reemplazar por el número que quiere desplazar cuando se aprieta la tecla TAB → .
Al final de todo podemos indicarle a nano que reconozca con colores la sintaxis de algunos lenguajes de programación como: python, c, java, etc.
Lo único que tenemos que hacer es quitarle la almohadilla, por ejemplo:
  • include "/usr/share/nano/python.nanorc"
  • include "/usr/share/nano/sh.nanorc"
Y cuando se habra un fichero holamundo.py podremos ver en colores la sintaxis de python en este caso.
Es necesario indicarle la extensión del lenguaje, para que nano pueda distinguir el color de sintaxis.

Esta configuración es la que se adaptó a mis necesidades (algunas otras tambien).
Ahora los invito a que vean cuales son las suyas y adapten este editor a su medida.

Para más información recomiendo leer: man nano , man nanorc , http://www.nano-editor.org/ .

Nota:
si no tienes permisos para modificar el archivo que se encuentra en /etc/nano (porque lo tienes que hacer como super usuario), ejecuta esto en una consola.
  • cat /etc/nanorc > $HOME/.nanorc
Y modifica este fichero $HOME/.nanorc =) .

Un saludo!!!
DebianitraM

domingo, 2 de marzo de 2008

Instalar / Desinstalar Google Earth en Linux


Para instalar Google Earth en Linux, debemos descargar el archivo .bin desde la web:

http://earth.google.com/download-earth.html

O mas precisamente:

http://dl.google.com/earth/client/current/GoogleEarthLinux.bin

1. Una ves que tengamos el archivo en nuestra pc. nos posicionamos en el directorio donde este el archivo y ejecutamos:

# sh GoogleEarthLinux.bin


2. Una vez que ejecutamos el .bin, se abre una ventana, elegimos el directorio donde queremos instalar, y le damos clic a 'Comenzar la instalacion':


3. Se va a empezar a instalar en su pc, una vez completado el proceso va a salir la siguiente imagen:


################################################
Desinstalacion
################################################

1. Si en el caso quisieramos desinstalar, deberiamos teclear en consola:

# cd $HOME/.loki/installed/bin/Linux/x86

# ./uninstall google-earth

Listo.

Saludos,

miércoles, 27 de febrero de 2008

Instalar Pidgin 2.3.1-2 en Debian Etch




Ya con el debian etch instalado se me dio por instalar un programa de mensajeria instantanea, el gaim que trae esta desactualizado ya que es la version estable, pero aqui les pongo como instalar el pidgin en debian etch 4.0

1. Abrimos una consola como root

2. Yo por costumbre dejo los archivos en /usr/src pero pueden descargarlo en donde quieran

# cd /usr/src

3. Descargamos los archivos necesarios, yo los comprimi en un tar.gz

# wget http://ircdshells.com.ar/linux/pidgin-debian-etch.tar.gz

4. Descomprimimos:

# tar zxvf pidgin-debian-etch.tar.gz

5. Instalamos los paquetes con dpkg

# dpkg -i pidgin-data_2.3.1-2~bpo40+1_all.deb libsilc-1.1-2_1.1.2-2~bpo.1_i386.deb libpurple0_2.3.1-2~bpo40+1_i386.deb pidgin_2.3.1-2~bpo40+1_i386.deb

Listo.

Ya podemos disfrutar de este programa de mensajeria y lo podemos encontrar en (Aplicaciones/Internet/Cliente de mensajeria de Internet Pidgin)

Saludos,

Emmanuel_Ar

sábado, 23 de febrero de 2008

Papelera pa' Consola

Sirve para mover los archivos a la papelera y no eliminarlos por
completo.

Copien el codigo en un archivo, pongalen de nombre papelera y luego
moverlo a /bin.
mv papelera /bin , esto como root, luego darle permisos de ejecucion
chmod +x papelera.

Termiando esto lo pueden ejecutar desde donde quieran.


Saludos . DebianitraM

##########################################################

#!/bin/bash

# Papelera de consola, en diferentes modos

# Modo de uso: papelera argumentos ...
# ejm: papelera fichero1.txt DestruirWin.c pchess.py
# DebianitraM =)

papelera=$HOME/.Trash #la ubicacion del directorio de la papelera

mod_grafico ( ) {

for i in $(seq 1 $#); do
if [ -f $1 ]; then
dialog --yesno "¿Esta seguro que desea mover a la papelera el fichero $1?" 0 0
resp=$?
if [ $resp -eq 0 ]; then
mv -f $1 $papelera
sleep 0.5
clear
fi
else
dialog --msgbox " El fichero $1 no existe" 0 0
fi
shift

done

}

mod_consola ( ) {
# Funcion Auxiliar, si no tenemos instalado el comando dialog.

for i in $(seq 1 $#); do
if [ -f $1 ]; then
read -p "¿Esta seguro que desea mover a la papelera el fichero $1? [s/n]: " resp
if [ "$resp" == "s" ]; then
mv -f $1 $papelera
sleep 0.5
clear
fi
else
echo " El fichero $1 no existe"
fi
shift
done

}

which dialog >> /dev/null

if [ $? -eq 0 ]; then
mod_grafico $*
else
mod_consola $*
fi

##########################################################