Guia completa de optimizacion de Ubuntu Edgy

martes, 27 de marzo de 2007
Escrito por Neodian a las 17:48
4 comentarios

Mi proposito es crear la guia mas completa sobre optimizacion de Ubuntu Edgy para un pc de escritorio, de esta forma conseguiremos que nuestro ordenador funcione mas rapido y mejor. Para crear este documento me baso en mi propia experiencia, ya que llevo una semana instalando y optimizando disitintas maquinas y he podido comprobar todas estas cosas, asi como en contenido de diversas paginas web que me han servido de guia y ayuda en todo momento, como siempre al final del articulo tendreis los correpondientes links.

Una advertencia antes de empezar, tened en cuenta que vamos a trastear con ficheros de configuracion del sistema asi que actuad bajo vuestra responsabilidad, aunque os garantizo que si seguis los pasos al pie de la letra no tendreis ningun problema.

Desactivar tty

Para empezar despues de instalar edgy seria una buena opcion desactivar las consolas que no vamos a utilizar, dejando activas quiza 1 o 2 segun cada uno, para ello podeis ver como se hace en el artiulo que escribi hace unos dias, Desactivar tty en Ubuntu Edgy.


Desactivar IPV6

Despues de esto otra cosa que mejorara el rendimiento de nuestra maquina a la hora de conectarse a internet es desactivar el uso de IPV6 que viene activado por defecto. Para hacer esto tendremos que editar el fichero /etc/modprobe.d/aliases y buscar la linea que pone alias net-pf-10 ipv6 y sustituirla por alias net-pf-10 off, para que funcione debemos reiniciar. Si ahora haces un ifconfig| grep inet6 no deberia salir nada, asi comprobaras que ha funciona.

Para desactivar tambien el uso de ipv6 en el firefox/swiftfox deberemos ir a la pagina de configuracion del mismo escribiendo en la barra de direccion about:config y en filtro escribimos ipv6, deberia aparecer una linea que pone network.dns.disableIPv6, el valor debe ser true.

Añadir tu hostname al localhost

Esto puede ser un poco confuso, lo que vamos a hacer es editar el fichero /etc/hosts y en la linea donde pone 127.0.0.1 localhost añadiremos tambien el nombre de nuestro host de tal forma que la cosa quede asi, 127.0.0.1 localhost tuhost

Activar prelink

Lo que hace esta utilidad es cargar el conjunto de librerias comunes que usaran tus programas para funcionar, de este modo cuando los ejecutes ya se encontraran cargadas y el programa arrancara mas deprisa. El proceso de instalacion es muy sencillo, en primer lugar tenemos que asegurarnos de tener activados los repositorios de Universe. Despues instalamos prelink con un simple apt-get install prelink y justo despues de que termine editamos el fichero /etc/default/prelink y en la linea que pone PRELINKING=unknown cambiamos el unknown por yes, queda asi, PRELINKING=yes. El resto de las opciones podeis cambiarlas a vuestro gusto pero la que vienen funcionan prefectamente.

Finalmente tendremos que ejecutar prelink, la primera vez tardara mas puesto que tiene que hacer la busqueda de librerias, asi que pueda que tarde un ratito. Para activarlo ejecutamos el comando sudo /etc/cron.daily/prelink

Servidor DNS local

Cada vez que entramos en una pagina web en primer lugar nuestro ordenador tiene que hacer una peticion para transformar la direccion que le acabamos de dar a una direccion ip. Este proceso se realiza cada vez que entramos en una pagina web. Lo que vamos a hacer es instalar el Dnsmasq que se dedicara a guardar las paginas ya consultadas, de tal forma que si volvemos a entrar mas tarde el tiempo que tardara en resolver esa direccion sera cero, por tanto navegaremos mas rapido.

Para instalar el programa ejecutamos apt-get install dnsmasq. Acto seguido editamos el fichero /etc/dnsmasq.conf y en la linea #listen-address= la cambiamos por listen-address=127.0.0.1. Ahora vamos a editar el fichero /etc/dhcp3/dhclient.conf y no fijamos de que quede igual que este:

