HOWTO: Ahorrando recursos

Si les da vergüenza decir qué ordenador usan por lo viejo que es, si no
pueden usar Gnome o KDE porque tarda mucho tiempo en aparecer y es más
lento que un partido de beisbol, no se preocupen, hay forma de mejorar
esto sin sentirse inferior informáticamente. El propósito de esta guía
es incrementar la velocidad del ordenador ahorrando memoria.

El hijo de mi vecino se consiguió un Pentium 166 con 96 MB de RAM, un
disco duro de segunda mano de 20 GB, y un monitor viejo de 17 pulgadas.
El sistema operativo era Windows98 y traía un ratón PS/2 con un teclado
en Español del año de la pera.

Me pidió que lo ayudara a instalar Debian y a continuación explicaré
que fue lo que hicimos. Espero que esto ayude a algunos usurarios en
las mismas condiciones. Como siempre, esto funcionó para nosotros pero
no es una certeza que funcione para todos. El resultado ha sido que el
ordenador funciona perfectamente y a una velocidad aceptable, el chico
está "más contento que un cochino en lodo".

LIMPIAR EL DISCO DURO

Nuestro objeto era llenar el disco de ceros, borrando todo vestigio de
Windows98. Iniciamos el ordenador y luego de estar en Windows,
insertamos un disco de Knoppix viejo que tenía tirado en mi escritorio
(versión 3.2) y reiniciamos, esto nos trajo a la pantalla de Knoppix,
en el prompt escribimos:

knoppix 2 vga=normal lang=es

knoppix 2 - nos pone en runlevel 2 (texto) no entraremos en las Xs.

vga=normal - nos pone en un framebuffer que trae fuentes grandes.

lang=es - nos pone el teclado en español.

