Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
Share Thread:
Reboot için bat dosyası
#1
Selamlar
Elimde raspberry pi1 ve raspberry pi2 var ve xbmc kurulu hepsine ssh tan giriş yapıp reboot edebiliyorum. Benim ihtiyacım olan tüm rpi ler için toplu reboot bat dosyası oluşturup bu işi otomatikleştirmek bunu nasıl yapabiliriz?
Ara
Cevapla
#2
Merhabalar;
Sadece ssh alternatifiniz olduğunu düşünerek; ihtiyacınız olan yapı şu şekilde olacak. Öncelikle bütün raspberry pi lere şifresiz açık anahtarla erişim sağlayacaksınız. Bu konu için şunu inceleyebilirsiniz.
http://www.linuxnet.com.tr/viewtopic.php?f=19&t=14598
Raspberry pi lerden bir tanesi - agdaki herhangi bir linux makinede olabilir - ana serveriniz olacak ve sadece ona erişim sağlayarak onun üzerinden komut yollanacak diger makinelere. Bu ana serverda aynı zamanda private-key tutulacak. Yapıyı olusturduktan sonra - ki işin zor kısmı yapıyı oluşturmakta- aşağıdaki sekilde bir komut işletilerek uzak makinede komut çalışması saglanabilir. Bu komutu bir bash script icine butun makinelere uygulayacak sekilde yazarsanız sorun cozulmus olacaktır.
ssh -T -o StrictHostKeyChecking=no -p 22 root@192.168.2.1 < reboot &
Ara
Cevapla
#3
Yukarıdaki cozum biraz karışık gelebilir aslında bildikten sonra cok kolaydır. Farklı yollarlada çözülebilir bu sorun. Şu şekilde daha kolay bir çözüm sağlanabilir.
http://linux.die.net/man/1/knockd
Kolay gelsin.
Ara
Cevapla
#4
Bu scripti hangi ortamda çalıştıracaksınız, Windows, Linux, OSX ?
Lütfen özel mesajla soru sormayın arkadaşlar. Cevaplamayacağım. Bu forumdaki ben de dahil herkese sorabilecekken neden bir kişiyle yetinesiniz ki?

-Dubito, Ergo Cogito, Ergo Sum
Ara
Cevapla
#5
(12-21-2015, 09:34 PM)Arda Nickli Kullanıcıdan Alıntı: Bu scripti hangi ortamda çalıştıracaksınız, Windows, Linux, OSX ?

Windows tan göndereceğim komutları
Ara
Cevapla
#6
[attachment=132 Nickli Kullanıcıdan Alıntı:fthozturk61 pid='5084' dateline='1450723087']
(12-21-2015, 09:34 PM)Arda Nickli Kullanıcıdan Alıntı: Bu scripti hangi ortamda çalıştıracaksınız, Windows, Linux, OSX ?

Windows tan göndereceğim komutları


Arkadaşlar anlatacağım yol üniversal, hem Windows, hem Linux hem de macler için geçerli, sadece indirilen dosyayı kendi işletim sisteminiz için seçip düzenlemeniz yeterli.

Öncelikle putty'nin download sayfasından plink.exe dosyasını indirin:

http://www.chiark.greenend.org.uk/~sgtat...nload.html

Bunu c:\ 'ye koyduğumuzu var sayalım, dosya yolu c:\plink.exe oldu

Plink.exe, putty'nin arka planda gücünü aldığı platform bağımsız ssh programı.

Bu programı kullanarak SSH ile bağlanıp direkt komut çalıştırmak için şu yolu izlemelisiniz:

Kod:
echo n | c:\plink.exe -ssh root@adres -pw parola komut


Komutu anlatmam gerekirse:
  • echo n | : Bağlandıktan sonra ssh keyini cacheleyim mi diye soruyor, onu n (no) diyerek cachelememesini istiyorum. Bu kısaca soruya n diyip entera basıyor diyebilirsiniz. Bunun sebebi olarak eğer makinenizin işletim sistemini değiştirirseniz store edilmiş ssh key pairi artık geçersiz olacağından registry'den ayrıca temizlemeniz gerekir.
  • c:\plink.exe : Plink'in yolu
  • -ssh root@adres : Nasıl ki linux'ta ssh kullanırken ssh kullanıcıadı@ip dersiniz, tamamen aynı komut.
  • -pw parola : Tahmin edeceğiniz gibi, parolayı giriyor.
  • komut : Burada çalıştıracağınız komutu girmelisiniz, eğer boşluk varsa içinde "çift tırnak" içinde girmeyi deneyebilirsiniz. Cihazı yeniden başlatacaksanız komut yerine reboot yazmalısınız.
Bununla bu komutları türetip alt alta hazırladığınız bir .bat (Linux, OSX kullanıcıları da .sh) dosyası ile topluca farklı makinenerde istediğiniz komutu çalıştırabilirsiniz.

Ekteki resimde de örnek çalışan komutu görebilirsiniz. Bizzat deneyip Raspberry Pi'me bağlandım ve "ls" komutunu çalıştırıp klasör listelemesi yaptım.


Ek Dosyalar Ekran Görüntüleri
   
Lütfen özel mesajla soru sormayın arkadaşlar. Cevaplamayacağım. Bu forumdaki ben de dahil herkese sorabilecekken neden bir kişiyle yetinesiniz ki?

-Dubito, Ergo Cogito, Ergo Sum
Ara
Cevapla
#7
Linux kullanıcıları ayrıca "clusterssh" ı deneyebilirler. Tek noktadan birden fazla raspi ya da pcye ssh bağlantısı sağlayıp hepsine aynı anda komut yollamanızı sağlayabilirsiniz.
Ara
Cevapla
#8
zıttı bir yöntem olacak belki ama raspilere erişmek yerine raspileri bir merkezi komut hedefine uğrattırabilirsiniz.
il dışına çıktığımda kuşlarımı kontrol edebilmek için kameradan görüntüyü sunucuma gönderen minik bir sh kullanıyorum. ayrıca cron ile talimatların olduğu bir sitem .com/dosya.txt mevcut. bir kaç iş de o dosyadaki talimata göre yaptırıyorum

Tüm raspileriniz "eğer saniyesi saniyesine işlem gerekmiyorsa" ihtiyaca göre dakikalık-saatlik vs. cron çalıştırarak uzaktaki dosyanıza bakabilr ve gelen talimata göre reboot yap, foto çek gönder, sensörden sıcaklığı al bana mail at,  vs. yapabilir.

Eminim ufku geniş deneyimliler var burada fakat yeni başlayanlara "aa neden olmasın" dedirtir umarak paylaşmak istedim Smile

neden olmasın diyenler için de linux için wget, curl, crontab, if gibi komutlara bakmalarını önerebilirim.

çalışmalarınızda kolaylıklar.
Ara
Cevapla


Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi