Hogyan várhatatlanul leállíthat egy Linux számítógépet?
A váratlan leállások károsak a Linuxra, mint más operációs rendszerekre? Olvass tovább, amikor a katasztrofális rendszerleállások hatását vizsgáljuk a Linux fájlrendszerekben.
A mai Kérdések és válaszok munkamenet a Jóvagyon - a Stack Exchange alosztályának, a közösség által vezérelt Q&A webhelyek csoportjának köszönhetően..
A kérdés
A SuperUser olvasó User208554 kíváncsi a Linux fájlszerkezeteire, és aggódik egy alkalmazás / telepítés miatt, amelyen dolgozik:
Egy alkalmazást fejlesztek egy Linux beágyazott táblán (például a Debian futtatása), pl. Raspberry Pi, Beagle Board / Bone vagy olimex. A táblák olyan környezetben dolgoznak, hogy a villamos energiát váratlanul vágják (túlságosan bonyolult a PSU elhelyezése, stb.), És minden nap megtörténik minden nap. Kíváncsi vagyok, hogy a váratlan áramkimaradás problémát okozna-e a Linux operációs rendszerben? Ha valami olyasmi lenne, amit aggódnék, mit javasolna, hogy megakadályozza az OS-nek a váratlan áramkimaradással szembeni károkat?
PS. Az alkalmazásnak néhány adatot be kell írnia a tárolóeszközbe (SD-kártya), azt hiszem, nem lenne helyénvaló csak olvashatóként.
Tehát mi az ítélet?
A válasz
Az l0b0 SuperUser hozzájárulója némi betekintést nyújt a naplózó / nem naplózó fájlrendszerekbe:
Ez attól függ
- hogy naplózási fájlrendszert használ
- milyen jól tudják kezelni az alkalmazások a megszakított feldolgozást.
Fontolja meg például egy olyan fájlt, amely feldolgozza a fájlt, és az eredményeket úgy írja, ahogyan azokat kiszámítják (egy kimeneti sor bemeneti soronként) egy másik fájlba. Ha a feldolgozás során a teljesítmény csökken, és az újraindítás után ugyanazt az alkalmazást futtatja, akkor nem csak a bemeneti fájl elejétől kezdheti újra a feldolgozást - ez azt jelenti, hogy a kimeneti fájl tartalmazhat ismétlődő információkat.
Nagyon nehéz lehet mondani valamit a hipotetikus komplex rendszerről, de a legstabilabb Linux-szoftver úgy tűnik, hogy elég jól tudja kezelni az összeomlásokat.
A Stu javasolja az operációs rendszer és az adatok szétválasztását, valamint az akkumulátor biztonsági mentését:
Annak érdekében, hogy minimálisra csökkentsük az operációs rendszer sérülésének lehetőségét, valószínűleg az SD kártyán különálló „rendszer” és „adat” partíciók állnak rendelkezésre. Ilyen módon csak a „rendszer” partíció csak olvasható és erősen rugalmas FS-t használhat az „adat” partíción.
Ezen túlmenően ezeknek a tábláknak a többsége nagyon alacsony energiaigényű, ezért lehetséges az akkumulátor-tartalék. A Raspberry Pi „LiPo rider” kártyája alap UPS-ként használható, hogy tiszta áramkimaradást biztosítson.
Végül a Jenny D kiterjeszti a naplózó fájlrendszer javaslatát:
A váratlan áramkimaradások a fájlrendszer adatainak - pl. ha egy folyamat elkezdett írni egy fájlba, de még nem fejezte be az írást, a fájl csak félig írható. Most képzelje el, hogy az áramkimaradás akkor következik be, amikor félúton van a kernel frissítésénél ...
Ahogy az l0b0 írta, a naplózó fájlrendszer használata segít, mivel képes lesz arra, hogy nyomon kövesse azt, ami valóban megtörtént. Az l0b0 által összekapcsolt wikipedia-információk mellett érdemes felkelteni a Doinging Filesystems garanciát a korrupció ellen is..
Ön, mint programozó, nyilvánvalóan alaposan meg kell fontolnia, hogyan kezelje a fájlokat az íráshoz, hogy ez atomfolyamatsá váljon (vagyis teljes egészében vagy egyáltalán nem, de soha nem félig kész). Ez egy meglehetősen összetett kérdés.
Van valami, amit hozzá kell adni a magyarázathoz? Kikapcsolja a megjegyzéseket. Szeretne további válaszokat olvasni más tech-savvy Stack Exchange felhasználóktól? Nézze meg a teljes beszélgetés szálát itt.