Wyświetlenie artykułów z etykietą: freebsd

sobota, 02 lipiec 2011 04:39

Ratowanie FreeBSD

Chciałbym się tu podzielić uwagami na temat awarii, która miał miejsce na jednym z serwerów freebsd. Do serwera były podpięte 2 dyski ad01s1 i ad1s1 . Dysk backupowy ad1s1 uległ uszkodzeniu. Po jego odpięciu od komputera freebsd zaczęło się zachowywać nieprawidłowo. Partycja główna / przeszła w tryb readonly , partycje /usr , /var , /tmp nie były podłączane przy starcie.

 

Zmiana trybu partycji głównej na normalny :

 

mount -u
mount -a -t ufs
swapon -a

 

Informacje o partycjach są zapisane w pliku /etc/fstab . Aby móc poprawić ten plik musimy podłączyć partycję /usr ręcznie. Jeśli jej punkt podłączenia przed awarią znajdował się w /dev/ad0s1f wykonujemy :

 

mount /dev/ad0s1f  /usr

 

Teraz mamy możliwość skorzystania z edytora.

 

ee /etc/fstab

 

Modyfikujemy informację o partycjach, np. usuwamy informację o odłączonym dysku twardym.

Dział: Linux
piątek, 09 lipiec 2010 08:39

Freebsd - uwagi instalacja

Konfiguracja sieci

Do ustawienia sieci w freebsd standardowo używamy sysinstall. Niestety sysinstall dopisuje konfigurację sieci na końcu plików konfiguracyjnych zamiast zastąpić starą. Dlatego jeżeli sieć nie działa musimy sprawdzić pliki :

/etc/rc.conf ( plik z ustawianieniami adresu IP i bramy )

/etc/resolv.conf ( plik z ustawieniami DNS - rozpoznawanie nazw )

 


Instalacja mc :

cd /usr/ports/misc/mc/

make config

make install clean

 


 

MySQL

Instalacja ( podana dla 5.1 podobnie dla innych wersji )

cd /usr/ports/databases/mysql51-server/
make install clean
/usr/local/bin/mysql_install_db
chown -R mysql /var/db/mysql/
chgrp -R mysql /var/db/mysql/
/usr/local/bin/mysqld_safe –user=mysql &
/usr/local/bin/mysqladmin -u root password newpassword

 

Uwaga newpassword to nowe hasło , podajmy w postaci 'ala ma kota' ( z apostrofami na początku i końcu ).

Czasami po próbie tej ostatniej komendy ( nadanie hasła ) otrzymujemy błąd:

can't connect to local mysql server through socket '/tmp/mysql.sock' (2)

Jeśli tak sie stanie trzeba będzie ją ponowić po modyfikacji pliku /etc/rc.conf ( modyfikacja opisana poniżej ) i ponownym uruchomieniu systemu .

Aby mysql był uruchamiany przy starcie systemu edytujemy /etc/rc.conf i dopisujemy na końcu

mysql_enable="YES"

Zatrzymanie mysql

/usr/local/etc/rc.d/mysql-server stop

Uruchomienie mysql

/usr/local/etc/rc.d/mysql-server start

Aby odinstalować :

pkg_delete -x mysql


Podłączanie dodatkowego dysku

Za pomocą komendy sysinstall tworzymy partycję na nowym dysku ( c -configure -> label -> create -> write ).

Po utworzeniu partycji fizycznej musimy ją przyporządkować do partycji logicznej . Używamy do tego opcji label ( z sysinstall ). Np. przyporządkowujemy ad1s1d do /backup.


Kopia zapasowa

Za pomocą komendy

mount

sprawdzamy podłączenie partycji . Może to wyglądać następująco

 

serwer# mount
/dev/ad0s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad0s1e on /tmp (ufs, local, soft-updates)
/dev/ad0s1f on /usr (ufs, local, soft-updates)
/dev/ad0s1d on /var (ufs, local, soft-updates)

 

Za pomocą komendy

df -h

sprawdzamy zajętość partycji. Jeśli nie mamy partycji /arch lub innej przeznaczonej do archiwizacji musimy utworzyć katalog w ramach posiadanych przez nas partycji. Na trenowanej przeze mnie instalacji dużo miejsca było tylko na partycji ad01f ( czyli /usr ). Dlatego tworzymy katalog :

mkdir /usr/backup

Następnie wyłaczamy go z kopiowania

chflags nodump /usr/backup

 

 Ponieważ modyfikacji wykonujemy najczęsciej na plikach z katalogów /usr i /var to w opisywanym wypadku musimy skopiować partycje ad0s1f i ad0s1d.

 Kopiowanie wykonujemy komendą dump

Komenda poniżej skopiuje katalog /usr ( z pominięciem katalogu backup który wyłączyliśmy powyżej ) do pliku /usr/backup/ad0s1f.dump. Parametr 0af oznacza , że stara kopia zostanie nadpisana

dump 0af /usr/backup/ad0s1f.dump /usr

Jeśli posiadamy specjalną partycję do wykonania kopii zapasowej ( np /backup ) komenda może wyglądać następująco :

dump 0af /backup/usr.dump /usr

Podobnie kopiujemy katalog var

dump 0af /usr/backup/ad0s1d.dump /var

 


Odzyskiwanie kopii zapasowej

Czasami do odzyskania kopii danej partycji jest wymagane jej wczesniejsze odłączenie

umount -f /dev/ad0s1d

 

Potem formatujemy partycję, którą będziemy odzyskiwać

newfs /dev/ad0s1d

 

Nastepnie podłączamy sformatowaną partycję ( w tym przykładzie /var )

mount /dev/ad0s1d /var
cd /var

 

I odzyskujemy dane z kopii ( w tym przykładzie zakładamy że jest ona w /backup/var.dump )

restore -rf /backup/var.dump

 

Dział: Linux

Copyright © 2020 AR-WAL S.J. . Wszelkie prawa zastrzeżone. Opracowanie strony AR-WAL S.J.