
Tengo un script que quiero ejecutar al inicio de Linux, sé que Windows tiene una carpeta de inicio y que Linux también tiene una. Investigué un poco y encontré varios archivos con muchas respuestas contradictorias. El camino:
/etc/systemd/system
parece estar usado. Otro es:
/etc/rc.local
y también he visto:
/etc/init.d
Solo quiero la ruta para un equivalente de Linux de una carpeta de inicio de Windows que existe en todas o al menos en la mayoría de las distribuciones de Linux. También quiero poder colocar un script en ese directorio para que se ejecute al inicio. ¿Qué camino puede cumplir estos requisitos?
Respuesta1
La mayoría de las formas de inicio automático dependen de su instalación: el sistema de inicio que utiliza (sysv vs systemd vs upstart), su entorno de escritorio (GNOME/KDE vs los que no son XDG), etc.
Cron existe en la mayoría de los sistemas Linux y puede usarse para el inicio automático. Añade una línea a tu /etc/crontab
:
@reboot /usr/bin/blah
¿Dónde /usr/bin/blah
está el comando que desea ejecutar?
Si desea que el programa se inicie cada vez que inicie sesión y está utilizando un entorno de escritorio compatible con XDG (por ejemplo, GNOME o KDE), coloque un .desktop
archivo en ~/.config/autostart
. Para ver un ejemplo de un .desktop
archivo, consulte laWiki del arco.
Alternativamente, si su distribución de Linux usa systemd, puede escribir un archivo de unidad. Por ejemplo:
[Unit]
Description=autostart something
[Service]
Type=oneshot
ExecStart=/usr/bin/blah
[Install]
WantedBy=multi-user.target
Coloque el texto anterior /etc/systemd/system/blah.service
y ejecútelo systemctl daemon-reload
como root para registrar el servicio. A continuación, ejecútelo systemctl enable blah.service
para habilitar el inicio automático de su nuevo servicio.
Para obtener detalles sobre cómo escribir un archivo de unidad systemd, consulteeste enlace.