3.12.2012

trasteando series (6): optimizando el arranque y otras hierbas

todo empieza mas o menos cuando a doc se le ocurre preguntar como optimizar el arranque de debian. en realidad empieza un poco mas tarde: cuando neurus va y habla de readahead.

momento. que no sabeis de que os hablo?? pues echadle paciencia, porque el hilo http://www.espaciolinux.com/foros/instalacion/optimizar-distro-debian-t49651-45.html es mas largo que muchos de mis posts (entre otras cosas, varias de mis repuestas son tal que como mis posts habituales :P)

total, que como veis a partir de aqui http://www.espaciolinux.com/foros/post258555.html#p258555  (por ahora es el final), he econtrado unos links interesantes, y a doc no se le ha ocurrido otra cosa que decirme que lo pruebe. cachis, una es debianita. no necesita motivos para ponerse a trastear. y encima, van y me los dan. XDDD

lo  dicho. que me he puesto a trastear. y como aptitude va a su bola, y mi conexion tambien, he pensado que seria razonable, eliminar cosas que no necesito, a ver si aptitude me hace caso. dicho y hecho. lsita de paquetes con atitude search ~i , y... OOOPS!! install nueva, desde el live (no lo hagais en casa!!), y cachis. esto esta mas sucio que un windows sin revisiones periodicas!! (por si alguien se lo pregunta: esto es lo que hay ahora mismo instalado: http://pastebin.ca/2126956 )

total, que limpiar eso a mano, podia ser toda una odisea... por sierte, aun conservo la antigua install... a modo de referencia. un chroot, me ha dado la lista de paquetes instalados. la idea no es clonar la antigua install, sino quitar todo lo que no estuviese ahi. copio aqui el history, que a modo de ejercicio de bash es excelente (que leches... con lo que me ha costado sacarlo limpio, tengo que presumir un poco, no?? :P

## old es la lista de paquetes de la old install, actual, la de mi sistema  
  396  diff  actual old |sed 's:+ii:++:g'|sed 's:-ii:__:g'|grep -v ii|less
  397  cat actual |awk '{print $2}'> act
  398  cat old |awk '{print $2}'> ol
  399  diff act ol
  400  cat ol |sed '{s:-:_:g}'> old2
  401  diff act old2
  402  cat act|sed '{s:-:_:g}'> act2
  403  diff act2 old2
  404  diff act2 old2|grep -e{+,-}
  405  diff act2 old2|grep -e{+,-}|less
  406  diff act2 old2|grep -e{+,-}|grep -v -e"-"
  407  aptitude purge $(diff act2 old2|grep -e{+,-}|grep -v -e"-"|cut -c 2-)
  408  history |tail -n 20
errrsssto... WTF?? ahora aptitude me dice que no encuentra ninguno de esos paquetes.... oh, espera. a que se lo he dicho al reves?? :S errr.... pues no. sigue sin encontrar los paquetes. trasto, se puede saber que te pasa?? algun match raro con la descripcion?? O_o lo dejare a ver si ....

vale. alguien o algo ha hecho algo o alguien muy raro. (oh, wait. creo que me acabo de liar...) por que co**nes aptitude me desinstala conky y cosas por el estilo, que, evidentemente, DEBEN estar ahi?? no es posible que en alguna de las dos installs, no estuvieran... verdad?? (yo con esto ya no se lo que es posible y lo que no..... :sniffff: ). eso si, casi 90 mb de espacio liberado, no son pocos.

bueno. lo reinstalaremos a mano (nota no-mental: siempre que jugueis con aptitude, mirad lo que va a hacer. que luego hace cosas raras, y nos quejamos. pero no sera porque no avisa....). ok. reinstalado, de paso el localepurge que aun no lo tenia, y vamos con los paquetes que vienen a cuento:

 >>> aptitude install readahead dash kexec-tools sysv-rc-conf -t sid
(todo esta (explicado) en alguno de los links que encontrareis en el ultimo post de espaciolinux que enlazo...) (offtopic: niky, contorla los parentesis, que ya empiezas a anidarlos, y luego "la gente" se te pierde.... XDD)

 paso 1. quiza de los mas complicados. quitar cosas que sobran, y reordenar otras. si, hablo de sysv-rc-conf. y dad gracias a que existe, porque lo tengo que hacer a mano, y dimito. : /

(dia siguiente, 7.30 de la tarde. ) vale. ayer, tras instalar eso, el ian dejo de reconocerme tanto el teclado como el raton. en realidad los reconcia, pero solo fuera de las X. ahora mismo acabo de conseguir que los vuelva a reconocer, pero sigo sin tener ni idea que lo que he hecho. yo solo le he dicho (via ssh, gracias a dios que tengo la red lista) que descragase los modulos de hid, y los volviera a cargar. y tachaaan!! sigo escribiendo.

bueno. por el camino, he descubierto la maravilla de kexec: teoricamente, esta diseniado para cargar otro kernel al vuelo, sin reboot de hardware. en la practica, sirve para hacer reboot saltandonos la bios y el grub. muy util para maquinas con un unico sistema, si tienes la costumbre de darle al reboot de vez en cuando. creo que los usuarios de win pagarian por tener algo asi. XDD

resto: pues sigue haciendose la actualizacion (seh, le acabo de volver a decir que actualizase... no es que haya estado toda la noche :P), pero hoy por lo menos, la conexion va a un ritmo normal.

mas. sysv-rc-conf, es un programita muy util si sabes lo que tienes en el arranque. sirve, basicamente, para reordenar las cosas que se cargan en el cambio de runlevel. y ya de paso, quitar cosas que no usas. y para que negarlo: descubrir por que mi maquina ayer no se reiniciaba (bingo, kexec. lo cace mirando el sysv-rc-conf).

en cuanto a readahead, creo que ayer en una de estas paso el cache, y... no he vuelto a saber mas de el. revisemos... ultimo reboot, con kexec, salen... tras tocar un poquito el sysv, 16 segundos. hemos bajado unos dos. nostamal.

voy a ver que mas encuentro, y vuelvo. ;)

bien. tras ver que en el runlevel 2 hay demasiadas cosas que no se lo que son... me he acordado de lo que dijo neurus, de que "dejo la carga de la red para despues de el entorno grafico (...) y con el autologin (...)"

se que algun dia me voy a arrepentir de esto. pero vamos a ser sinceros. nadie que se sientre frente a mi maquina, va a tener la mas minima idea de como manejarla. asi que me da igual que tenga acceso con solo darle a un boton, verdad??

vale, como yo tampoco uso gestor de sesiones, he encontrado la documentacion de arch (como no podia ser de otra manera), explicandolo. https://wiki.archlinux.org/index.php/Automatic_login_to_virtual_console  ahora mismo, estoy experando a que acabe la actualizacion del sistema para instalar mingetty, aunque tal vez con el getty normal, debian me deje hacerlo, ahora que lo pienso..... (agetty no esta en los repos de debian) ahora vengo :P

yyy.. si senior. es una maravilla verlo como se loguea solito. solo con aniadir un "-a USER" en el getty. en fin, ahora voy a dejar de hacer el idiota y voy a trastear con los runlevels que es de lo que iba esto. ahora vengo.

bueno. tras toquetear un poco insserv, y el readahead, me doy cuenta de que esto me va a llevar muucho tiempo, y que no es plan de escribir aqui cada cosa que toque, o esto acabara siendo .... un libro. porque megapost ya va, ya.... lo dicho. volvere con una sgeunda parte, esta vez mas pensada (que eso de escribir sobre la marcha tiene sus pros, pero tambien sus contras... ), contando la optimizacion real mas alla de instalar un par de paquetes, y comentando tambien el tiempo conseguido.