27 Haziran 2018 Çarşamba

SSHJ ile Raspberry'de Uzaktan Python Çalıştırmak

Merhabalar, Bu yazımızda, Java ile uzaktaki bir makineye programatik olarak SSH ile bağlanıp Python kod çalıştırmayı göreceğiz. Örnek olarak Raspberry 3 makinesi kullanacağız.
SSH işlemleri için SSHJ kütüphanesini kullanacağız. Bu kütüphane ile lokal makinenizde bulunan önceden bağlandığınız makinelerin ssh keylerini kullanarak bağlantı kurulabildiği gibi, kullanıcı adı - şifre bilgilerini kullanarak da bağlantı kurulabilmektedir. Kullanıcı adı - şifre yöntemini kullanarak bağlantı kuracağız.

Öncelikle basit bir komut çalıştırıp çıktısını konsola basalım.
Kısaca örnek kodumuzu anlatalım. IP, port, kullanıcı adı ve şifre bilgilerini kullanarak bir bağlantı açılıyor. SSH client nesnesi ile bir session açılıp komut çalıştırılıyor. Komutun bitmesini beklemek için 5 sn bekletiliyor. Daha sonra komut çıktısı okunarak konsola basılıyor.

Şimdi de SSH client ile session açıp, shell arayüzü ile komutları inputstream şeklinde shell'in standart input'una gönderelim. Örnek basit bir Python kodunu String içerisinde ByteArrayInputStream'e çevirerek gönderiyoruz. Çıktıyı da standart output'dan okuyup konsola basalım.


 Programın çıktısı örnek kodun aşağısında yorum içerisinde bulunmaktadır.

Özetle, programatik olarak SSH ile makineye bağlantı sağlayıp uzak makinanın komut satırını elimizin altına alabiliyoruz.

Komut Satırından Google'lamak

googler isimli komut satırı aracı ile terminalden google aramaları yapabilir, sonuçlar üzerinde dolaşabilirsiniz. Ubuntu makinenize kurm...