Wie man ssh reinlegt, top startet und die ssh-Sitzung mit einem benutzerdefinierten ~ / .toprc beendet
Wenn ich mich über SSH bei meinem Remote-Host anmelde und top laufe, wird die Konfigurationsdatei ~ / .toprc abgerufen. Ich kann den folgenden Befehl auch erfolgreich ausführen
ssh -t <user>@<host> "top -b > top.dat"
Dies hält jedoch die ssh-Sitzung für immer offen. Ich möchte eine SSH-Sitzung verwenden, um einen Top-Batch-Prozess zu starten und die SSH-Sitzung zu beenden. Das Problem, das ich habe, ist alles, was ich ausprobiert habe. Entweder funktioniert die ~ / .toprc-Konfigurationsdatei nicht.
Folgendes habe ich ausprobiert:
ssh <user>@<host> "top -b > top.dat &" ssh -f <user>@<host> "top -b > top.dat" ssh -f <user>@<host> "nohup top -b > top.dat &" ssh <user>@<host> "nohup top -b > top.dat &" ssh -f <user>@<host> "nohup top -b > top.dat"
Alle mit den gleichen Ergebnissen, wenn Sie ~ / .toprc nicht aufnehmen
ssh -t <user>@<host> "top -b > top.dat &"
Top-Exits, wenn die SSH-Sitzung geschlossen ist (sofort)
ssh -ft <user>@<host> "top -b > top.dat" ssh -ft <user>@<host> "nohup top -b > top.dat &" ssh -ft <user>@<host> "nohup top -b > top.dat"
Übernimmt ~ / .toprc nicht und beschwert sich, dass das Pseudo-Terminal nicht zugewiesen wird, da stdin kein Terminal ist
Kann jemand erklären, warum das so ist? Top sagt, es würde $ HOME / .toprc lesen. Ich habe bestätigt, dass in allen diesen Fällen $ HOME gesetzt ist und $ HOME / .toprc vorhanden ist. Was ist an diesen beiden Methoden so, dass asynchrone Aufrufe die Konfigurationsdatei nicht abrufen?
Vielen Dank.
BEARBEITEN 1
Hier ist mein Ziel
top's Config File (Linux processes with windows) Id:i, Mode_altscr=0, Mode_irixps=1, Delay_time=1.0, Curwin=0 Def fieldscur=�������ķ���&')*+,-./012���������FGHIJKLMN��QRSTUVWXYZ[\]^_`abcdefghij winflags=193840, sortindx=18, maxtasks=0, graph_cpus=0, graph_mems=0 summclr=1, msgsclr=1, headclr=3, taskclr=1 Job fieldscur=�����(��Ļ�@<��)*+,-./012568>?ABCFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij winflags=193844, sortindx=0, maxtasks=0, graph_cpus=0, graph_mems=0 summclr=6, msgsclr=6, headclr=7, taskclr=6 Mem fieldscur=���<�����MBN�D34��&'()*+,-./0125689FGHIJKLOPQRSTUVWXYZ[\]^_`abcdefghij winflags=193844, sortindx=21, maxtasks=0, graph_cpus=0, graph_mems=0 summclr=5, msgsclr=5, headclr=4, taskclr=5 Usr fieldscur=�����������)+,-./1234568;<=>?@ABCFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij winflags=193844, sortindx=3, maxtasks=0, graph_cpus=0, graph_mems=0 summclr=3, msgsclr=3, headclr=2, taskclr=3 Fixed_widest=0, Summ_mscale=0, Task_mscale=0, Zero_suppress=0
BEARBEITEN 2
Entschuldigung ... Beide Maschinen sind keine Redhat 7. Ich habe nicht gedacht, als ich das sagte. Ich sshing von einer Redhat-Maschine zu einer Maschine, auf der yocto-linux mit einem dropbear-ssh-Server ausgeführt wird. Ich habe auch openssh getestet. Es ist wahrscheinlich der ssh-Server in den yocto-Rezepten, der das Problem verursacht. Ich habe Redhat gerade mit Redhat getestet und es funktioniert wirklich.
0 Antworten auf die Frage
Verwandte Probleme
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?
-
10
Wie richte ich SSH ein, damit ich mein Passwort nicht eingeben muss?
-
3
Wie kann ich ssh verwenden, um einen Befehl auf einem Remote-Unix-Computer auszuführen und zu beende...
-
8
Benennen Sie eine Gruppe von Dateien mit einem Befehl um
-
2
Warum aktualisiert sich mein Pfad nicht * jetzt *?
-
5
Wie entferne ich einen symbolischen Link zu einem Verzeichnis?
-
8
Rette mich vor dem Kauderwelsch
-
9
Wie kann ich jeder Zeile einer Textdatei eine Zeilennummer und einen Tabulator voranstellen?