Administratorzy w mojej firmie twierdzą, że Linux jest podatny na zranienie spowodowane awarią zasilania. Mówią, że maszyny Windows zawsze przetrwają przerwy w dostawie prądu, ale Linux-y często stają się niemożliwe do odzyskania (tzn. Nie można już uruchamiać maszyn). Stało się tak, ponieważ powiedzieli mi, że firma energetyczna odcina zasilanie naszym biurom na długi okres czasu, więc administratorzy chcieli, żebym zamknął wszystkie urządzenia Linux, do których tylko ja mam dostęp przed awarią.
Myślałem, że Linux powinien być solidny?
Moje pytanie: - czy jest jakiś proces, który powinienem uruchomić, aby uniknąć sytuacji, w której moje urządzenia z systemem Linux zostaną uszkodzone przez awarię zasilania?
Odpowiedzi:
Czy Linux jest bardziej kruchy niż Windows?
Odpowiedź brzmi: to zależy .
Kiedy ktoś mówi „nie można uruchomić” w tej sytuacji, tłumaczę to na „Uszkodzenie systemu plików”, a odpowiedź Tak lub Nie na pierwotne pytanie wszystko zależy od używanego systemu plików.
System Windows nie pozwala mieć pełnego wyboru systemów plików, na które zezwala Linux. Prawie nigdy nie widzisz systemu Windows innego niż NTFS. NTFS ma wbudowane funkcje, które pomagają w przypadku utraty zasilania, takie jak kronikowanie i transakcje plików, które mogą zostać wycofane w przypadku awarii.
Linux może mieć to i nie może. Wszystko zależy od konfiguracji serwera. Jeśli serwer używał ext2 1, możesz być bardzo podatny na uszkodzenie plików w przypadku awarii zasilania. Porównaj to z systemem, który używał czegoś takiego jak Btrfs, który ma więcej funkcji integralności danych niż NTFS.
Jeśli więc administrator systemu, z którym rozmawiasz, pracował tylko z systemami ext2, może mieć rację, ale jeśli użyjesz innego systemu plików, może się mylić.
1: Ext2 był przez długi czas domyślny zarówno dla Debiana, jak i dla Red Hat Linux. Został teraz zastąpiony głównie przez Ext3, który jest bardziej podobny do NTFS pod względem funkcji integralności danych.
źródło
Nie, Linux nie jest z natury mniej odporny niż Windows, jeśli chodzi o nagłe przerwy w dostawie prądu. To, co może się zdarzyć - w przypadku dowolnego systemu operacyjnego - polega na tym, że zapisywane są rzeczy w systemie plików na dysku twardym dokładnie w momencie utraty zasilania i (historycznie) może to uszkodzić system plików.
Rozwiązaniem tego problemu jest użycie systemu plików kronikowania, który jest odporny na ten problem na podstawie sposobu, w jaki zapisuje informacje. Większość nowych systemów plików - w tym Ext3 i ExT4 (najpopularniejsze systemy plików dla Linuksa), ponieważ, jak wierzę, NTFS również jest. Tak długo, jak korzystasz z systemu plików kronikowania, nie napotkasz tego problemu.
Później podczas uruchamiania systemu, jeśli masz bazę danych (patrzę na MYSQL, Postgres nie cierpi z tego powodu), możesz mieć analogiczne problemy z bazą danych MYSQL - MYSQL często nie jest szczególnie solidny ( zgodność z Google ACID MYSQL dla ten temat). Można obejść ten problem, wymuszając sprawdzenie indeksów przy ponownym uruchomieniu, jeśli konfiguracja MySQL nie jest zgodna z ACID.
Innym (nieco Jadesem i być może niesprawiedliwym w stosunku do systemu Windows) może być to - Linux-Box jest bardziej niezawodny niż Windows (mierzony przez Uptime i potrzebę ponownego uruchomienia) - dlatego możliwe jest, że gdy Linux Linux nie uruchomi się przy ponownym uruchomieniu, jest to problem sprzętowy ze względu na starość, a nie problem z oprogramowaniem - podczas gdy wadliwe okno systemu Windows może zostać wykryte wcześniej z powodu częstszych restartów)
źródło
W zależności od dystrybucji i posiadanego systemu plików może być mniej lub bardziej narażony na ataki. Jeśli wiesz o planowanym odcięciu zasilania, zdecydowanie powinieneś ręcznie wyłączyć (i poświęcić czas na konserwację, taką jak odkurzanie systemów lub może ponowne podłączenie ... W przypadku nieplanowanych przerw w dostawie prądu, uzyskaj systemy UPS z oprogramowaniem do wyłączania systemu Linux, aby nie musisz się martwić. Powinieneś to uruchomić mimo to. Dla większości dystrybucji Linuksa dostępny jest plik APCUPSD, jeśli nie to, sprawdź u swojego dystrybutora, co jest już w nim lub jest dostępne. Upewnij się, że się zamknie twoje systemy czysto, zanim zaczniesz na nich polegać.
źródło
Przeprowadziłem badania tego pytania i odkryłem, że to, co mówi mój dział IT, jest zasadniczo poprawne, Linux jest znacznie bardziej narażony na awarię zasilania niż Windows. Powodem jest to, jak działa tabela i-węzłów w systemie Linux / unix. Ponieważ jest to lista nieuporządkowana i jest ciągle modyfikowana, nie ma oddzielenia między ważnymi, statycznymi plikami, takimi jak pliki binarne jądra, a bezwartościowymi plikami, takimi jak pliki tymczasowe. Oznacza to, że wpisy i-węzłów do krytycznych plików systemowych są ciągle przepisywane, co jest bardzo złym projektem. W rzeczywistości w krytycznych plikach systemowych istnieje większe prawdopodobieństwo, że ich wpisy i-węzłowe zostaną zapisane w dowolnym momencie niż pliki nieistotne. Po zaniku zasilania ma tendencję do niszczenia każdej zapisanej części tabeli i-węzłów, która prawdopodobnie nie zawiera wskaźników do plików systemowych. Same pliki systemowe są w porządku i nienaruszone, ale katalog, w którym można je znaleźć, jest uszkodzony. Sytuację pogarsza buforowanie dysku, które powoduje zwiększenie rozmiaru uszkodzonych obszarów tabeli i-węzłów.
W systemie Windows nawet stary system plików FAT jest znacznie bardziej wytrzymały. FAT ma również tabelę, ale jest to tabela uporządkowana, więc nie ma pomieszanych plików systemowych z plikami tymczasowymi. Zwykle pliki systemowe znajdują się razem w jednym obszarze katalogu i jest mało prawdopodobne, aby ten obszar był zapisywany bardzo często. Ponadto FAT ma katalog kopii zapasowej, więc nawet jeśli katalog jest uszkodzony, po prostu wraca do kopii zapasowej. Oznacza to, że w przypadku FAT jest mało prawdopodobne, aby użytkownik utracił łącza do plików w przypadku awarii zasilania, nawet pliki tymczasowe. Jednak w systemie Linux, ponieważ tablica i-węzłów jest ciągle zapisywana, użytkownik ma praktycznie gwarancję utraty dostępu do plików w przypadku awarii zasilania.
Jedyne, co można zrobić, aby to złagodzić, to wyłączenie buforowania dysku.
źródło