Bir bilgisayardan tüm bilgisayara bir şey nasıl kurulur?


9

Üniversite laboratuvarımda tüm bilgisayarlar LAN ile bağlı, bu yüzden bir bilgisayardan tüm bilgisayara 'spyder' yazılımı yüklemek istiyorum.
Mümkün mü ?


Yönetici siz misiniz? Değilse, önce izin alın.
Thorbjørn Ravn Andersen

Ben yüklü UbuntuAynı kullanıcı (CSLAB) ve aynı passwrod (E201) ile üniversite laboratuarında her bilgisayarda ve tüm bilgisayarların aynı LAN ile bağlanır. Her bilgisayar kullanıcısı için nasıl yönetici olabilirim?
Abhishek Kamal

1
@AbhishekKamal, bir tavsiye sözcüğü .. Herkese açık web sitelerinde gerçek kullanıcı adları (ve şifreler ??) yayınlamayın. Ayrıca, "E201" gerçekten yönetici şifrenizse, onu daha güvenli bir şeyle değiştirmeyi düşünün!
tplive

Ansible ve clusterssh gibi çözümler (aşağıda belirtilmiştir) yönetmek istediğiniz bilgisayarlara bağlanmak için SSH kullanır. Otomasyonun sorunsuz çalışması için bilgisayarlar arasında güveni onaylayan (yani, bilgisayarınıza tüm yönetilen bilgisayarlar tarafından güvenilen) parolasız erişim ayarlayabilirsiniz (ve yapmalısınız).
tplive

1
Ubuntu'daki bir "yönetici", "sudo -s" ile (ve sonra yazılımı yüklemek için "apt" komutunu çalıştırarak) root olabilecek birinden başka bir şey değildir. Bunu ilk etapta neden yapıyorsun?
Thorbjørn Ravn Andersen

Yanıtlar:


14

Bunun için tercih ettiğim çözüm Ansible ( https://www.ansible.com/ ). İstediğiniz kadar bilgisayar arasında her türlü yapılandırmayı veya yüklemeyi otomatikleştirmenizi sağlar. Ansible'ın diğer bir tarafı da, çoğu yapılandırma ve kurulum görevini gerçekleştirmek için zaten çok sayıda sağlam komut dosyası sunan topluluktur.

Bu , Ansible ile çalışmaya başlamanız için oldukça anlaşılır bir öğretici gibi görünüyor .

Ancak, bu birden fazla bilgisayarda çalıştırmak istediğiniz tek seferlik bir komutsa, Bash'te komut dosyası yazmanız daha iyi olur .


12

Sadece birkaç basit komut çalıştırmanız gerekiyorsa ve kullanabileceğiniz karmaşık otomasyon yazılımlarını (ansible, salt veya kukla gibi) yapılandırmak istemiyorsanız clusterssh.

Yüklemek için bir komut satırı penceresi açın

sudo apt-get install clusterssh

şimdi bir dizi ana bilgisayara bağlantı açabilirsiniz, bunun gibi

clusterssh -l username labhost1 labhost2 labhost3

clusterssh size komutlarınızı girmeniz için bir pencere verir, ancak bağlandığınız her ana bilgisayar için bir terminal penceresi verir - böylece gerçekte ne olduğunu görebilirsiniz!

ClusterSSH örneği Bu örnekte, sağda "apt-get update" ve soldaki tüm küme terminallerine sahip komut penceresini görebilirsiniz.

Ana bilgisayarlardan birinde bir sorun varsa, hemen hata mesajını görebilir ve durumu düzeltmek için ilgili terminale tıklayabilirsiniz.

Ayrıca clustersshbağlanmak için bir liste de yazabilirsiniz : Favori düzenleyicinizi açın ve$HOME/.clusterssh/clusters

collegelab labhost1
collegelab labhost2
collegelab labhost3

sonra bağlan

clusterssh -l username collegelab

daha fazla okuma


Adil olmak gerekirse, muhtemelen Ansible komut satırından küme için önerdiğiniz kadar basit ve kolay bir şekilde yapabilirsiniz .. :) Ana bilgisayarlarınızı bir envanter dosyasına koyun ve komutu aşağıdaki gibi terminalden çalıştırınansible inventory -a 'shell command goes here'
tplive

1
@tplive emin, bunu sadece ssh komutları ile de yapabilirsiniz, orada da pssh.... ama clusterssh ile anında geri bildirim ve bir sorun varsa durdurmak / gidermek için bir yol var. Bu sadece bir şeyler yapmanın alternatif bir yoludur. Şahsen bir yazılım otomasyonunu tercih ederim (ansible gibi).
Robert Riedl

Üniversite laboratuvarımda, her bilgisayarın aynı kullanıcı adı ve parolası vardır . peki clustersshya da bunun ansibleiçin kullanabilir miyim?
Abhishek Kamal

@RobertRiedl ve bu yüzden cevabınızı iptal ettim .. :)
tplive

1
@AbhishekKamal Kesinlikle! Parolasız oturum açma ile en sorunsuz deneyimi elde etmek için, genel ssh anahtarınızı ssh-copy-idveya benzerlerini kullanarak her bilgisayardaki yetkili_anahtarlar dosyasına koyun .
tplive

0

Ağdaki bilgisayarların tüm ana bilgisayar adlarını veya ip adreslerini bildiğinizi ve genel anahtar kimlik doğrulamasını etkinleştirdiğinizi varsayan çok temel bir sıralı çözüm. Daha fazla ayrıntı için buraya bakın - https://man.openbsd.org/ssh-keygen.1

  1. Yeni bir dosya oluşturun örn. hosts.txt
  2. Söz konusu dosyanın her satırını LAN'ınızdaki kutuların ip adresleri veya ana bilgisayar adlarıyla doldurun
  3. Dosyadaki her satırda yineleme yapın ve yazılımı ana bilgisayara şu şekilde yükleyin

for i in `cat hosts.txt`; do ssh $i apt-get --assume-yes install spyder; echo ; done


@bunnydrug LAB'ımdaki tüm bilgisayarlar için ana bilgisayar adı CSLAB ve parola E201. hosts.txtdosyada ne yazmalıyım
Abhishek Kamal
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.