niedziela, 30 grudnia 2012

Kopiowanie plików pod Linuksem

Dzisiaj krótko, ale treściwie: użyj rsync!

Zalety:

  • możliwość wznowienia
  • możliwość prostej kompresji strumienia
  • możliwość wykorzystania dowolnego protokołu
  • powszechna dostępność pod Linuksem
  • brak wad
A oto działający przykład, którego zadaniem jest skopiować pliki przez ssh ze zdalnego serwera: rsync -arvz -e ssh user@some-host:~/remote-direcotory ~/local-directory

sobota, 29 grudnia 2012

Backup i przywracanie systemu Linux

Czasem (zawsze, ale często dowiadujemy się o tym za późno ;) ) zdarza się, że potrzebujemy wykonać backup systemu. W Linuksach sprawa wygląda bardzo prosto - wszystko dzięki otwartości systemu. Dzięki takiemu backupowi możemy przywrócić bądź przenieść działający system wraz z konfiguracją zawsze gdy wystąpi taka potrzeba, a plik z archiwum będzie zajmował niewiele miejsca na dysku. Ale do rzeczy.

Chcąc zarchiwizować system (bez katalogów użytkownika), z roota wykonujemy następujące polecenie: tar cvpjf backup.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys --exclude=/home / Utworzony zostanie plik backup.tar.bz2, z którego możemy w każdej chwili przywrócić działający system z (np. dystrybucji live bądź płyty ratunkowej) poleceniem: tar xvpfj backup.tar.bz2 -C /
mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys
mkdir home
W przypadku gdy przenosimy system na inny dysk, należy ustawić:
  • flagę bootującą na partycji boot
  • zaktualizować plik /etc/fstab
  • zaktualizować plik /etc/sysconfig/network
  • przywrócić program rozruchowy (grub)
  • oraz przekopiować katalogi użytkownika przez sieć
To ostatnie wykonałem to przy pomocy płyty instalacyjnej z opcją "Aktualizacja istniejącej instalacji". Program wykryje, że pakiety są w nowszej wersji i przetworzy jedynie dane znajdujące się w systemie w celu aktualizacji gruba.