Al terminar de correr Knoppix, leimos qué hardware teníamos y decidimos
meterle mano, nos llevó a un prompt de root (#) por defecto, así que
como sólo tenemos un disco duro, escribimos:

# dd if=/dev/zero of=/dev/hda

y pulsamos Enter. Para un disco de 40 MB se deja andando 15 minutos, en
nuestro caso lo dejamos andando 10 minutos para estar seguros.
Transcurrido el tiempo, pulsamos Control+C y después de unos 10 segundos,
nos salió una información sobre el disco, luego escribimos:

# halt <Enter>

Knoppix comenzó el proceso de salida, se paró, expulsó el CD de
Knoppix, lo sacamos, insertamos el del netinstaller de Debian (viejo
también) y reiniciamos la máquina manualmente.

En el prompt de la pantalla de Debian seguimos las instruciones de este
artículo
o sea, una instalación mínima, usamos las opciónes:

"Borrar el disco completo (hda)"

y escogimos en la partición:

"Estación de trabajo de multi-usuario" (viene con Ext3 por omisión)

Luego escogimos la distribución estable y el kernel 2.6 .


PAQUETES

Al final de la instalación hicimos un apt-get update, seguido de
apt-get dist-upgrade, e instalamos algunos paquetes básicos, siempre
escogiendo aplicaciones livianas y rápidas que no usaran mucha memoria
RAM.

Escogimos las siguientes:

x-window-system-core aterm menu firehol
icewm-lite iceme joe sudo zip unzip bzip2 numlockx unclutter asclock
mozilla-firefox xfe xchat xzgv xlockmore scrot mutt antiword gnumeric
elinks gmrun irssi-text feh .

Joe, el editor de texto, funciona como mi procesador de palabras
también, pesa un tercio de vim y me permite evadir la instalación de
OOo (OpenOffice). Abro los ficheros .doc con 'antiword'. Dentro de Joe hay
variaciones, yo uso 'jpico' porque es parecido a Nano, los mismos
atajos de teclas pero más potente. Me permite centrar los títulos,
tiene wordwrap, copiar, pegar, y mover párrafos enteros y es muy
configurable, me permite salvar/salir con una tecla (F10 en mi caso).
Ctrl+f formatea los párrafos en formato de bloque, y muestra el número
de líneas y columnas, voy al principio del fichero con F1 y al final
del mismo con F2. Guarda lo escrito en .txt Cool!

Sin barra de tareas usamos el programita 'asclock' que es rápido y nos
da la hora y fecha.

El programita 'unclutter' hace desaparecer el puntero del ratón después
de 5 segundos de inactivad y lo hace aparecer al mover el ratón de
nuevo; algo muy práctico si están leyendo o escribiendo.

Usamos 'xlockmore' para trancar la pantalla del ordenador y le ponemos
el parámetro: 'xlock -mode blank' para eliminar los screensavers y
ahorrar más recursos. Cuando lo lancen con el atajo de teclas, la
pantalla se pone inmediatamente negra, para entrar al ordenador otra
vez, comienzen a escribir su contraseña de USUARIO en la pantalla,
cuando terminen, pulsen Enter y listo.

Sin barra de tareas, instalé 'gmrun' para usar com Run/CLI.

Instalamos 'scrot' para tomar capturas de pantallas, lo lanzan desde el
terminal o con los atajos de teclas y escogen parámetros del manual
(man scrot):

aterm -e scrot -c -d 10

lo lanza desde el terminal, comienza una cuenta regresiva de la
cantidad de segundos (en mi caso, diez segundos) lo cual me da amplio
tiempo para hacer alt-tab hasta la ventana de la cual quiero una
fotografía, pulso en la pantalla nueva y espero que terminen los 10
segundos (hay un pitido), y la captura es llevada a tu /home. Es
chévere!

Elinks es mi navegador favorito, rápido y no gasta memoria.
Esto es importante para la velocidad del ordenador, si usan paquetes
inflados con mucho eye-candy y tienen poca memoria, no tendrán un
ordenador rápido. Después de configurar el sistema en general, nos dedicamos al gestor de ventanas: icewm-lite.


GESTOR DE VENTANAS

IceWM-lite es mas liviano que el IceWM regular, no trae barra de tareas
y ahorra - según mis cálculos con 'memstat'- unos 10 MB de RAM. Las
fuentes de los menus no son 'aliased' pero funcionan bien, total, los
atajos de teclas (key bindings) es lo que usamos, y pocas veces el
menú. Si queremos ver que ventanas tenemos abiertas, usamos alt-tab. Lo
demás es igual, los escritorios virtuales funcionan, los atajos de
teclas para cerrar, mover, etc, son iguales. No hay diferencia con el
icewm regular. Los ficheros de configuración son los mismos.

Usualmente, me toma 5 minutos configurar mis gestores de ventanas,
copio las configuraciones y me las mando a mi correo web (yahoo mail,
en mi caso) y los pongo en una carpeta con su respectivo nombre. Luego
cuando reinstalo es sólo cosa de copiar/pegar y listo.

$ jpico .icewm/keys

borré todo y pegué lo siguiente:

***********************************************************************
key "Ctrl+F1" aterm
key "Ctrl+F2" xfe
key "Ctrl+F3" xchat
key "Ctrl+F4" xzgv
key "Ctrl+F5" mozilla-firefox
key "Ctrl+F6" aterm -e elinks
key "Ctrl+F7" aterm -e mutt
key "Ctrl+F8" aterm -e scrot -c -d 10
key "Ctrl+F9" gmrun
key "Ctrl+F10" xlock -mode blank
key "Ctrl+Alt+Delete" sudo halt

key "Alt+Ctrl+KP_Divide"        aumix -v -5             # lower volume
key "Alt+Ctrl+KP_Multiply"      aumix -v +5             # raise volume
***********************************************************************

Ahora configuramos las preferencias para icewm-lite, ignoramos las
opciones que lidean con la barra de tareas porque simplemente, no hay
barra de tareas :)

$ jpico .icewm/preferences

No hay necesidad de copiar el fichero global porque ya tengo las
preferencias que deseo; aparece el fichero en blanco, copio y pego esto:

***********************************************************************
OpaqueMove=0 # 0/1
OpaqueResize=0 # 0/1
SmartPlacement=1 # 0/1
MenuMouseTracking=1 # 0/1
ModSuperIsCtrlAlt=1 # 0/1
UseMouseWheel=1 # 0/1
QuickSwitch=1 # 0/1
AutoReloadMenus=1 # 0/1
ShowProgramsMenu=1 # 0/1
ShowThemesMenu=1 # 0/1
ShowHelp=1 # 0/1
ShowRun=1 # 0/1
ShowWindowList=1 # 0/1
TerminalCommand="aterm"
ShutdownCommand="sudo halt"
RebootCommand="sudo reboot"
WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 "
***********************************************************************

