Como instalar o ssh, iniciar o início e fechar a sessão ssh com um custom ~ / .toprc

1

Se eu fizer login no meu host remoto via ssh e run top, ele pega o arquivo de configuração ~ / .toprc. Eu também posso executar o seguinte comando com sucesso

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

No entanto, isso mantém a sessão do ssh aberta para sempre. Eu quero usar uma sessão ssh para iniciar um processo em lote superior e sair da sessão ssh. O problema que estou tendo é tudo que eu tentei, ou não funciona ou não pega o arquivo de configuração ~ / .toprc.

Aqui está o que eu tentei:

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"

Tudo com os mesmos resultados de não pegar ~ / .toprc

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

Top sai quando a sessão ssh é fechada (imediatamente)

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"

Não atende ~ / .toprc e reclama que o pseudo-terminal não será alocado porque stdin não é um terminal

Alguém pode explicar por que isso está acontecendo? Top diz que vai ler $ HOME / .toprc. Verifiquei que $ HOME está configurado em todos esses casos e que existe $ HOME / .toprc. O que é diferente sobre esses dois métodos que estão causando as chamadas assíncronas para não pegar o arquivo de configuração?

Obrigado.

EDIT 1

Aqui está o meu toprc

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

EDIT 2

Desculpe ... Ambas as máquinas não são Redhat 7. Eu não estava pensando quando disse isso. Eu estou sshing de uma máquina Redhat em uma máquina rodando yocto-linux usando um servidor ssh dropbear. Eu acabei de testar o openssh também. É provavelmente o servidor ssh nas receitas yocto que estão causando o problema. Acabei de testar Redhat para Redhat e com certeza ele funciona.

    
por jesse_partman 22.02.2018 / 17:02

0 respostas

Tags