Autor Téma: Jak "odblokovat" porty?  (Přečteno 3000 krát)

Offline MrDojo

  • Nováček
  • *
  • Příspěvků: 4
    • Zobrazit profil
Jak "odblokovat" porty?
« kdy: 15. 12. 2012, 20:41:23 »
Zdravím,

mám problém... Mám server s Debianem (squeeze, pravidelně aktualizovaný pomocí příkazu apt get upgrade a update) a na něm Bukkit (Minecraft server - běží v terminálu). Ten Bukkit (web:bukkit.org) občas spadne a je potřeba ho manuálně nahodit.
Pokud spadne tak se řádně neukončí a nejde spustit bez restartu celého serveru-HW, protože port na kterém má běžet Bukkit je obsazený stále běžcím Bukkitem (na který se však nelze připojit a hrát)

Jsem ve správě serveru lama, takže mám v Debianu grafické prostředí - vím že to není dobré, ale jakmile si budu jistý v příkazech odstraním ho :)

Můje dotazy jsou:
1) Jak manuálně - tj. v terminálu ukončit běžící proces - vyčistit port (aby nebyl obsazený a mohl jsem ho znova použít)
2) Jak automaticky (asi pomocí Cronu, ale nevím jak) zjistit, zda Bukkit je funkční či nikoli a pokud tak ho znova spustit (ukončit a spustit)
3) Jak při startu (ne až po přihlášení) spustit aplikaci nebo jak zajistit start grafického prostředí bez připojeného monitoru - graf. prostředí nenaběhne a začne nabíhat, až když připojím monitor

Děkuji.
Dojo

Offline Roman Horník

  • Hlavní moderátor
  • Aktivní­ uživatel
  • *****
  • Příspěvků: 1.326
    • Zobrazit profil
  • Jabber: roman.hornik@jabber.cz
Re:Jak "odblokovat" porty?
« Odpověď #1 kdy: 16. 12. 2012, 14:38:50 »
Zabít se dá jednoduše, navíc je dost pravděpodobný, že tím uvolníš port.
Nejprve zkus aplikaci killnout jako normální uživatel:
killall bukkit
Jestli to nepůjde, budeš to muset zkusit jako root:
sudo killall bukkit
Jestli to nepůjde po dobrým, sestřel ho kanónem:
sudo kill -19 `pidof bukkit`; sudo kill -9 `pidof bukkit`
Pokud je totiž ve stavu, kdy se nedá zastavit, nedá se jen tak killnout, proto mu nejdřív pošleme SIGSTOP (19), až pak SIGKILL (9)
Jestliže se binárka, kterou spouštíš (a tedy i proces), jmenuje jinak, v příkazech nahraď bukkit správným názvem.

Ten program neznám, nevím tedy, jak zjistit, jestli funguje nebo ne. Možná by se to dalo vyřešit malým skriptíkem, (ana)cron/at se na to nehodí

Nikde neuvádíš, jaký prostředí používáš
« Poslední změna: 16. 12. 2012, 14:45:30 od Roman Horník »
Debian Sid 64bit + Mate Desktop Environment
* CPU: Intel Pentium G2020
* GPU: NVIDIA GTX650 1GD5
* MB: Lenovo IH61M
* RAM: 16GiB Deutsche Demokratische Republik 3

Offline MrDojo

  • Nováček
  • *
  • Příspěvků: 4
    • Zobrazit profil
Re:Jak "odblokovat" porty?
« Odpověď #2 kdy: 17. 12. 2012, 16:32:33 »
Děkuji! :D

Offline MrDojo

  • Nováček
  • *
  • Příspěvků: 4
    • Zobrazit profil
Re:Jak "odblokovat" porty?
« Odpověď #3 kdy: 18. 12. 2012, 18:37:21 »
Ještě jeden dotaz..
Ten Bukkit je java aplikace. Na serveru mi jich běží více zároveň a když dám killall -9 java ukončím všechny. Jde nějak specifikovat, že chci ukončit jen jeden java proces?

Offline Roman Horník

  • Hlavní moderátor
  • Aktivní­ uživatel
  • *****
  • Příspěvků: 1.326
    • Zobrazit profil
  • Jabber: roman.hornik@jabber.cz
Re:Jak "odblokovat" porty?
« Odpověď #4 kdy: 18. 12. 2012, 19:17:57 »
Proces můžeš ukončit právě podle jeho PID (ID procesu; nejstarší proces, init, má PID 1, čím novější, tím vyšší číslo).
PID každýho procesu zjistíš pomocí příkazu:
pidof proces
Vyleze z toho například:
uzivatel@debian:~$ pidof bukkit
13498 8192 4176 2048

To znamená, že bukkit má procesy s ID 13498, 8192, 4176 a 2048. A jestliže zlobí proces s ID 13498, zabijeme ho pomocí:
kill 13498
PID 8192, 4176 a 2048 zůstanou žít, kdežto 13498 zemře.
Debian Sid 64bit + Mate Desktop Environment
* CPU: Intel Pentium G2020
* GPU: NVIDIA GTX650 1GD5
* MB: Lenovo IH61M
* RAM: 16GiB Deutsche Demokratische Republik 3

Offline MrDojo

  • Nováček
  • *
  • Příspěvků: 4
    • Zobrazit profil
Re: Jak "odblokovat" porty?
« Odpověď #5 kdy: 19. 12. 2012, 16:35:29 »
Děkuji moc!

Offline Roman Horník

  • Hlavní moderátor
  • Aktivní­ uživatel
  • *****
  • Příspěvků: 1.326
    • Zobrazit profil
  • Jabber: roman.hornik@jabber.cz
Re: Jak "odblokovat" porty?
« Odpověď #6 kdy: 19. 12. 2012, 16:43:31 »
:)
Debian Sid 64bit + Mate Desktop Environment
* CPU: Intel Pentium G2020
* GPU: NVIDIA GTX650 1GD5
* MB: Lenovo IH61M
* RAM: 16GiB Deutsche Demokratische Republik 3