Linux-Äquivalent des Windows-Startordners

Linux-Äquivalent des Windows-Startordners

Ich habe ein Skript, das ich beim Start von Linux ausführen möchte. Ich weiß, dass Windows einen Startordner hat und dass Linux auch einen hat. Ich habe einige Nachforschungen angestellt und verschiedene Dateien mit vielen widersprüchlichen Antworten gefunden. Der Pfad:

/etc/systemd/system

scheint verwendet zu werden. Ein anderes ist:

/etc/rc.local

und ich habe auch gesehen:

/etc/init.d

Ich möchte lediglich den Pfad für ein Linux-Äquivalent eines Windows-Startordners, der auf allen oder zumindest den meisten Linux-Distributionen vorhanden ist. Außerdem möchte ich in diesem Verzeichnis ein Skript ablegen können, damit es beim Start ausgeführt wird. Welcher Pfad kann diese Anforderungen erfüllen?

Antwort1

Die meisten Formen des Autostarts hängen von Ihrer Installation ab: dem von Ihnen verwendeten Init-System (sysv vs. systemd vs. upstart), Ihrer Desktop-Umgebung (GNOME/KDE vs. nicht-XDG-Umgebungen) usw.

Cron ist auf den meisten Linux-Systemen vorhanden und kann für den Autostart verwendet werden. Fügen Sie eine Zeile zu Ihrem hinzu /etc/crontab:

@reboot /usr/bin/blah

wo /usr/bin/blahist der Befehl, den Sie ausführen möchten.

Wenn Sie möchten, dass das Programm bei jeder Anmeldung gestartet wird und Sie eine XDG-kompatible Desktop-Umgebung (z. B. GNOME oder KDE) verwenden, legen Sie eine .desktopDatei in ab ~/.config/autostart. Ein Beispiel für eine .desktopsolche Datei finden Sie imArch-Wiki.

Alternativ können Sie, wenn Ihre Linux-Distribution systemd verwendet, eine Unit-Datei schreiben. Beispiel:

[Unit]
Description=autostart something

[Service]
Type=oneshot
ExecStart=/usr/bin/blah

[Install]
WantedBy=multi-user.target

Geben Sie den obigen Text ein /etc/systemd/system/blah.serviceund führen Sie ihn systemctl daemon-reloadals Root aus, um den Dienst zu registrieren. Führen Sie ihn anschließend aus, systemctl enable blah.serviceum den Autostart Ihres neuen Dienstes zu aktivieren.

Einzelheiten zum Schreiben einer systemd-Unit-Datei finden Sie unterdieser Link.

verwandte Informationen