2008-10-11 14 views
8

Piszę skrypt, który uruchamia system poprzez sieć. A potem muszę uruchomić kilka poleceń na drugim hoście. Skąd mam wiedzieć, czy system jest włączony?Skąd mam wiedzieć, czy system jest włączony?

Mój język programowania to Perl, a docelowym hostem jest RHEL5.

Czy jest jakieś przerwanie jądra lub informacja o rozruchu sieci, która wskazuje, że system jest włączony, a system operacyjny został załadowany?

[W innym scenariuszu] Zastanawiam się również na wypadek, gdyby po prostu włączyłem moją Maszynę ręcznie. kiedy jest dokładnie powiedziane, że ma włączone zasilanie. i kiedy system operacyjny powinien całkowicie uruchomić się w celu wykonania operacji związanej z siecią, na przykład w celu wykonania polecenia sieciowego. Co się stanie, jeśli system działa w oparciu o DHCP, w jaki sposób system zdalny wyszuka ten komputer [myślę, że jest to możliwe za pośrednictwem adresu mac. ale jeśli się mylę].

Jeśli przegapiłem jakieś informacje, proszę pytać mnie. Jeśli masz jakieś sugestie, aby ułatwić zadanie proszę ich powierzchni :)

thanx imkin

Odpowiedz

12

Cóż, powiedziałbym, że system jest uruchamiany, gdy może wykonać żądania już wykonaną z nim. Oznacza to, że demon sshd działa. To jest wystarczające dla twoich celów (jak zakładam - zastępuj demona, którego naprawdę potrzebujesz).

Wysyłam więc sygnał włączenia zasilania i sprawdzam co 15-30 sekund, aby sprawdzić, czy mogę się połączyć. Jeśli nie udało mi się połączyć w rozsądnym czasie dla tego komputera (2 minuty lub 5 minut lub cokolwiek innego), wysłałbym alert do zespołu wsparcia IT. Cóż, najpierw wyślę to do siebie i tylko raz zbadałem kilka błędów i stwierdziłem, że wszystkie są legalne, zacznę wysyłać je bezpośrednio do IT.

DHCP to rodzaj innego pytania. Musiałbyś zacząć uczyć się o nadawaniu lub mieć demona na tym komputerze "zadzwoń do domu" podczas rozruchu, aby zarejestrować jego aktualny adres IP. I musiałby "zadzwonić do domu" za każdym razem, gdy odnowienie DHCP zmieniłoby jego adres IP. Jest to zdecydowanie bardziej zawiłe. Staraj się unikać DHCP na takich serwerach, jeśli to w ogóle możliwe.

+0

Dlaczego DHCP powinien zmienić adres IP? DHCP oznacza po prostu, że komputer pyta sieć o adres - nie oznacza to zmiany adresu. Co naprawia adres routera lub cokolwiek odpowiada na zapytanie. Wystarczy, że powie routerowi, aby nadał urządzeniu stały adres IP. –

+0

DHCP jedynie * może * zmieniać adresy IP. Nic nie mówi, że * musi *. W pewien sposób trzeba sobie z tym poradzić - czyli albo specjalnie skonfigurować serwer DHCP, albo zmienić adres IP. – Tanktalus

+0

Zazwyczaj nie jest dobrym pomysłem korzystanie bezpośrednio z adresu IP. –

7

Myślę, że sprawdzanie sshd brzmi jak dobre podejście.

Jeśli chodzi o problem z DHCP: jeśli drugi komputer znajduje się w tej samej podsieci, możesz go wyszukać za pomocą adresu MAC, korzystając z numeru Net::ARP.

3

Co powiecie na dodanie skryptu do zdalnego komputera, który zostanie uruchomiony po uruchomieniu, aby poinformował Cię, kiedy będzie gotowy.

9

Przy restarcie można zainstalować skrypt w swoim pakiecie crontab za pomocą specjalnej asercji @reboot (patrz). Ten skrypt mógłby wysłać powiadomienie do innego komputera, powiadamiając go, że jest już gotowy.

+0

Podoba mi się ten pomysł systemu dzwoniąc do domu.Spraw, aby była ostatnią rzeczą w sekwencji rozruchowej (lub przynajmniej po usługach, na których Ci zależy) i wiesz, że system może odpowiedzieć na twoje kolejne żądania. – tvanfosson

Powiązane problemy