Skocz do zawartości

Fedora - Jakie Posiada Możliwości Odratowania Padniętego Systemu.


Jusko

Rekomendowane odpowiedzi

Witam.

 

A więc tak...namieszałem - padła mi Fedora. Robiłem małe porządkowanie dysku i okazało się, że /var ma 1,5GB. Co zajmowało prawie 1GB? Cache ABRT'a - myślę, że je można spokojnie usunąć? W każdym razie ja to zrobiłem. Później opróżniłem bazę Yum z /var (prawie 800MB - niby co tam takiego jest?). Na samym końcu nieopatrznie wyrzuciłem /var/cache/lib... No i przypieczętowałem to tym, że system nie wstał i zawieszał się już na początku ładowania - z 2 sekundy i po ładowaniu. Chwilowo piszę spod ratunkowego systemu (Ubuntu <_< ) i ciągnę iso Fedory. Dlatego zastanawia mnie - skoro usunąłem o parę plików za dużo, jest jakaś możliwość w Fedorze, by owe pliki przywrócić, a system siadł kompletnie i nie ma nawet szans na uruchomienie? Coś na kształ Windowsowego chkdsk /r w konsoli odzyskiwania - skanuje i uzupełnia ewentualnie brakujące pliki. Bo że w Linuksie nie ma Windowsowego odpowiednika przeinstalowania nadal przebolewam (mimio 3 lat z Linuksem na desktopie), bo to przydatna opcja i teraz byłaby jak znalazł - ostatecznie fajnie byłoby normalnie przeinstalować system nie tracąc niczego, łącznie z aplikacjami (tak, wiem, można podmontować to pod inne partycje, ale to nie jest super rozwiązanie). Czy w Fedorze jest właśnie coś do uzupełniania plików? Przyznam też, że tryb odzyskiwania systemu z iso DVD to również nie to, czego oczekiwałem. Pytam przyszłościowo.

Odnośnik do komentarza
Udostępnij na innych stronach

Chyba /var/lib. Zatrzymuje się na ładowaniu kernela czy przy wchodzeniu X'ów? Zobacz do loga /var/log/messages, ale jak wyczyściłeś /var/lib to automatycznie masz po bazie rpm itp. Może być ciężko, bo te rzeczy są tworzone w podczas pracy systemu i raczej przywracanie domyślnych plików nie pomoże. Musiałbyś jakoś zmusić system do wygenerowania ich.

EDIT: Co do windowsa to niby jest ta opcja ratunku systemu, ale z tego co pamiętam to nigdy u mnie nie pomogła. Jak już pojawił się BSOD to tylko format, czyli dużo nie trzeba.

Odnośnik do komentarza
Udostępnij na innych stronach

Postawiłem już Fedorę na nowo, więc raczej nie zajrzę w nic :rolleyes: Zatrzymywała się już na starcie, czyli w momencie, gdy w GRUBIE uruchomi się Fedora. Pokazał się splash Plymoutha, po czym koniec...mógł tak wisieć wieki. Cóż - no mój błąd.

 

Co do BSOD to masz rację - jak wyskoczy to niemal Amen (z tego co widzę u klientów). Jeśli jednak trzeba było uzupełnić pliki, to się nadawało :-) Przydałoby się takie coś na Linuksie. Niby dobrze zarządzany Linux działa latami, no ale jak zdarzy się coś podobnego na serwerze (hipotetycznie załóżmy), to co wtedy...Na siłę można niby zrobić chroot i doinstalować coś, ale to nie jest rozwiązanie. A nawet jeśli dobrze zarządzany Linux działa latami, to jak coś trzaśnie i faktycznie przydałaby się reinstalacja, to wtedy jest problemik. Anyway...nie marudzę już, choć opcja normalnej reinstalacji przypadałaby się.

Odnośnik do komentarza
Udostępnij na innych stronach

Usuwając /var/lib/rpm straciłeś bazę co gdzie jest w systemie :ph34r: Gdybyś usunął wszystko inne !! to system dało by się w 100% odtworzyć używając trybu "rescue" z płytki instalacyjnej fedory. Prawdę mówiąc teraz też się da, ale to jak wybieranie soczewicy z maku, bo każdy plik w systemie jest niczyi i trzeba by sprawdzić, która paczka go dostarcza.

 

[EDIT]

"ale jak zdarzy się coś podobnego na serwerze"