#supersede domain-name “fugue.com home.vix.com”;
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name,
netbios-name-servers, netbios-scope;

Basicamente teneis que descomentar la linea prepend domain-name-servers 127.0.0.1; que os aparecera comentada.

Por ultimo tendremos que editar el fichero /etc/resolv.conf y añadir la linea nameserver 127.0.0.1, queda asi:

search skynet
nameserver 127.0.0.1
nameserver 192.168.1.254

Ahora reiniciamos el dnsmasq mediante /etc/init.d/dnsmasq restart y ya deberia funcionaros, para comprobarlo hacer un dig google.es y vereis como la primera vez pone en query time pone algo asi como 156ms y las siguiente pone 0 .

Optimizar el uso del swap

Normalmente este valor viene por defecto en 60, podeis comprobarlo ejecutando cat /proc/sys/vm/swappiness. Para mejorar el rendimiento de nuestro ordenador lo que vamos a hacer es bajar ese valor, de tal forma que nuestra maquina usara lo menos posible la memoria de swap y mas la ram, eso se traduce en un incremento de velocidad ya que leer de la memoria es mucho mas rapido que de disco.

Para probar podeis ejecutar sysctl vm.swappiness=10 y probais un rato a ver que tal. Este valor, 10 es recomendado para equipos con mas de 512, si teneis menos entonces mejor no toqueis nada. Si por el contrario teneis 1 gb podeis probar con un valor de swappines de 5, y si teneis todavia mas podeis probar a poner 0, que no desactivara el swap pero si reducira su uso a lo minimo.

Si despues de un rato os convence el resultado y quereis hacerlo permanente tendreis que editar el fichero /etc/sysctl.conf y añadimos en la ultima linea vm.swappiness=10 o el valor que os corresponda.

Deshabilitar servicios innecesarios

Ubuntu por defecto trae activados muchos servicios que luego a lo mejor no van a ser necesarios, bien porque no los necesitamos o bien porque carecemos de un determinado hardware, vease el bluetooth. No todo el mundo lo tiene,yo no, y sin embargo para facilitar las cosas a los que si lo tienen viene activado. Estos procesos se arrancan al iniciar el pc y ademas luego se quedan residentes en la memoria, por tanto al desactivarlo vamos a consegui que se incremente, un poquito, la velocidad de carga del sistema y ademas lo mas importante, reducir la cantidad de memoria utilizada.

Para esto tenemos que ir al directorio /etc/init.d/, si hacemos un ls veremos todos los servicios que se arrancan al iniciar el pc, para desactivarlos chmod -x bluetooth. Si por ejemplo luego nos damos cuenta de que la hemos cagado podemos restaurarlo usando chmod +x bluetooth. Ahora la cuestion es que servicios desactivar, bien pues esto ya que cada uno mire cual puede y cual no, en mi caso yo tengo desactivados los siguientes:

apmd: Puesto que mi ordenador usa acpi.
bluetooth: Ya que no dispongo de ningun de este dispositivo.
laptop-mode: Mi equipo es de sobremesa y no un portatil.
nvidia-kernel: No tengo una tarjeta nvidia.
pcmciautils: No tengo ranura pcmcia.
ppp-dns: No uso una conexion ppp, es decir, conexion por modem.
rsync: Es una utilidad para transferir archivos para hacer copias o mantener un espejo sincronizado.
wpa-ifupdown y wpasupplicant: Ya que no tengo conexion por wifi.

Mi recomendacion es que desactiveis los que realmente asabeis que no vais a usar, si desactivais todos tener por seguro que el ordenador no arrancara, o al menos no como se supone que debe hacerl, aunque supongo que en este caso podriamos usar un livecd o esa opcion de modo de recuperacion y devolverle los permisos correctos a los servicios.

Arranque en paralelo

