CENTOS-Befehl wird beim Start nicht ausgeführt

737
Abu Stouf

Ich habe rtorrentinstalliert und versuche diesen Befehl auszuführen, damit er beim Start automatisch ausgeführt wird:

screen -S rtorrent -d -m su root -c "rtorrent" 

Ich habe es hinzugefügt zu: nano /etc/rc.local

Beim Neustart scheint jedoch nichts zu passieren. Wenn ich es in mein Terminal eingebe, kommt es ohne Probleme in Ordnung. Warum?

0

1 Antwort auf die Frage

1
Lewis M

/etc/rc.local wird zum Starten von Diensten verwendet. Dienste haben normalerweise keine GUI oder erfordern eine Benutzerinteraktion. Wenn Sie davon ausgehen, dass rtorrent automatisch ein Fenster öffnet, geschieht dies nicht, da rtorrent nicht weiß, welches DISPLAY oder tty für die Anzeige verwendet werden soll.

Wenn Sie möchten, dass rtorrent beim Einloggen automatisch startet, setzen Sie den Befehl rtorrent in eine Ihrer .bash-Dateien. Denken Sie jedoch daran, zu überprüfen, ob es bereits läuft, wenn Sie nicht möchten, dass es jedes Mal aufgerufen wird, wenn Sie ein neues Terminalfenster oder eine andere Anwendung starten, die in den .bash-Dateien gespeichert ist.

Hoffe das hilft.

AKTUALISIEREN:

Von https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html

Wenn Bash als interaktive Login-Shell oder als nicht interaktive Shell mit der Option --login aufgerufen wird, werden zuerst Befehle aus der Datei / etc / profile gelesen und ausgeführt, sofern diese Datei vorhanden ist. Nach dem Lesen dieser Datei sucht sie in dieser Reihenfolge nach ~ / .bash_profile, ~ / .bash_login und ~ / .profile und liest und führt Befehle aus dem ersten vorhandenen aus, der lesbar ist.

Wenn Sie Ihren Befehl beispielsweise in Ihre Datei ~ / .bash_login einfügen, wird beispielsweise bei jeder Anmeldung alles in ~ / .bash_login ausgeführt, einschließlich Ihres Befehls rtorrent.

Übrigens, ~ steht für Ihr Home-Verzeichnis oder $, falls Sie das nicht wussten.

welche bash-datei? Es tut mir leid, dass ich mit Linux nicht so gut bin, aber ich lerne. Abu Stouf vor 5 Jahren 0