przecież to Ty sam ręcznie usunąłeś pliki, których ruszać nie powinieneś :lol:

Odnośnik do komentarza
Udostępnij na innych stronach

Wiem, ale tak to jest - poprzednie distro też raz położyłem, nim poznałem co, gdzie i jak ;) A co do odtworzenia z płyty...no...tu trzeba wiedzieć jeszcze jak - przyznam szczerze, że spodziewałem się jakiegoś punktu odzyskiwania, a zobaczyłem shell...i zgłupiałem kompletnie. Przydałoby się omówić to jakoś dla potomnych na Wiki, jak używać opcji rescue :) Chyba, że nie doczytałem czegoś :unsure:

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli jednak trzeba było uzupełnić pliki, to się nadawało :-) Przydałoby się takie coś na Linuksie.
Ale które pliki chciałbyś uzupełniać? Przecież niemal wszystko jest generowane na żywym systemie lub inne pliki aplikacji w czasie aktualizacji pakietów (kernela). Ewentualnie /etc, ale usunięcie plików z /etc raczej i tak nie zabije systemu. Prawdopodobnie sam przywróci domyślne. Po prostu na linuksie jest założenie, że każdy używa konta zwykłego użytkownika, który nie ma praw, żeby naśmiecić, a osoba korzystająca z konta administratora zawsze wie co robi. Ja zawsze jeśli nie wiem do czegoś coś służy to nie ruszam tego dopóki nie doczytam i nie dowiem się. Chociaż już wiele razy zapewniłem sobie zabawę na godziny właśnie przywracając usunięte czy nadpisane pliki.
Odnośnik do komentarza
Udostępnij na innych stronach

przyznam szczerze, że spodziewałem się jakiegoś punktu odzyskiwania
:lol: nie Ty jeden

W trybie rescue wchodzisz w chroot i masz hybrydę aplikacji z płyty i dysku. W Twoim przypadku nasmarowałem coś takiego:

#!/bin/bash
# Coś na kształ Windowsowego chkdsk /r w konsoli odzyskiwania
# - skanuje i uzupełnia ewentualnie brakujące pliki
# - można uruchomić z parametrem "-y" dla automatycznego potwierdzenia

# dla każdej paczki w systemie
for paczka in $(rpm -qa | sort); do
     echo "sprawdzam:  $paczka"
     # dla każdego pliku w paczce
     for plik in $(rpm -ql $paczka); do
         # sprawdź czy plik istnieje
         if [ -f $plik ]; then 
             # plik istnieje - puste polecenie
             # przysypiam i nie wiem jak zrobić samo "if-nie ma pliku";P
             :             
         else
             if [ -d $plik ]; then 
                 # ups, to nie plik tylko katalog
                 :
             else
                 # plik nieistnieje - przeinstaluj paczkę
                 echo "BRAK PLIKU: $plik"
                 echo "REINSTALACJA: $paczka"
                 yum reinstall $1 $paczka
             fi
         fi
     done
done

Skrypt prawie działa, ale wywalił się na czymś takim:

$ rpm -ql abrt-desktop

(nie zawiera plików)

:)

 

Rób skrypty do automatyzacji różnych codziennych czynności, a nim się obejrzysz wszystko w konsoli będzie łatwe. To bardziej pożyteczne zajęcie niż usuwanie plików na chybił trafił.

Odnośnik do komentarza
Udostępnij na innych stronach

Chyba jednak poduczę się z basha :-) Jeśli znajdę na to czas <_< A co mówicie o opróżnianiu /var/cache/abrt? Ostatecznie cache to cache - rozumuję tu w kwestii pamięci podręcznej, która może być...ale nie musi. Ostatecznie wyczytałem, że ABRT ma quotę na 1GB, po przekroczeniu której wysyła monit, więc pamięć ta może jest do zwolnienia. Aktualnie po zainstalowaniu systemu i wszystkiego co potrzebuję, mam 5,6GB wolnego miejsca na / - mnie wystarczy w zupełności. Ale z czasem zacznie się zmniejszać przez choćby ABRT'a, a ja naprawdę nie lubię, gdy coś odłogiem leży na dysku, a jedyne co robi to zajmuje miejsce. Właśnie...quota...właśnie uświadomiłem sobie, że nie wiem, jak ustawia się je userom na Linuksie...a umiem je ustawiać na Windows (laborki w swoim czasie na Windows nadal siedzą w pamięci) :D