Esto no lo he probado aun, pero lo hare en breve, se trata de arrancar todo los procesos de una vez y no de modo secuencial como hace normalmente el sistema, de esta forma el pc arranca mas rapido.

Para hacer esto editamos el fichero /etc/init.d/rc, buscamos la linea donde ponr startup $i start y la cambiamos por startup $i start &.

Existe otro metodo que me parece algo mas profesional, se trata de modificar el mismo fichero pero buscaremos la linea que ponde CONCURRENCY=none y la cambiaremos por CONCURRENCY=shell de esta forma optenemos el mismo resultado pero parece que el fichero queda mas limpio.

Secuencia de arranque

Un servicio que hay en el arranque se llama readhead tiene una lista de los servicio que se van a ir cargando durante el arranque, claro que esta lista ya viene creada por defecto y por tanto no se ajusta totalmente a nuestro ordenador.

Para conseguir esto y por tanto, un pequeño, aumento de velocidad al arrancar tenemos que reiniciar la maquina y en el grub seleccionamos el kernel que vamos a arrancar y pulsamos e. Ahora vamos al final de la segunda linea, pulsamos de nuevo la tecla e y añadimos profile, despues presionamos enter y finalmente b.

Ahora arrancara el sistema pero esta vez tardara mas ya que tiene que crear la lista de nuevo, pero la proximas veces notareis la mejora. Podeis realizar esta mejora cada vez que cambies de kernel o hagais un cambio que afecte al arranque del sistema en el sistema.

Optimizar el rendimiento en ext3

El sistema de ficheros que la mayoria de nosotros usamos se llama ext3 y es un sistema muy bueno y que aporta una gran estabilidad al sistema y una buena recuperacion frente a caidas. El precio que hay que pagar por esta seguridad es un sistema un poco mas lento.

Podemos evitar esto y acelerar el sistema cambiando la forma en la que almacena datos sobre los ficheros, por defecto viene en modo Journal Data Ordered y nosotros los cambiaremos a Journal Data Writeback lo que supondra que es posible que se pierda alguna informacion si el ordenador se cae de repente.

Para activarlo editamos el fichero /etc/fstab/ y añadimos en la zona de opciones data=writeback, queda de la siguiente forma:

/dev/hda1 / ext3 defaults,errors=remount-ro,data=writeback 0 1

Ahora lo activamos mediante tune2fs -o journal_data_writeback /dev/hda, para comprobar que todo funciona bien ejecutamos tune2fs -l /dev/hda1 y deberia decirnos algo asi Default mount options: journal_data_writeback.

Por ultimo solo queda reiniciar y ya tendremos el sistema un poco mas veloz, lo notareis sobre todo al copiar ficheros o moverlos.

Sacado de: http://xlntsolution.blogspot.com/2007/03/feisty-performance-fly-like-butterfly.html
http://www.guia-ubuntu.org/index.php?title=Optimizar_el_rendimiento_en_ext3
http://www.guia-ubuntu.org/index.php?title=Dnsmasq%2C_servidor_DNS_y_DHCP
http://doc.gwos.org/index.php/Prelink
http://ubuntuforums.org/showthread.php?t=87798
http://thefenix.wordpress.com/2007/02/09/como-optimizar-ubuntu-gnulinux/

Pertenece a la seccion Manuales





4 comentarios »

  1. Neodian dice:

    Muchas gracias por el link davidd, ya conocia esa herramienta pero nunca me a llegado a convencer demasiado, de todos modos voy a darle otra oportunidad.

  2. davidd dice:

    gracias por la info =)

  3. davidd dice:

    otra vez yo, solo para mostar esto, una forma mas facil de hacer todo esto, al fin i al cabo es lo que se busca

    http://www.marzocca.net/linux/bum.html

  4. meneame.net dice:

    Guia completa de optimizacion de Ubuntu Edgy

    Completo articulo donde podremos encontrar varios trucos para mejorar nuestro Ubuntu y sacar el maximo partido de nuestra maquina.