{"id":1094,"date":"2014-09-02T12:05:55","date_gmt":"2014-09-02T18:05:55","guid":{"rendered":"https:\/\/www.lastdragon.net\/?p=1094"},"modified":"2014-09-02T12:08:36","modified_gmt":"2014-09-02T18:08:36","slug":"redhatcentos-6-x-y-anteriores-vs-redhatcentos-7-init-vs-systemd","status":"publish","type":"post","link":"https:\/\/www.lastdragon.net\/?p=1094","title":{"rendered":"RedHat\/CentOS 6.x y anteriores VS RedHat\/CentOS 7 ( INIT vs SYSTEMD )"},"content":{"rendered":"<p>En esta generaci\u00f3n de RedHat y CentOS llegan con un cambio total de paradigma en cuento al inicio del sistema operativo y los servicios que cargan con \u00e9l, pr\u00e1cticamente durante toda la existencia de GNU\/Linux y pr\u00e1cticamente cualquier otro Unix se ha sabido que el proceso n\u00famero 1 es INIT el padre de todo dentro del sistema operativo. Pero ya no mas, es el turno de Systemd<\/p>\n<p><strong>INIT<\/strong><\/p>\n<p>Init es un proceso muy bien conocido tanto en GNU\/Linux como todos Unix que est\u00e1n ah\u00ed a fuera, pero tiene un punto d\u00e9bil,  a pesar de que es el primer proceso que se ejecuta en un sistema multitarea parad\u00f3jicamente es un proceso lineal, primero carga driver por driver, luego servicio por servicio no hay ninguna prioridad de carga , as\u00ed hasta que al terminar su ejecuci\u00f3n queda la pantalla de Login dej\u00e1ndonos saber que el sistema operativo est\u00e1 listo para funcionar.<\/p>\n<p>Este m\u00e9todo monol\u00edtico y lineal hace que INIT tarde mucho en dejar el sistema operativo listo para operar, en esencia hace su trabajo muy bien, tan bien que INIT es el proceso por excelencia para arrancar cualquier unix sin embargo ahora con las modas de los sistemas que arrancan casi de inmediato con solo encender la computadora se requiere mayor velocidad de arranque y es aqu\u00ed donde entra Systemd<\/p>\n<p><strong>Systemd<\/strong><\/p>\n<p>SystemD es el nuevo proceso 1, se incluye en algunas distribuciones de Linux y en CentOS 7 a partir de ahora.<\/p>\n<p>Systemd es un proceso multihilos, esto significa que lanza todos los procesos posibles al mismo tiempo, al mismo tiempo carga, apache, mysql, smtp , pop3 y todos servicios, a diferencia de INIT que espera a que cargue uno por esta vez carga todo a la vez, el resultado es que cualquier maquina con CentOS 7 deber\u00eda arranar en menos de 5 segundos una vez cargado el SystemD<\/p>\n<p>Habr\u00e1 que darle una oportunidad a Systemd para saber si es realmente vale la pena sustituir todos los Init que hasta hoy que han sido muy estables y hacen su funci\u00f3n muy bien.<\/p>\n<p>Que cambia con Systemd<\/p>\n<p>La forma de configurar el sistema, los script de arranque de servicios, la forma de  arrancar servicios, reiniciarlos o pararlos.<\/p>\n<p>Por ejemplo en las versiones CentOS 6.x la llamada manual para arranque y paro de servicios es con el comando services + nombre de servicio + start,stop,restart,status<\/p>\n<p>Por ejemplo<br \/>\nService mysqld stop<\/p>\n<p>Esto cambia al usar Systemd<\/p>\n<p>En systemd el comando es systemctl + start,stop,restart,status + nombre de servicio<\/p>\n<p>systemctl stop mysqld<\/p>\n<p>En CentOS 6.x y  anteriores desactivar un servicio del arranque es con el comando chkconfig<\/p>\n<p>Activar o desactivar mysql en el INIT 3 y 5 para arranque autom\u00e1tico  <\/p>\n<p><code>chkconfig --level 35 mysql on<br \/>\nchkconfig --level 345 mysql off<\/code><\/p>\n<p>en CentOS 7 con systemd<\/p>\n<p><code>systemctl enable mysqld<br \/>\nsystemctl disable mysqld<\/code><\/p>\n<p>Ahora un minihowto como agregar un servicio de arranque usando Systemd<\/p>\n<p>Crear un archivo con extensi\u00f3n .service en \/usr\/lib\/systemd\/system por ejemplo<\/p>\n<p>\/usr\/lib\/systemd\/system\/dragon.service<\/p>\n<p>Contenido:<\/p>\n<p><code>[Unit]<br \/>\nDescription=Servicio de Last Dragon<br \/>\n[Service]<br \/>\nType=oneshot<br \/>\nExecStart=\/bin\/startdragon<br \/>\n[Install]<br \/>\nWantedBy=multi-user.target<\/code><\/p>\n<p>\/bin\/startdragon es un script bash que lanza el servicio, cargando m\u00f3dulos y programas necesario para que el servicio funcione.<br \/>\nEl ejemplo anterior es b\u00e1sicamente la carga de un servicio pero que no puede ser detenido, por ejemplo un driver o un programa que no necesita un proceso de parado, pero si se requiere parar el servicio o programa se le anexa otra l\u00ednea la de ExecStop<\/p>\n<p><code>[Unit]<br \/>\nDescription=Servicio de Last Dragon<\/p>\n<p>[Service]<br \/>\nType=oneshot<br \/>\nExecStart=\/bin\/startdragon<br \/>\nExecStop=\/bin\/stopdragon<br \/>\nRemainAfterExit=yes<br \/>\n[Install]<br \/>\nWantedBy=multi-user.target<\/code><\/p>\n<p>Ahora una demostraci\u00f3n del poder de systemd, en el primer video carga un CentOS 6 que optimice para que arranque lo m\u00e1s r\u00e1pido posible. El segundo sistema operativo en el video es un CentOS 7 que no est\u00e1 optimizado, esta como outbox  , aun as\u00ed se puede apreciar que SystemD sin optimizar es m\u00e1s r\u00e1pido que un arranque con INIT optimizado.<\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"\/\/www.youtube.com\/embed\/xWLE-oWEdAY\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En esta generaci\u00f3n de RedHat y CentOS llegan con un cambio total de paradigma en cuento al inicio del sistema operativo y los servicios que cargan con \u00e9l, pr\u00e1cticamente durante toda la existencia de GNU\/Linux y pr\u00e1cticamente cualquier otro Unix se ha sabido que el proceso n\u00famero 1 es INIT el padre de todo dentro&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,1],"tags":[],"class_list":["post-1094","post","type-post","status-publish","format-standard","hentry","category-consultoria-y-manuales","category-personal"],"_links":{"self":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1094","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1094"}],"version-history":[{"count":2,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1094\/revisions"}],"predecessor-version":[{"id":1096,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1094\/revisions\/1096"}],"wp:attachment":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1094"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1094"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1094"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}