Not logged in. · Lost password · Register
Forum: Fedora Administracja systemu RSS
/var - jak przywrocic
katastrofa...

Announcement

2006-06-03, 10:40 by gajownik
Subject: Zanim coś napiszesz...
Witamy w naszych niskich progach ;-)

Zanim coś napiszesz na forum:
1. zapoznaj się z Wiki i FAQ a także Poradnikiem - są tam odpowiedzi na najczęściej pojawiające się pytania
2. skorzystaj z forumowej wyszukiwarki i/lub Google - jest spora szansa, że ktoś już rozwiązał Twój problem
3. uaktualnij cały system
4. przeczytaj regulamin oraz tekst na temat mądrego zadawania pytań
5. jeśli masz jakiś problem, przekaż nam o nim odpowiednią ilość informacji - jak na razie nie potrafimy jeszcze wróżyć z fusów
6. dla każdego nowego problemu twórz osobny wątek używając jednak zdrowego rozsądku
7. nie pisz niczego, czego wstydził(a)byś się przed swoją mamą ;-)

Życzymy miłej zabawy - zespół fedorapl.org
Create new thread · Reply
Avatar
Reply · Quote exbros #1 ()
since Dec 2006 · 36 posts · Location: Lublin / Londyn
Group memberships: Użytkownicy
Show profile · Link to this post
Subject: /var - jak przywrocic
Witam

