{"id":139,"date":"2008-10-10T16:25:09","date_gmt":"2008-10-10T22:25:09","guid":{"rendered":"http:\/\/vostorga.org\/?p=139"},"modified":"2008-10-10T16:25:09","modified_gmt":"2008-10-10T22:25:09","slug":"bootchart-graficando-el-proceso-de-arranque-de-gnulinux","status":"publish","type":"post","link":"https:\/\/vostorga.org\/?p=139","title":{"rendered":"Bootchart: Graficando el proceso de arranque de GNU\/Linux"},"content":{"rendered":"<p>Recientemente me encontr\u00e9 con una herramienta muy curiosa que muestra de forma gr\u00e1fica el proceso de arranque de un GNU\/Linux denominada <a title=\"Sitio del proyecto Bootchart\" href=\"http:\/\/www.bootchart.org\/\" target=\"_blank\">Bootchart<\/a>, la cual realiza su trabajo recolectando informaci\u00f3n de los procesos durante el  arranque y renderizando el resultado a un archivo png, svg (Scalable Vector Graphics) o a un eps (PostScript).<\/p>\n<p>La intenci\u00f3n de bootchart es mostrar cuando arrancan los procesos, cu\u00e1nto tiempo de CPU utilizan, utilizaci\u00f3n de disco, en otras palabras, una imagen que muestre lo que sucede durante el proceso de arranque y ayude a la posterior depuraci\u00f3n\/optimizaci\u00f3n del mismo.<\/p>\n<p><em><strong>Instalando&#8230;<\/strong><\/em><\/p>\n<p>La instalaci\u00f3n en Gentoo es sencilla<\/p>\n<p>Desenmascaramos el paquete (en mi caso tengo el keyword amd64, para otros ser\u00e1 x86)<\/p>\n<p><em># echo &#8220;app-benchmarks\/bootchart   ~amd64&#8221; &gt;&gt; \/etc\/portage\/package.keywords<\/em><\/p>\n<p>Agregamos la use flaga <em>java<\/em> para poder generar archivos png<\/p>\n<p><em># echo &#8220;app-benchmarks\/bootchart java&#8221; &gt;&gt; \/etc\/portage\/package.use<\/em><\/p>\n<p>Instalamos<\/p>\n<p><em># emerge app-benchmarks\/bootchart<\/em><\/p>\n<p><strong><em>Configurando bootchart<\/em><\/strong><\/p>\n<p>Es necesario agregar <em>init=\/sbin\/bootchartd<\/em> al final de la l\u00ednea del kernel correspondiente, dentro del archivo <em>\/boot\/grub\/menu.lst<\/em> por ejemplo:<strong><strong><\/strong><\/strong><\/p>\n<p><em>kernel \/boot\/kernel-2.6.25-gentoo-r7-vostorga-0.33 init=\/sbin\/bootchartd<\/em><\/p>\n<p>Es necesario editar el archivo \/etc\/conf.d\/rc y cambiar<\/p>\n<pre><em>RC_USE_BOOTCHART=\"yes\"<\/em><\/pre>\n<p>El archivo de configuraci\u00f3n \/etc\/bootchartd.conf est\u00e1 muy bien documentado, pero igualmente las opciones siguientes son posiblemente en las que estaremos m\u00e1s interesados:<\/p>\n<p>#Esta opci\u00f3n nos permite utilizar BSD Accounting el cual nos permite que la visualizaci\u00f3n de procesos sea m\u00e1s exacta, pero para activarlo necesitamos que la opci\u00f3n CONFIG_BSD_PROCESS_ACCT_V3 (General setup-&gt; BSD Process Accounting-&gt; BSD Process Accounting version 3 file format) est\u00e9 activada en el Kernel , igualmente bootchart funciona si la dejamos como &#8220;no&#8221;<\/p>\n<p>PROCESS_ACCOUNTING=&#8221;yes&#8221;<\/p>\n<p>#Localizaci\u00f3n del archivo comprimido donde estar\u00e1n los logs de Bootchart<\/p>\n<p>BOOTLOG_DEST=\/var\/log\/bootchart.tgz<\/p>\n<p>#Determina si se realizar\u00e1 autom\u00e1ticamente el gr\u00e1fico una vez termine el proceso de arranque<\/p>\n<p>AUTO_RENDER=&#8221;yes&#8221;<\/p>\n<p>#Determina el formato del gr\u00e1fico, las opciones disponibles son png, svg y eps<\/p>\n<p>AUTO_RENDER_FORMAT=&#8221;png&#8221;<\/p>\n<p>#Directorio donde se guardar\u00e1n los gr\u00e1ficos<\/p>\n<p>AUTO_RENDER_DIR=&#8221;\/var\/log&#8221;<\/p>\n<p><em><strong>Y la prueba&#8230;&#8230;la gr\u00e1fica<\/strong><\/em><\/p>\n<p>Por ultimo, reiniciamos y obtenemos algo como lo siguiente:<\/p>\n<p><a title=\"Bootchart en accion\" href=\"https:\/\/vostorga.org\/wp-content\/uploads\/2008\/10\/primero.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-148\" title=\"bootchart-cuadrado-thumb\" src=\"https:\/\/vostorga.org\/wp-content\/uploads\/2008\/10\/bootchart-cuadrado-thumb.png\" alt=\"\" width=\"356\" height=\"356\" srcset=\"https:\/\/vostorga.org\/wp-content\/uploads\/2008\/10\/bootchart-cuadrado-thumb.png 356w, https:\/\/vostorga.org\/wp-content\/uploads\/2008\/10\/bootchart-cuadrado-thumb-150x150.png 150w, https:\/\/vostorga.org\/wp-content\/uploads\/2008\/10\/bootchart-cuadrado-thumb-300x300.png 300w\" sizes=\"(max-width: 356px) 100vw, 356px\" \/><\/a><\/p>\n<p>&#8230;..47 segundos en mi caso, cu\u00e1les son sus tiempos?<\/p>\n<p>PD: No reinicio muchas veces ya que suspendo, pero es divertido debugguear el arrance<\/p>\n<p>PD2: Luego daremos un vistazo al baselayout2+openrc que seguro disminuye el arranque en Gentoo GNU\/Linux<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recientemente me encontr\u00e9 con una herramienta muy curiosa que muestra de forma gr\u00e1fica el proceso de arranque de un GNU\/Linux denominada Bootchart, la cual realiza su trabajo recolectando informaci\u00f3n de los procesos durante el arranque y renderizando el resultado a un archivo png, svg (Scalable Vector Graphics) o a un eps (PostScript). La intenci\u00f3n de [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[72,70,71],"class_list":["post-139","post","type-post","status-publish","format-standard","hentry","category-linux","tag-boot","tag-bootchart","tag-graficar"],"_links":{"self":[{"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/posts\/139"}],"collection":[{"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/vostorga.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=139"}],"version-history":[{"count":15,"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/posts\/139\/revisions"}],"predecessor-version":[{"id":156,"href":"https:\/\/vostorga.org\/index.php?rest_route=\/wp\/v2\/posts\/139\/revisions\/156"}],"wp:attachment":[{"href":"https:\/\/vostorga.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=139"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vostorga.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=139"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vostorga.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=139"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}