Skip to content

regisu blog

Blog z notatkami …

Archive

Category: Linux

Kurcze okazuje się to banalnie proste. Wrzucamy płytkę do CD/DVD i wykonujemy polecenie:

dd if=/dev/cdrom of=/home/obraz_plytki.iso

Nie raz już potrzebowałem szybko sprawdzić jak dany prefix jest widziany przez zagranicznych dostawców. Ale zawsze wiązało się to z wyszukaniem looking glass’a, wejściem na niego, wybraniem odpowiedniej opcji, wpisaniem prefixu itp. itd.. Jak się to robi odpowiednio często to ma się dość.

Na szczęście TINET umożliwia dostęp po telnecie do testowego route serwera, na którym można sprawdzić czy dany prefix znajduję się w tablicy routing’u, od kogo przyszedł, jakie ma community ustawione itp.

Ale telnetowanie się na rotue serwer i wpisywanie wszystkiego z palca też nie jest szczytem wygody. Dlatego napisałem sobie prosty skrypcik kontynuuj czytanie …

Aby zmienić strefę czasową w debianie po instalacji, należy wklepać w konsoli następujące polecenie:dpkg-reconfigure tzdata
I wybrać odpowiednią strefę 🙂

Do backupu danych z domowego serwerka na VPS’a używam programu rdiff-backup. W zasadzie jest to opensource’owy skrypt napisany w python’ie. Jego dużą zaletą jest to, że potrafi wykonywać backup inkrementacyjny, dzięki czemu można odzyskać nie tylko ostatnią wersję pliku, ale także wersję sprzed kilku dni. Dodatkowo umożliwia on wykonywanie backupu przez bezpieczny szyfrowany kanał ssh.

Skrypcik, jest w zasadzie połączeniem tego co można znaleźć  na stronie rdiff’a w sekcji examples o tu. kontynuuj czytanie …

Routing można w debianie włączyć na kilka sposobów. Jednym z nich jest napisanie skryptu, który przy starcie wykonać linijkę:

echo "1" > /proc/sys/net/ipv4/ip_forward

Ale można też skorzystać z dedykowanego rozwiązania jakim jest sysctl. To interfejs który pozwala w dość elegancki sposób zmieniać dynamicznie parametry pracy jądra. Aby przekazywanie pakietów włączało się przy starcie wystarczy w pliku /etc/sysctl.conf dopisać lub odkomentować linijkę:

net.ipv4.ip_forward=1

Dzięki temu po restarcie systemu routing będzie działał.

Można oczywiście obejść się bez restartu, wystarczy przeładować ustawienia sysctl przy pomocy polecenia:

sysctl -p /etc/sysctl.conf

Nowa instalacja debiana, wszystko już ładnie skonfigurowane i jeszcze trzeba tylko parę rzeczy dodać w crontabie. Więc odpalam sobie:
crontab -ea tam zonk 😐 pojawia się okienko edytora nano zamiast mojego ulubionego vima! No tak! Przecież w debianie nano ustawione jest jako domyślne.
Ok więc jak to zmienić? … kurde nie pamiętam 🙁
Na szczęście po chwili googlania znalazłem odpowiednie polecenie:
update-alternatives --config editor

Jeśli ktoś zamierza przesiąść się na ubuntu czy inną dystrybucję Linuksa, a ma do czynienia ze sprzętem sieciowym np. Cisco, to warto znać program o nazwie minicom.
Instalacja w ubuntu jest banalnie prosta:

apt-get install minicom

Użytkowanie na początku wydaje się skomplikowane, ale po pewnym czasie można nawet dojść do wniosku, że jest wygodne.

Za pierwszym razem, gdy już podłączymy nasze urządzenie do komputera przez interfejs serial albo przejściówkę USB, to wpisujemy:

sudo minicom -s

Opcja -s oznacza setup, czyli konfigurację minicom’a. A sudo jest po to by bez problemów uzyskać dostęp do portu szeregowego, gdyż normalny użytkownik nie posiada praw dostępu do niego. Po wpisaniu komendy wyświetli nam się menu, z którego należy wybrać „Ustawienia portu szeregowego„. Po czym ukaże nam się okno takie jak na obrazku po prawej stronie. kontynuuj czytanie …

Czasem potrzebny jest duuży plik, żeby np. przetestować antenkę i wtedy zawsze pojawia się problem skąd wziąć 10BG danych do przesłania na drugą stronę?
Prostszą metodą jest wygenerowanie takiego pliku na serwerze za pomocą polecenia dd i urządzenia /dev/zero.
Można to zrobić za pomocą polecenia:

dd if=/dev/zero of=pliczek bs=512 count=20971520

gdzie bs to wielkość bloku w pliku, a count to ilość bloków.

