1

Если я захожу на удаленный хост через ssh и запускаю top, он получает файл конфигурации ~/.toprc. Я также могу успешно выполнить следующую команду

ssh -t <user>@<host> "top -b > top.dat"

Тем не менее, это держит сеанс SSH открытым навсегда. Я хочу использовать сессию ssh для запуска процесса пакетной обработки и выхода из сеанса ssh. У меня проблема в том, что все, что я пробовал, либо не работает, либо не получает файл конфигурации ~/.toprc.

Вот что я попробовал:

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"

Все с одинаковыми результатами не забирают ~/.toprc

ssh -t <user>@<host> "top -b > top.dat &"

Верхний выход, когда сессия ssh закрыта (немедленно)

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"

Не поднимает ~/.toprc и жалуется, что псевдотерминал не будет выделен, потому что stdin не является терминалом

Кто-нибудь может объяснить, почему это происходит? Топ говорит, что будет читать $ HOME/.toprc. Я проверил, что $ HOME установлен во всех этих случаях и что $ HOME/.toprc существует. Чем отличаются эти два метода от асинхронных вызовов, которые не принимают файл конфигурации?

Благодарю.

РЕДАКТИРОВАТЬ 1

Вот мой топр

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

РЕДАКТИРОВАТЬ 2

Сожалею... Обе машины не Redhat 7. Я не думал, когда сказал это. Я перехожу с машины Redhat на машину под управлением yocto-linux с использованием ssh-сервера dropbear. Я только что проверил openssh тоже. Вероятно, проблема заключается в ssh-сервере в рецептах yocto. Я только что проверил Redhat в Redhat и уверен, что он работает.

0