salvan y salen.

Y por último, las winoptions:

$ jpico .icewm/winoptions

Borro todo y pego esto:

***********************************************************************
aterm.startMaximized: 1
pine.startMaximized: 1
irssi.startMaximized: 1
mozilla-firefox.startMaximized: 1
xfe.startMaximized: 1
opera.startMaximized: 1
xzgv.startMaximized: 1

aterm.dTitleBar: 0
opera.dTitleBar: 0
gqview.dTitleBar: 0
firefox-bin.dTitleBar: 0
xfe.dTitleBar: 0
xchat.dTitleBar: 0
asclock.dTitleBar: 0
openoffice.org.dTitleBar: 0
xzgv.dTitleBar: 0
***********************************************************************

salvan y salen.

El primer grupo maximiza las aplicaciones, el segundo elimina las
barras de título (la de arriba).

En algunas aplicaciones no elimina la barra de título, pero ahora que
viene Etch, los bugs serán eliminados. :)

Esto crea una visión que no desperdicia un pixel, y la pantalla
rinde más espacio. Me he aprendido los atajos de teclas de mis
aplicaciones más comunes, expecialmente Firefox, lo cual hace que
trabaje más rápido sin usar el ratón.


AFINANDO LA MÁQUINA

Lo primero que hicimos fue editar el grub/menu.lst

$ sudo jpico /boot/grub/menu.lst

allí editamos la línea que lidea con el color del menú de grub:

***********************************************************************
# Pretty colours
#color cyan/blue white/blue
***********************************************************************

