Linux - system troubleshooting

Pracując zdalnie na systemach komputerowych, nie sposób jest uniknąć awarii. Awaria może być typowo hardwarowa - z tym nie za bardzo możemy cos zrobić zdalnie, trzeba wpakować sie do jakiegoś środku lokomocji i zając sie tym osobiście.

Inaczej sprawa się ma z awaria softwarowa, taka jakiś czas temu mi sie przytrafiła ... system plików na / uległ uszkodzeniu. Niewiele mogłem wtedy zrobić, wiec tez musiałem sie zając tym nie zdalnie, teraz bogatszy o doświadczenia tamtych dni mogę sobie napisać parę rad.

No to rady sa juz tu:

  • Mieć obraz systemu na dysku hdd, z możliwością zamontowania go przez gruba / lilo. Cos jak płytka startowa, tylko ze z hdd.
  • Zostawić niewielka pusta(!!) partycję na korą możemy wypakować powyższy obraz, lub ściągnąć któraś z wielu maleńkich dystrybucji Linuxa. Rozmiar partycji to max 700MB najlepiej jakby była na partycji podstawowej. Od biedy jeśli mamy sporo ramu można na chwilkę zamazać SWAP.
  • Jeśli spodziewamy sie ze uszkodzeniu uległ system plików, a używamy Linuxa opartego o Debiana (np Ubuntu) możemy sprobować go naprawić podczas startu. Tworząc plik /forcefsck. touch /forcefsck && shutdown -rF now

    Hint

    (wypada tu jeszcze sprawdzić wpisy w /etc/fstab) - partycja / powinna być zamontowana z: "0 1" na końcu.
  • Stworzenie live cd z większością oprogramowania i ustawionymi ipkami (Google: live cd specified for machine using Gentoo Instalation CD)
  • Jeśli mamy pare maszyn to można skorzystać z jakiegoś KVMa lub uruchomić system z init=/bin/bash (Single user mode) i przekierować w jakiś sposób wyjście konsoli na port szeregowy (do rozpatrzenia).
W sumie to na tyle więcej pomysłów chwilowo juz nie mam. Najrozsądniejszym wydaje sie stworzenie nowego systemu (odpowiednie skonfigurowanego) na dysku z którego w razie awarii moglibyśmy wybootowac i chrootowac sie do naszego właściwego systemu i wykonać odpowiednie kroki naprawcze. Uważam, ze jednym z lepszych pomysłów jest tez zostawienie livecd przy serwerze z bootowalnym i w pełni skonfigurowanym środowiskiem pracy (Gentoo nie źle sie do takich rzeczy nadaje) do którego jest możliwość połączenia sie przez ssh.

Comments

Popular posts from this blog

How to generate user documentation from Perl script?

35 Google open-source projects that you probably don't know