{"id":476476,"date":"2023-08-09T07:29:55","date_gmt":"2023-08-09T07:29:55","guid":{"rendered":""},"modified":"2023-09-05T11:12:51","modified_gmt":"2023-09-05T11:12:51","slug":"cron","status":"publish","type":"wiki","link":"https:\/\/oneproxy.pro\/es\/wiki\/cron\/","title":{"rendered":"cron"},"content":{"rendered":"<p>Cron es un servicio de programaci\u00f3n de trabajos basado en el tiempo que se encuentra en sistemas operativos tipo Unix. Los usuarios programan trabajos (comandos o scripts) para que se ejecuten peri\u00f3dicamente en horas, fechas o intervalos fijos.<\/p>\n<h2>El origen y la historia temprana de Cron<\/h2>\n<p>La primera implementaci\u00f3n de cron se remonta a la versi\u00f3n 7 de Unix. El t\u00e9rmino \u201ccron\u201d proviene de la palabra griega que significa tiempo, \u201cchronos\u201d. Esta versi\u00f3n de Unix, lanzada en 1979, ten\u00eda un programa cron simple que ejecutaba tareas en intervalos espec\u00edficos. La funcionalidad de Cron fue posteriormente ampliada por Paul Vixie en 1987. Esta versi\u00f3n, conocida como Vixie Cron, es la versi\u00f3n que se instala con mayor frecuencia en la actualidad y es la versi\u00f3n a la que generalmente se hace referencia cuando la gente menciona &quot;Cron&quot;.<\/p>\n<h2>Ampliando el concepto de Cron<\/h2>\n<p>Cron permite a los usuarios automatizar el mantenimiento o la administraci\u00f3n del sistema, aunque su naturaleza de prop\u00f3sito general lo hace \u00fatil para cosas como descargar archivos de Internet y descargar correos electr\u00f3nicos a intervalos regulares. Un entorno cron es como un entorno limitado en el que las tareas cron se ejecutan desde el entorno shell normal.<\/p>\n<p>Cada usuario puede tener su propio crontab y, aunque son archivos en \/var\/spool\/, no est\u00e1n pensados para editarse directamente. La sintaxis de las expresiones cron se puede dividir en dos tipos principales de sintaxis: sintaxis cron de Unix y una sintaxis m\u00e1s compleja conocida como sintaxis de expresi\u00f3n cron o sintaxis cron de cuarzo.<\/p>\n<h2>La estructura interna de Cron y c\u00f3mo funciona<\/h2>\n<p>Cron funciona sobre la base de un archivo de configuraci\u00f3n simple pero potente conocido como archivo &quot;crontab&quot;. Este archivo contiene una l\u00ednea para cada tarea que se ejecutar\u00e1, compuesta por cinco campos de fecha y hora, seguidos de un comando que se ejecutar\u00e1 en momentos espec\u00edficos.<\/p>\n<p>Los cinco campos representan:<\/p>\n<ol>\n<li>Minutos despu\u00e9s de la hora (0 \u2013 59)<\/li>\n<li>Horas en un d\u00eda (0 \u2013 23)<\/li>\n<li>D\u00edas en un mes (1 \u2013 31)<\/li>\n<li>Meses en un a\u00f1o (1 \u2013 12)<\/li>\n<li>D\u00edas de la semana (0 \u2013 7, donde 0 y 7 son domingo)<\/li>\n<\/ol>\n<p>El campo de comando contiene la tarea que se ejecutar\u00e1 en los momentos especificados en los primeros cinco campos.<\/p>\n<h2>Caracter\u00edsticas clave de Cron<\/h2>\n<p>Las caracter\u00edsticas principales de Cron incluyen:<\/p>\n<ol>\n<li>Permite que las tareas se ejecuten autom\u00e1ticamente en segundo plano a intervalos regulares.<\/li>\n<li>Proporciona una plataforma flexible para programar tareas (scripts o comandos) con una variedad de unidades de tiempo.<\/li>\n<li>Cada usuario puede tener su propio archivo crontab.<\/li>\n<li>Los trabajos cron se pueden programar para que se ejecuten por minuto, hora, d\u00eda de la semana, d\u00eda del mes y mes del a\u00f1o.<\/li>\n<li>Cron proporciona una forma sencilla y eficaz de automatizar diversas tareas del sistema.<\/li>\n<\/ol>\n<h2>Tipos de cron<\/h2>\n<p>Los trabajos cron generalmente se pueden clasificar de la siguiente manera:<\/p>\n<table>\n<thead>\n<tr>\n<th>Tipo<\/th>\n<th>Descripci\u00f3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Reiniciar<\/td>\n<td>Se ejecuta una vez al inicio.<\/td>\n<\/tr>\n<tr>\n<td>Anacr\u00f3n<\/td>\n<td>Se ejecuta a intervalos especificados en d\u00edas.<\/td>\n<\/tr>\n<tr>\n<td>Cron del sistema<\/td>\n<td>Almacenados en \/etc\/crontab y en el directorio \/etc\/cron.d\/, est\u00e1n pensados para todo el sistema.<\/td>\n<\/tr>\n<tr>\n<td>Usuario cron<\/td>\n<td>Cada usuario puede tener los suyos propios y se almacenan en \/var\/spool\/cron\/crontabs\/.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Uso de Cron, problemas y sus soluciones<\/h2>\n<p>Cron es \u00fatil para automatizar tareas, pero puede generar problemas si no se usa con cuidado. Por ejemplo, un trabajo cron mal configurado puede provocar un uso elevado de la CPU. Adem\u00e1s, cron solo env\u00eda por correo electr\u00f3nico el resultado de sus trabajos, si los hay, al usuario con el que ejecuta los trabajos. Esto podr\u00eda causar errores perdidos si no se revisa regularmente.<\/p>\n<p>Las soluciones comunes a estos problemas incluyen:<\/p>\n<ul>\n<li>Comprobar peri\u00f3dicamente el uso elevado de CPU y reconfigurar o detener trabajos innecesarios.<\/li>\n<li>Aseg\u00farese de que todos los comandos y scripts se ejecuten correctamente antes de configurarlos como trabajos cron.<\/li>\n<li>Redirigir la salida a un archivo de registro o configurar un servidor de correo para monitorear los trabajos cron de manera m\u00e1s efectiva.<\/li>\n<\/ul>\n<h2>Comparaciones con herramientas similares<\/h2>\n<p>Existen otros programadores de tareas similares a cron, como los temporizadores anacron y systemd. Las principales diferencias entre estos se pueden resumir como:<\/p>\n<table>\n<thead>\n<tr>\n<th>Herramienta<\/th>\n<th>Descripci\u00f3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>cron<\/td>\n<td>Adecuado para tareas que se ejecutar\u00e1n en momentos espec\u00edficos del d\u00eda. No ejecuta trabajos perdidos.<\/td>\n<\/tr>\n<tr>\n<td>Anacr\u00f3n<\/td>\n<td>Adecuado para tareas que se ejecutar\u00e1n una vez al d\u00eda\/semanal\/mensualmente. Ejecutar\u00e1 los trabajos perdidos cuando la m\u00e1quina vuelva a estar en l\u00ednea.<\/td>\n<\/tr>\n<tr>\n<td>sistemad<\/td>\n<td>Adecuado para escenarios m\u00e1s complejos ya que ofrece m\u00e1s opciones y se integra bien con distribuciones modernas de Linux.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Perspectivas de futuro y tecnolog\u00edas relacionadas<\/h2>\n<p>A medida que los sistemas basados en Unix contin\u00faan evolucionando, tambi\u00e9n lo hace Cron. A pesar de la aparici\u00f3n de programadores de tareas m\u00e1s avanzados como systemd, la simplicidad y el poder de Cron garantizan que siga siendo de uso com\u00fan en la actualidad.<\/p>\n<p>La reciente tendencia hacia aplicaciones en contenedores y arquitecturas de microservicios tambi\u00e9n ha generado nuevas formas de utilizar Cron. Por ejemplo, Kubernetes, una popular plataforma de orquestaci\u00f3n de contenedores, tiene una caracter\u00edstica conocida como CronJobs, que es similar a Cron en los sistemas basados en Unix.<\/p>\n<h2>Servidores Proxy y Cron<\/h2>\n<p>Los servidores proxy se pueden utilizar eficazmente en combinaci\u00f3n con Cron para automatizar determinadas tareas. Por ejemplo, si tiene una secuencia de comandos que necesita acceder peri\u00f3dicamente a un sitio web o API a trav\u00e9s de un servidor proxy, puede configurar una tarea cron para ejecutar esa secuencia de comandos en intervalos espec\u00edficos.<\/p>\n<p>Cron tambi\u00e9n podr\u00eda usarse para rotar servidores proxy en intervalos espec\u00edficos, reduciendo la posibilidad de que se bloquee un solo proxy. Por ejemplo, los servicios de proxy de OneProxy se pueden automatizar con Cron para tareas como extracci\u00f3n de datos, automatizaci\u00f3n de tareas de redes sociales y m\u00e1s.<\/p>\n<h2>enlaces relacionados<\/h2>\n<p>Para obtener m\u00e1s informaci\u00f3n sobre Cron, considere los siguientes recursos:<\/p>\n<ul>\n<li><a href=\"https:\/\/man7.org\/linux\/man-pages\/man5\/crontab.5.html\" target=\"_new\" rel=\"noopener nofollow\">P\u00e1gina de manual de Crontab<\/a><\/li>\n<li><a href=\"https:\/\/en.wikipedia.org\/wiki\/Cron\" target=\"_new\" rel=\"noopener nofollow\">Cron en Wikipedia<\/a><\/li>\n<li><a href=\"https:\/\/www.freebsd.org\/cgi\/man.cgi?query=cron&amp;sektion=8\" target=\"_new\" rel=\"noopener nofollow\">Vixie Cron<\/a><\/li>\n<\/ul>","protected":false},"featured_media":468042,"menu_order":0,"template":"","meta":{"_acf_changed":false,"content-type":"","inline_featured_image":false,"footnotes":""},"class_list":["post-476476","wiki","type-wiki","status-publish","has-post-thumbnail","hentry"],"acf":{"faq_title":"Frequently Asked Questions about <mark>Cron: A Comprehensive Guide<\/mark>","faq_items":[{"question":"What is Cron?","answer":"<p>Cron is a time-based job scheduling service found in Unix-like operating systems, which allows users to automate tasks to run periodically at fixed times, dates, or intervals.<\/p>"},{"question":"Where did Cron originate from?","answer":"<p>The first implementation of Cron dates back to Version 7 Unix, released in 1979. The term \"cron\" comes from the Greek word for time, \"chronos\". Cron's functionality was later expanded by Paul Vixie in 1987, with this version commonly referred to as \"Cron\" today.<\/p>"},{"question":"How does Cron work?","answer":"<p>Cron operates through a configuration file known as a \"crontab\" file. This file contains one line for each task to be run, consisting of five time and date fields, followed by a command to be run at the specified times.<\/p>"},{"question":"What are the key features of Cron?","answer":"<p>Cron allows tasks to run automatically in the background at regular intervals. It provides a flexible platform to schedule tasks with a variety of time units. Each user can have their own crontab file, and Cron jobs can be scheduled by the minute, hour, day of the week, day of the month, and month of the year.<\/p>"},{"question":"What types of Cron exist?","answer":"<p>Cron jobs can generally be categorized as Reboot, Anacron, System Cron, and User Cron.<\/p>"},{"question":"What are some common problems and solutions with using Cron?","answer":"<p>Common problems with using Cron include high CPU usage and overlooked errors due to Cron only emailing the output of its jobs. These issues can be mitigated by regularly checking for high CPU usage, ensuring commands and scripts run correctly before setting them as cron jobs, and setting up a mail server or redirecting output to a logfile for more effective monitoring.<\/p>"},{"question":"How does Cron compare to other similar tools?","answer":"<p>Cron is suitable for tasks to be run at specific times and does not run missed jobs. In contrast, Anacron is suitable for tasks to be run once daily\/weekly\/monthly and will run missed jobs when the machine is back online. Systemd offers more options and integrates well with modern Linux distributions, making it suitable for more complex scenarios.<\/p>"},{"question":"What is the future of Cron and related technologies?","answer":"<p>As Unix-based systems evolve, so does Cron. The trend towards containerized applications and microservices architectures has introduced new ways to use Cron, like Kubernetes' feature known as CronJobs.<\/p>"},{"question":"How can proxy servers be used with Cron?","answer":"<p>Proxy servers can be used with Cron to automate tasks, such as accessing a website or API through a proxy server at specified intervals. Cron can also be used to rotate proxies at intervals, reducing the chance of any single proxy being blocked.<\/p>"}]},"_links":{"self":[{"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/wiki\/476476","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/wiki"}],"about":[{"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/types\/wiki"}],"version-history":[{"count":0,"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/wiki\/476476\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/media\/468042"}],"wp:attachment":[{"href":"https:\/\/oneproxy.pro\/es\/wp-json\/wp\/v2\/media?parent=476476"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}