git log --all --graph --decorate --oneline
Miesięczne archiwum: Maj 2017
Wymiana dysku RAID 1
Założenia
Załóżmy że dysk w macierzy RAID już mamy wymieniony na nowy, chociaż przed wymianą wypadałoby odpiąć stary – ale o tym innym razem.
Dysk nowy / pusty -> /dev/sdb,
Dysk istniejący -> /dev/sda
Kopiowanie partycji
Na początku trzeba skopiować partycje. Jeśli nie wiemy jaką tablicę partycji posiadamy możemy użyć sfdisk -l. Jeśli rzuci błędem:
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util sfdisk doesn't support GPT. Use GNU Parted.
to znaczy że używamy GPT.
Tablica GPT
Dla tablicy GPT (czyli wszystko powyżej 2TB) należy użyć:
sgdisk -R=/dev/sdb /dev/sda
Spowoduje to skopiowanie partycji, następnie:
sgdisk -G /dev/sdb
aby zmienić identyfikatory GUID partycji, ponieważ powinny być jednoznaczne, a poprzednie polecenie skopiowało nam kompletną tablicę z wszystkimi identyfikatorami.
Tablica MBR
Dla MBR potrzebny jest następujący zestaw:
sfdisk -d /dev/sda | sfdisk /dev/sdb
oraz opcjonalnie:
sfdisk -R /dev/sdb
jeśli system nie wczytał automatycznie tablicy partycji na nowym dysku.
GRUB
Następnie wypada zainstalować gruba na nowym dysku:
grub-install /dev/sdb
Podpinanie partycji do macierzy
Najpierw sprawdzimy listę partycji, wywołując:
cat /proc/mdstat
Powinniśmy zobaczyć coś podobnego:
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md1 : active raid1 sda2[2] 523968 blocks super 1.2 [2/1] [U_] md0 : active raid1 sda1[2] 16768896 blocks super 1.2 [2/1] [U_] ....
Następnie dla każdej z partycji wykonujemy:
mdadm /dev/md1 -a /dev/sdb2
podmieniając nr partycji / urządzeń wyczytane z wyników cat /proc/mdstat.
Po wykonaniu powyższego cat /proc/mdstat powinien dać podobny wynik:
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md1 : active raid1 sda2[2] sdb2[1] 523968 blocks super 1.2 [2/2] [UU] md0 : active raid1 sda1[2] sdb1[1] 16768896 blocks super 1.2 [2/2] [UU] md3 : active raid1 sda4[2] sdb4[1] 2879277312 blocks super 1.2 [2/1] [_U] [>....................] recovery = 4.2% (121450880/2879277312) finish=413.1min speed=111251K/sec md2 : active raid1 sda3[2] sdb3[1] 33537920 blocks super 1.2 [2/1] [_U] resync=DELAYED unused devices: <none>
Oznacza to że poszczególne partycje są synchronizowane. Polecenie pokazuje też szacowany czas potrzebny na synchronizację poszczególnych partycji. Jest on oczywiście ściśle uzależniony od wielkości partycji i aktualnego obciążenia systemu.
Migracja / synchronizacja plików
Migrację / synchronizację plików pomiędzy serwerami można wykonać za pomocą rsync. Wywołanie:
rsync -a --info=progress2 -e ssh <użytkownik>@<zdalny serwer>:<zdalny katalog> <lokalny katalog>
spowoduje skopiowanie wszystkich plików z zdalnego katalogu na zdalnym serwerze do lokalnego katalogu. Dodanie opcji –delete spowoduje usunięcie plików które nie istnieją na zdalnym serwerze.
Migracja poczty e-mail
Aby zmigrować wiadomości e-mail potrzebujemy imapsync oraz dostęp do obu skrzynek za pomocą protokołu IMAP
Przykładowa komenda:
imapsync --host1 <host źródłowy> --user1 <email źródłowy> --passfile1 <nazwa pliku z hasłem> --host2 <host docelowy> --user2 <email docelowy --passfile2 <nazwa pliku z hasłem do skrzynki docelowej>
Hasła przechowywane są w plikach aby uniknąć wpisywania ich bezpośrednio do wywołania (pojawiałby się później w historii)
Immutable
Nie możesz zmodyfikować plików / katalogów mimo odpowiednich uprawnień? Prawdopodobnie dany obiekt ma ustawioną flagę immutable. Możesz ją usunąć za pomocą:
chattr -i <katalog/plik>
oraz dodać za pomocą:
chattr +i <katalogplik>
Flagę immutable może ustawiać tylko root lub proces z odpowiednimi uprawnieniami.