Odnośnik do komentarza
Udostępnij na innych stronach

         if [ -f $plik ]; then 
             # plik istnieje - puste polecenie
             # przysypiam i nie wiem jak zrobić samo "if-nie ma pliku";P

 if [ ! -f $plik ]; then
      echo "juz nie przysypiam"
fi

Odnośnik do komentarza
Udostępnij na innych stronach

Trochę pozmieniałem i wrzuciłem tu:

http://wiki.fedora.pl/wiki/U%C5%BCytkownik...check-file-list

 

Jednak dziwi mnie czemu skrypt wyłapuje tak dużo nieistniejących plików (mam ~80 brakujących plików na 1800 paczek). Czy to wina paczek rpm, czy raczej pewne pliki znikają po instalacji? Nie rozumiem tego, a chciałem dodać skrypt do:

* http://wiki.fedora.pl/wiki/RPM_-_procedury_ratunkowe

 

Wszelkie podpowiedzi mile widziane.

Odnośnik do komentarza
Udostępnij na innych stronach

$ rpm -ql abrt-desktop

(nie zawiera plików)

Mnie też ciekawi czemu służy tworzenie pustych paczek rpm. W specu kde-l10n :

%files

#empty

No chyba że jeśli kilka paczek jest "produkowanych" za pomocą jednego speca, to wytyczne nakazują zbudowanie choćby pustej paczki, byle nazwa zgadzała się z nazwą speca.

Odnośnik do komentarza
Udostępnij na innych stronach

Mnie też ciekawi czemu służy tworzenie pustych paczek rpm.

To pseudo pakiety do stworzenia sztucznych zależności/grup

[lucas@jedral ~]$ rpm -q abrt-desktop --requires
abrt = 1.0.3-1.fc12
abrt-addon-kerneloops  
abrt-addon-ccpp  
abrt-addon-python  
abrt-gui  
abrt-plugin-bugzilla  
abrt-plugin-logger  
abrt-plugin-runapp  
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadIsXz) <= 5.2-1

od dawna marzy mi się w Fedorze taki sposób dystrybucji, żeby paczki były tak rozdrabniane np:

gnome-core - mimimum do uruchomienia sesji gnome

gnome - paczka zawierająca w zależnościach "gnome-core" i wszystkie wizjonerskie pomysły developerów fedory

 

Takie paczki "-core" ucieszyły by bardzo wielu userów.

Odnośnik do komentarza
Udostępnij na innych stronach

Właśnie za skrypty lubię to forum :-) Z pewnością się przydadzą :-) Muszę poszukać jakiegoś narzędzia do bezpiecznego czyszczenia systemu. Podobno nawet "łubundu" ma takie coś, a Fedora nie :P Ale może znajdzie się coś w repo. Fedora nie aspiruje do "linux for human beings" na szczęście, ale przydałoby się wiedzieć, czemu np. ABRT się rozrasta z paru MB do wycztałem nawet, że 13GB u kogoś, albo baza Yum się powiększa, choć prócz aktualizacji mało co instaluje, i tak w ciągu 1,5 miesiąca od postawienia systemu (poprzednio, aż do wczoraj :P ) urosła z początkowych 124MB na starcie do ponad 800MB. No bo rozumiem już, że /usr rozrosło mi do 4,5GB a libsy 32bitowe zajmowały więcej niż natywne 64bitowe :)

 

Co do rozdrabniania pakietów - właśnie wczoraj nad tym myślałem, jak tu nie stawiać małej kobyłki na start, tylko z takiego GNOME-core i bardzo minimalistycznie, jak...no choćby Debiana (którego właśnie za -core lubiłem). Doszedłem do wniosku, że chyba się tak nie da, a nie mam niestety aż tak dużo czasu, by stawiać z netinstall, a poza tym pewnie i tak ciągałoby całe metapakiety. I jakoś netinstalle niezbyt idzie ustawić na połączenie PPPoE :P

Odnośnik do komentarza
Udostępnij na innych stronach

Wiem, ale on nie rozwiązuje moich problemów. Pliki te chyba siedzą zbyt głęboko, by on uznawał je za porzucone paczki. Poza tym straciłem do niego zaufanie, gdy odłogiem leżały 3 starsze kernele, a package-cleanup twierdził:

 

No old kernels to remove

 

Jedyne co rozrasta się to właśnie strasznie ABRT i Yum w /var/cache.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...