Paramiko pomija niektóre dane na kanale

Próbuję wykonać polecenie, które wącha port szeregowy i drukuje na standardowe wyjście. Polecenie działa nieprzerwanie, nie wychodzi ani się nie zatrzymuje. Kiedy używam konsoli putty SSH, widzę dane stale aktualizowane na konsoli.

Mogę wysłać polecenie i rozpocząć śledzenie. Kiedy próbuję odczytać dane wyjściowe za pomocą kanału Paramiko odczytanego za pomocąrecv funkcjonować. Obserwuję, że nie przechwytuje wszystkich danych wysłanych przez sniffera.

Wykonujęrecv operacja po sprawdzeniurecv_ready status.

Poniżej znajduje się kod. Jak mogę uniknąć pominięcia danych?

ssh= paramiko.SSHClient()
ssh.load_system_host_keys()
ssh.connect('host.example.com')
channel = ssh.get_transport().open_session()
channel.get_pty()

channel.exec_command("sniff /dev/stty2")

while(True):
    if(channel.recv_ready): # Doesnt get triggered often
        print channel.recv(2048) # Reads only a part of the data

questionAnswers(2)

yourAnswerToTheQuestion