Wzór na obliczenie żądanej wielkości jest bardzo prosty:

Wielkość_pliku[B] = bs[B] x count

Czyli:
10737418240[B] = 512[B] x 20971520

Jak widać wynik wychodzi w bajtach! Więc musimy jeszcze podzielić nasz wynik przez 1024 co da nam 10485760KB <kilo bajtów>. A potem przez kolejne 1024 co da nam 10240MB <mega bajtów>. I jeszcze raz przez 1024 by otrzymać 10GB <giga bajtów> czyli dokładnie to o co nam chodziło 🙂 .

Mam na laptopie domowym ubuntu 10.04, a oprócz niego mam w domu serwerek na debianie z sambą, gdzie trzymam swoje dokumenty. Jako, że lubię wszystko mieć dostępne zewsząd nawet jak jestem poza domem <bo nigdy nie wiadomo kiedy co się może przydać>, to moje rzeczy trzymam na serwerku, a nie na laptopie, którego nie chce mi się ze sobą wszędzie dźwigać.

Żeby mieć szybki dostęp do dokumentów na serwerze potrzebowałem czegoś co jest podobne do mapowania dysków w windowsie. Czyli żeby montowały się automatycznie podczas startu.  Zrobienie tego okazało się bardzo proste.

Na początek trzeba było zainstalować paczkę smbfs:

sudo apt-get install smbfs

A potem utworzyć <jako root> katalog gdzie będą montowane udziały samby np.:

mkdir /media/nazwa_zasobu

Następnie wyedytować plik /etc/fstab i dodać następujący wpis <dla udziałów niechronionych przy pomocy hasła:

//nazwa_serwera/nazwa_zasobu /media/nazwa_zasobu cifs guest,auto 0 0

Z kolei dla udziałów chronionych przy pomocy hasła wpis wygląda tak:

//nazwa_serwera/nazwa_zasobu /media/nazwa_zasobu cifs username=ktos,password=jakies_haslo,auto 0 0

Po restarcie i połączeniu siecią wszystko powinno się ładnie podmontować. Pojawią się dodatkowo ikonki podmontowanych dysków na pulpicie.

Zainstalowałem sobie debiana na serwerku z software’owym RAID’em 5 i szyfrowaniem dc-crypt / LUKS partycji swap oraz root. A do tego dodałem LVM’a. Wiadomo instalacja była prosta pod debianem, gdyż w zasadzie wszystko idzie „wyklikać” poprzez menu. Wszystko działało pięknie, tylko zapomniałem zablokować pakiet kernela, by go nie upgrade’nął przy instalacji aktualizacji. Oczywiście zapomniałem o tym, wykonałem kilka aktualizacji <w tym i jądra> i tak to sobie chodziło … do pierwszego restartu. Po którym już się system nie podniósł. Dlatego w tym poście opisuje w jaki sposób można, za pomocą liveCD z ubuntu i polecenia chroot, dostać się do swojego systemu w celu dokonania naprawy.

Otóż wygląda to tak:

  • Są trzy dyski po 1,5TB
  • Jest utworzona partycja typu RAID 1 mający 500MB na patycję /boot
  • A także partycja typu RAID5 mająca około 3TB zawierająca partycję szyfrowaną LUKS
  • w LUKS utworzona jest partycja typu LVM2, a w niej reszta systemu <czyli /root, /var, /tmp oraz swap

Więc na początek trzeba:

  • Wziąć płytkę liveCD np. ubuntu i odpalić.
  • Skonfigurować sieć, bramę, DNS’y
  • Zainstalować potrzebne nam programy: cryptsetup, lvm2 i mdadm za pomocą polecenia apt-get install cryptsetup, raid, lvm
  • Po instalacji musimy odpalić macierz RAID, robimy to poleceniem:mdadm --assemble --scan
  • Deszyfrujemy naszą partycję za pomocą polecenia cryptsetup luksOpen /dev/md1 crypt1
  • Podajemy hasło do partycji
  • Skanujemy w poszukiwaniu grup wolumenów LVM poleceniem vgscan --mknodes
  • Potem aktywujemy logiczne wolumeny za pomocą polecenia vgchange -ay
  • Następnie montujemy partycję za pomocą poleceń:mount /dev/mapper/vg0-rootfs /mnt/chroot
    mount /dev/md0 /mnt/chroot/boot
    mount -o bind /proc /mnt/chroot/proc
    mount -o bind /dev /mnt/chroot/dev
  • I chroot’ujemy się do podmontowanego systemu:
    chroot /mnt/chroot /bin/bash

I już! jesteśmy w naszym systemie 🙂 Jeżeli potrzebujemy do czegoś pozostałych partycji jak np var i tmp to je też możemy zamontować.