la 'comentamos' (#) para que se muestre en blanco, usando menos
recursos.

Si solo usan Debian como yo, y no tienen otro sistema operativo en el
ordenador, cambien la última línea que muestra la cantidad de segundos
para que se inicie la máquina (5 segundos por defecto) a cero.

***********************************************************************
## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the
default entry
# (normally the first entry defined).
timeout 0
***********************************************************************

esto les ahorra 5 segundos.

Luego editamos el fichero /etc/X11/XF86Config-4, y agregamos esto en la
opciones del monitor:

***********************************************************************
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
Option "StandbyTime" "3" # Turn off screen in 3 minutes (DPMS)
Option "SuspendTime" "8" # Full hibernation in 8 minutes (DPMS)
Option "OffTime" "15" # Turn off DPMS monitor (DPMS)
EndSection
***********************************************************************

salven/cierren. Esto les ahorrará recursos con el monitor.

Después editamos el fichero /etc/inittab y comentamos las líneas de los TTYs y sólo dejamos dos sin comentar. Esto les ahorra ~3 MB de RAM.

***********************************************************************
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2 
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
***********************************************************************

En el mismo fichero, editen las líneas dejandola así:

***********************************************************************
# What to do when CTRL-ALT-DEL is pressed.
ca:12345:ctrlaltdel:/sbin/shutdown -t3 -h now
***********************************************************************

O sea, cambiamos la palabra 'reboot' por 'shutdown'.

Esto es para apagar el ordenador usando la combinación de estas tres
teclas.

salven/cierren

$ sudo jpico /etc/issue

Editamos el fichero /etc/issue y agregamos la línea:

***********************************************************************
Press CTRL+ALT+DELETE to shutdown 
***********************************************************************

salven/cierren

Ya tenemos el atajo de teclas en el .icewm/keys

key "Ctrl+Alt+Delete" sudo halt

Después de reiniciar la máquina ya pueden usar esta combinación de
teclas dentro de las Xs y fuera (consola) para apagar la máquina.
Esto funciona en icewm-lite pero no en icewm porque icewm lanza una
caja de diálogo por defecto para apagar la máquina.

Luego nos vamos al fichero /etc/fstab y lo editamos y en nuestro caso,
lo dejamos así:

***********************************************************************
# /etc/fstab: static file system information.
#
#            
proc          /proc           proc    defaults           0   0
/dev/hda1     /              ext3 defaults,noatime,errors=remount-ro 1 1
/dev/hda9     /home          ext3 defaults,noatime,nodev,nosuid 1 2
/dev/hda8     /tmp           ext3 defaults,noatime,nosuid  1  2
/dev/hda5     /usr           ext3 defaults                 0  2
/dev/hda6     /var           ext3 defaults,noatime         1  2
/dev/hda7     none           swap sw                       0  0
/dev/hdb      /media/cdrom0  iso9660 ro,user,noauto        0  0
/dev/fd0      /media/floppy0 auto    rw,user,noauto        0  0
***********************************************************************

Este artículo (http://tinyurl.com/wurfw), explica las diferencias entre
noatime, nodev, y nosuid y en qué particiones usarlas.

El 'noatime' incrementa la velocidad ya que elimina la escritura de la
última vez que se tuvo acceso al componente del inode. Cada vez que
accede a un fichero 'atime' escribe la hora, demorando el proceso, por
ende, la ventaja de 'noatime'. Si se preguntan qué es 'ro' significa:
'read-only', sólo para leer, no se puede escribir en la partición.

NOTA: Cuando se usa 'nodev' y 'nosuid' APROPIADAMENTE, se reduce la
probabilidad que un hacker introduzca un set-user-id o fichero
especial. No se pueden usar estas opciones indiscriminadamente como
explica el artículo. Usamos el ejemplo del artículo y funcionó
perfectamente.


ENTRANDO A LAS Xs

Lo siguiente hará que entren a las Xs más rápido sin usar un display
manager como kdm, gdm, xdm, etc, vayan a su .bash_profile:

$ jpico .bash_profile

agreguen esta línea al final del fichero:

***********************************************************************
ps ax|grep -q "[ ]Which X" || exec xinit >/dev/null 2>&1
***********************************************************************

salven y salgan

Esto hace más rápida la entrada a las Xs, porque no tienen que escribir
y usar 'startx' después de escribir su login y contraseña. Startx llama
a xinit de todos modos, así que para qué usarlo, mejor ir a xinit
directamente.

Las única diferencia es que startx usa .xsession y .Xresources, xinit
usa .xinitrc y .Xdefaults; ambos ficheros tienen LA MISMA función. Al
agregar 'exec' antes de 'init', esto impide que el shell siga andando
después que entren a las Xs, lo cual ahorra.

Me gustó tanto IceWM-lite que lo hice mi gestor por omisión:

$ jpico .xinitrc

***********************************************************************
#!/bin/sh

xlockmore &
numlockx &
unclutter &
asclock -shape -noblink &

icewm-lite
***********************************************************************

Y por último, pero no menos importante: NADA de wallpapers, íconos, o
pajaritos volando por el escritorio, una persona con esta clase de
ordenador no puede darse el lujo de despilfarrar recursos. :)

Reiniciamos el ordenador, et voilà!

Suerte,


Luis Lima aka macondo


Puedes ver las tres imágenes en una resolución mayor haciendo clic en los siguientes enlaces:

Elinks

Editor Jpico en aterm

Irssi-Tex

Enviado por tritt el 12 Diciembre, 2006 - 09:05.

*****, gran artículo macondo.
Sólo comentar que yo, por mi parte, elegiría fvwm como gestor de escritorio y nano como editor.
Lo que haces al principio de poner a 0 el disco no tiene mucho sentido, si lo que quieres es eliminar la tabla de particiones o lo que hubiese sólo tienes que cargarte el primer sector de disco.

dd if=/dev/zero of=/dev/hda bs=512 count=1

Por lo demás, completamente deacuerdo.
Saludos.

---
Bruce Schneier once found three distinct natural number divisors of a prime number.

Enviado por macondo el 12 Diciembre, 2006 - 14:17.

Respuesta a *****, gran artículo macondo.
Sólo

tritt escribió:
"*****, gran artículo macondo."

gracias.

"Sólo comentar que yo, por mi parte, elegiría fvwm como gestor de escritorio y nano como editor."

Jeje, para gustos y colores...

Tengo 2 semanas usando Ratpoison, usa menos memoria que todo gestor de ventanas que he usado hasta ahora. Jpico es igual que Nano pero con más opciones y más configurable, usa los mismos atajos de teclas.

"Lo que haces al principio de poner a 0 el disco no tiene mucho sentido, si lo que quieres es eliminar la tabla de particiones o lo que hubiese sólo tienes que cargarte el primer sector de disco."
dd if=/dev/zero of=/dev/hda bs=512 count=1"

No solo la tabla de particiones, quiero todo el disco limpio de Windows98, como si estuviera nuevo. lo que explicas también lo hace el netinstaller de Debian.

"Por lo demás, completamente deacuerdo.
Saludos."

Gracias por tus observaciones y saludos,

---
The more I deal with people, the more I love my dog. - Oscar Wilde

Enviado por antoine el 12 Diciembre, 2006 - 15:15.

didiwiki es un paquete que requiere pocos recursos y que podría añadir funcionalidad al sistema. Permite crear y mantener un wiki personal con las notas del día a día, los trucos como los del artículo, etc.

Un saludo.

Enviado por macondo el 12 Diciembre, 2006 - 15:29.

Respuesta a didiwiki es un paquete que

antoine: jeje, lo acabo de probar, es un tiro, estoy leyendo el wiki, mil gracias!

---
The more I deal with people, the more I love my dog. - Oscar Wilde

Enviado por macondo el 12 Diciembre, 2006 - 15:43.

Disculpen, para reiniciar icewm-lite:

$ killall -HUP icewm-lite

---
The more I deal with people, the more I love my dog. - Oscar Wilde

Enviado por jardiel el 12 Diciembre, 2006 - 22:44.

Otro buen trabajo de nuestro amigo macondo. Enhorabuena Luis. Genial.

Enviado por macondo el 13 Diciembre, 2006 - 15:14.

prueba

---
The more I deal with people, the more I love my dog. - Oscar Wilde

Enviado por dpaleo el 4 Enero, 2007 - 13:02.

Respuesta a prueba

---
The more I deal with

Muy buen artículo, sólo añadir un par de cosas.

Aquí: http://www.ubuntu-es.org/node/4440 hay un artículo mío (que nadie vote -1 spam, please ;) sobre cómo acelerar un poquito una Ubuntu (los consejos valen también para una Debian).

Sobre el arranque en X sin xdm/gdm/kdm/similares, aquí: http://linuxgazette.net/issue72/chung.html hay un artículo (en inglés sólo, aunque fácil de entender) para que el sistema arranque las ventanas directamente (útil en sistemas monousuario).

Sólo una discrepancia, cómo gestor de ventanas aewm, aewm++ o windowlab y si eres muy, muy, muy mínimo wm2, pero esta es la eterna discusión...

Enviado por axy el 10 Enero, 2007 - 18:26.

muy vacano tu howto creo que para mi es una gran ayuda ya que poseo un procesador 166 con 32 de memoria, solo tengo que conseguirme el netinstaller y ensayar a ver como me va, claro esta que soy apenas un novato pero pues intentemos a ver que pasa.

chao y gracias

Enviado por lechuck81 el 17 Enero, 2007 - 16:33.

Muy interesante el artículo. Tengo un pentium II a 350MHz con etch como único sistema operativo corriendo. Todos los años me planteo comprarme uno nuevo y acabo deshechando la idea porque realmente no me hace falta. Eso sí para que funcione ligero (aunque la cosa no está tan justa como para el ejemplo del artículo) lo tengo bastante afinado. También uso icewm que me parece muy cómodo y a éstas alturas también lo uso en el portatil que es más potente. Hay un par de aplicaciones que me gustaría recomendar:
- rox-filer: En ocasiones para trabajar con múltiples archivos es más comodo usar algo tipo nautilus. En el sentido de la eficiencia tal vez lo mejor sería usar mc en consola (o directamente comandos), no obstante, si queremos una opción menos espartana rox-filer es una muy buena opción que consume muy pocos recursos.
- mplayer: Creo que con esas características el equipo tendrá problemas para reproducir películas de bitrate muy alto pero nunca se sabe, a mí me va de maravilla, noto que consume muchos menos recursos que cualquier otro reproductor. Ha de ser compilado y sin GUI.

Por último, me parece fundamental compilar el kernel justo con las opciones mínimas necesarias y para tú procesador. Con esa velocidad de micro ya hay que tener paciencia.