W wyniku awarii systemu stracilem caly katalog var :(

Jest jakas szansa zeby go odtworzyc?

/vara zalozylem (uprawnienia jak nalezy), myslalem, ze system przywroci niezbedne elementy po kolejnym restarcie - ale niestety, wyglada ze nie bedzie to takie proste.

System uruchamia sie bardzo dlugo, wypluwa mase bledow - wiekszosc o nie mozliwosci wykonania touch na (nieistniejacych) plikach (miedzy innymi network_status, random_seeds itp), po czym staje. Po usilnych probach udalo mi sie dojsc do momentu gdy system pozwala na zalogowanie sie w konsoli, Xy jednak nie wstaja, a kazdy start to kilkanasci minut :(

Nie mialem wiecej czasu by z problemem powalczyc (stalo sie to w nocy a rano musialem wychodzic do pracy), ale bylbym bardzo wdzieczny za wszelkie wskazowki i porady - po powrocie do domu czeka mnie dalsza walka.

Ktory pakiet w czasie instalacji jest odpowiedzialny za utworzenie /var i odpowiednich wpisow / zalozenie odpowiednich plikow? Moze ponowna instalacja tego pakietu odtworzy niezbedne elementy?
Na szczescie konsole juz mam...

Jesli nic innego nie da sie zrobic, to poczekam kilka dni na F7t2 i sprobuje ja zainstalowac - moze upgrade systemu to naprawi?... Ale szkoda Fedorki - pieknie dzialala od FC5 przez upgrade yumem do FC6 teraz w planach byl upgrade (yumem oczywiscie ;) ) do F7, co zrobic - taki life...

Pozdrawiam
Google i Szukaj to najbardziej obczajeni goscie na tym forum - nie zapomnij zapytac ich, zanim zaczniesz pytac nas...
Avatar
Reply · Quote DanseMakabre #2 ()
User title: The fallen one
since May 2006 · 166 posts · Location: Mielec → Kraków
Group memberships: Administratorzy, Użytkownicy, Zespół fedorapl.org
Show profile · Link to this post
Nie wiem, w jakim stopniu Ci to pomoże, ale napisałem skrypt, który determinuje jakie paczki trzymają w danym katalou swoje pliki.

Oto sam skrypt (tak wiem, że badziewny w idei, konstrukcji i nie działa dobrze):
#!/bin/bash

function determ {
        filelist="$1/*"
        for file in $filelist
        do
                if [ -r $file ]
                then
                        rpm -qf $file
                        #for verbose output
                        #echo ": $file"
                        if [ -d $file ]
                        then
                                determ $file
                        fi
                fi
        done
}

if [ $# -eq 0 ]; then
        echo "podaj katalog"
else
        determ $1
fi

A oto jego output na katalogu /var:
[root@pat bash]# ./packages-determiner /var |egrep -v "nie należy"|sort|uniq
./packages-determiner: line 7: [: too many arguments
./packages-determiner: line 7: [: /var/www/html/strona: binary operator expectedacpid-1.0.4-2
alchemist-1.0.36-1.2.1
anacron-2.3-42.fc5
at-3.1.8-82.fc5
avahi-0.6.11-3.fc5
beagle-0.2.6-1.fc5.1
bind-9.3.4-1.fc5
bittorrent-4.4.0-1.fc5
caching-nameserver-9.3.4-1.fc5
chkconfig-1.3.29-1
cscope-15.5-15.fc5.1
cups-1.2.5-1.fc5.4
cvs-1.11.22-6.fc5
cyrus-sasl-2.1.21-10
dbus-0.62-0.2.fc5
dhclient-3.0.3-28
dhcpv6_client-0.10-16.1
diskdumputils-1.2.8-4
filesystem-2.3.7-1.2.1
fontconfig-2.3.94-2.fc5
foomatic-3.0.2-33.3
gdm-2.14.11-1.fc5
gstreamer08-0.8.12-5.fc5
hsqldb-1.80.1-1jpp_9fc
htdig-3.2.0b6-6.4.2.1
httpd-2.2.2-1.2
httpd-manual-2.2.2-1.2
initscripts-8.31.6-1
ipsec-tools-0.6.4-1.1
isdn4k-utils-3.2-41.1.fc5
lockdev-1.0.1-9.2.1
logrotate-3.7.3-2.2.1
logwatch-7.2.1-2.fc5
lvm2-2.02.17-1.fc5
man-1.6c-2.fc5
mdadm-2.3.1-3
mlocate-0.14-0.fc5.1
mod_python-3.2.8-3
mod_ssl-2.2.2-1.2
mysql-server-5.0.27-1.fc5
NetworkManager-0.6.4-1.fc5
nscd-2.4-11
nss_db-2.2-35
ntp-4.2.0.a.20050816-11.FC5
openssh-server-4.3p2-4.11.fc5
pam-0.99.5.0-5.fc5
php-5.1.6-1.2
php-pear-1.4.9-1.2
ppp-2.4.3-6.2.1
prelink-0.3.6-3
psacct-6.3.2-41
rpm-4.4.2-15.2
samba-3.0.24-1.fc5
samba-common-3.0.24-1.fc5
screen-4.0.3-2
scrollkeeper-0.3.14-5.2.1
sendmail-8.13.8-1.fc5
setup-2.5.49-1
spamassassin-3.1.8-2.fc5.1
squid-2.5.STABLE14-3.FC5
sudo-1.6.8p12-4.1
system-config-httpd-1.4.1-1.fc5
system-config-printer-0.6.151.8-1
systemtap-0.5.10-1.fc5
tetex-fonts-3.0-29.fc5
tomcat5-5.5.15-1jpp_6fc
tomcat5-common-lib-5.5.15-1jpp_6fc
tomcat5-server-lib-5.5.15-1jpp_6fc
tux-3.2.18-4.2.1
util-linux-2.13-0.20.4
vixie-cron-4.1-58.fc5
vsftpd-2.0.4-1.2
webalizer-2.01_10-29.2.1
wpa_supplicant-0.4.9-1.fc5
xorg-x11-server-Xorg-1.0.1-9.fc5.6
ypbind-1.19-1
yp-tools-2.9-0
yum-2.6.1-0.fc5
Niestety akurat pracuję na FC5 (gratulacje dla Acer Europe i ATi) i niebardzo mogę system wyłączyć... Jeśli przeinstalujesz te paczki z pomocą --replacefiles --replacepkgs, to skromne szanse są... Oczywiście wiele plików z /var z pewnością nie należy do żadnej paczki. Niektóre można sobie z palca utworzyć, jak np. random_seeds (do tego można wpisać w środku być może byle co).

Jeśli Ci bardzo zależy, to mogę spakować mój /var/ ze świeżutkiej FC6 i wrzucić Ci gdzieś na ftp. Myślę, że to będzie max 250MB.
[Image: http://img131.imageshack.us/img131/6453/fedoracoregt6.jpg]
[Image: http://img160.imageshack.us/img160/1940/prisonbreak2id2.gif]
Avatar
Reply · Quote exbros #3 ()
since Dec 2006 · 36 posts · Location: Lublin / Londyn
Group memberships: Użytkownicy
Show profile · Link to this post
No, jest tego troche... :(
Dzis po powrocie do domu zaczne nierowna walke - o efektach napewno napisze tu na forum.

W razie niemca bede Was tu jeszcze meczyl ;)

Serdeczne dzieki za checi... zobaczymy, konsola dziala, logowanie dziala - jakies szanse sa. Na razie planuje przeinstalowanie filesystem, wlaczenie uslugi firstboot i restart. Zobaczymy.
Pozdro

//===== edit =====
Musze powiedziec, ze uruchomienie systemu to bylo male piwo :)
... wystarczylo troche recznej dlubaniny (reczne odtworzenie katalogow i podlozenie pustych plikow w miejscach w ktorych szukal system) oraz zainstalowanie gdma (oczywiscie przy uzyciu zabojczej opcji --nofiles --nodeps --force :( )
Prawdziwe problemy dopiero nadchodza - w zwiazku z tym ze stracilem cala baze rpm nie jest mozliwe normalne zainstalowanie czegokolwiek, takze update nie dziala bo nie widzi zainstalowanych pakietow.

Chyba wiec plan upgradeu do F7 zginal razem z /var ;)
Chyba,ze macie jakis pomysl na (re)generacje bazy rpm?...
Google i Szukaj to najbardziej obczajeni goscie na tym forum - nie zapomnij zapytac ich, zanim zaczniesz pytac nas...
This post was edited on 2007-02-28, 00:05 by exbros.
Avatar
Reply · Quote gwiazdor_online #4 ()
User title: taki nieogolony typek
since May 2006 · 247 posts · Location: Skarżysko-Kamienna -> Kraków
Group memberships: Moderatorzy, Użytkownicy, Zespół fedorapl.org
Show profile · Link to this post
A może by napisać skrypt, który z wszystkich zainstalowanych paczek wyświetla gdzie mają pliki, zgrepować wyniki po ^/var/.* i rezultaty przepuścić przez mkdir -p?
Podejrzewam, że konkretne programy pootwierają sobie swoje pliki, jeśli tylko odzyskamy drzewo katalogów /var.

Niestety w obecnej chwili nie mam dostępu do rpm-ów, więc jak ktoś mi poda jak wyswietlić wszystkie pliki z drzewem katalogów z rpm-a, to resztę skryptu mogę dopisać.
Nie próbuj dyskutować z debilem. Najpierw sprowadzi cię do swojego poziomu, a następnie pokona doświadczeniem.
Avatar
Reply · Quote exbros #5 ()
since Dec 2006 · 36 posts · Location: Lublin / Londyn
Group memberships: Użytkownicy
Show profile · Link to this post
Quote by gwiazdor_online:
A może by napisać skrypt, który z wszystkich zainstalowanych paczek wyświetla gdzie mają pliki, zgrepować wyniki po ^/var/.* i rezultaty przepuścić przez mkdir -p?
Tyle, ze problem zaczyna sie w momencie szukania wszystkich zainstalowanych paczek :(

Cala baza rpm wyleciala w kosmos. I to ja chyba trzeba by najpierw odtworzyc: rpm -qa zwracalo nic (ale to nic dziwnego, skoro wyparowal /var/lib/rpm)...

Doinstalowalem rpmem wczoraj jeszcze yuma + fedora i livna release oraz dwa ostatnie kernele i kmody do nich i yum ruszyl.

Po restarcie okazalo sie ze dzwiek mam wyciszony (czyli go nie mam) wiec zapuscilem yum install alsa* no i sie zaczelo ;) w ramach rozwiazywania zaleznosci yum zaproponowal pobranie 170 pakietow (okolo 220MB) - mozna powiedziec ze 25% bazy mam juz odzyskane :)

I chyba tylko to mi pozostaje - uzupelniac system (instalowac pakiety) o programy juz w rzeczywistosci zainstalowane i pozwalac yumowi na jak najszersze rozwiazywanie zaleznosci. Moze po kilku tygodniach (czyli w sam raz na przed F7) zdaze ;)

W temacie skryptow - moim pierwszym pomyslem bylo napisanie skryptu ktory przeczesal by caly system sprawdzajac dla kazdego pliku zrodlo pochodzenia (cos jak yum provides) i z istniejacych zrodel (nie kazdy plik ma rodzica w rpm) budujac baze rpmow. Niestety wymieklem, bylo zbyt pozno i bylem zbyt zmeczony, chociaz nadal uwazam ze jest to mozliwe i ze to jedyny 100% sposob na rzeczywista odbudowe bazy, bo znajac taka liste mozna zmusic system do zainstalowania wszystkich wymaganych pakietow i odtworzenia w ten sposob bazy w 100% spojnej i kompletnej.
A skoro to mozliwe, to zastanawia mnie czy juz ktos czegos takiego nie napisal - byloby to w koncu calkiem powazne i uzyteczne narzedzie.
Co o tym sadzicie?
Pozdro
Google i Szukaj to najbardziej obczajeni goscie na tym forum - nie zapomnij zapytac ich, zanim zaczniesz pytac nas...
This post was edited on 2007-02-28, 11:11 by exbros.
Avatar
Reply · Quote gwiazdor_online #6 ()
User title: taki nieogolony typek
since May 2006 · 247 posts · Location: Skarżysko-Kamienna -> Kraków
Group memberships: Moderatorzy, Użytkownicy, Zespół fedorapl.org
Show profile · Link to this post
Quote by exbros:
Co o tym sadzicie?

Myślę, że budowanie bazy z paczek-nie-rpm się raczej nie sprawdzi, bo to jest już budowanie innej architektury pakietów. A w ogólności skrypt jest do napisania, tylko mam wątpliwości co do jego szybkości i niezawodności.
Nie próbuj dyskutować z debilem. Najpierw sprowadzi cię do swojego poziomu, a następnie pokona doświadczeniem.
Avatar
Reply · Quote DanseMakabre #7 ()
User title: The fallen one
since May 2006 · 166 posts · Location: Mielec → Kraków
Group memberships: Administratorzy, Użytkownicy, Zespół fedorapl.org
Show profile · Link to this post
Wieczorem spróbuję napisać skrypt z yumem w roli głównej. Oczywiście pewnie to nie na moje siły...

Póki co wpadłem na inny pomysł, ale sprawdzi się tylko dla niezaktualizowanego systemu. Choć w sumie może nawet nie, bo przecież choćby bardzo możliwe, że jakiś plik w danej paczce z wersji na wersję się nie zmienia. A nam wystarczy tylko jeden taki.
Można uruchomić system z płytki awaryjnej. Następnie z paczek na płytce zrobić repozytorium. Przeglądać wszystkie pliki w /mnt/sysimage, następnie szukać dostawcy w repo (pytanie jak?) i instalować ze zmienionym korzeniem via rpm. Właściwie, jeśli paczka nie udostępnia żadnych plików w /var/, to można ją wgrać z opcją --justdb, co bardzo przyśpieszy proces instalacji.
[Image: http://img131.imageshack.us/img131/6453/fedoracoregt6.jpg]
[Image: http://img160.imageshack.us/img160/1940/prisonbreak2id2.gif]
Reply to this post:
Verification code: VeriCode Please note the verification code from the picture into the text field next to it.
Reply
Go to forum
Powered by Unclassified NewsBoard (© 2003-7 by Yves Goergen)
Current time: 2009-01-07, 13:48:44 (UTC +01:00)
Copyright © 2006 - 2007 fedorapl.org