update 2011-01-01: Backtrack 5 może być używany w trybie persisten, to dużo lepsze rozwiązanie niż to opisywane poniżej! Zaktualizuj system!

Jak ogólnie wiadomo bardzo ostatnio popularna dystrybucja linux-a BackTrack (4.0 Final) na oficjalnej stronie dostępna jest jako obraz płyty DVD (LiveCD/DVD) z której można sobie odpalić ten system, niestety każdy reboot kończy się totalną utratą danych co jest dosyć irytujące. Dlatego właśnie zdecydowałem się przygotować lekko zmodyfikowaną wersję BT4 na USB która działa jak normalny system czyli wszystkie dane są zapisywane, nie jest to kolejna wersja która kompresuje dane za pomocą Squashfs+aufs/unionfs tylko prawdziwa instalacja na normalnym systemie plików. (domyślnie jest to ext2) A teraz do rzeczy, są dwie możliwość instalacji (jest ich więcej ale ja opisze tylko dwie) pierwsza czysta z płyty LiveDVD BT4 oraz druga z mojego obrazu BT4 zaktualizowanego do 06.06.2010.

Wymagania: 1x pendrive (minimalnie 8GB, może być dysk na USB ale ja stosuje np. Sandisk Cruzer Blade 16GB), 1x płyta DVD z BT4 Final (metoda 1), 1x dowolna LiveCD z linux-em 2.6, 1x podstawowa wiedza na temat linux-a.

Metoda 1 – czyta instalacja z płyty

1. Przygotowanie:

Odpalamy LiveDVD z BT4 logujemy się na root, wkładamy pendriver (8GB lub większy) do wolnego portu USB a następnie sprawdzamy pod jaką nazwa się zainstalował za pomocą polecenia:

dmesg | tail

Czyścimy jego zawartość: (UWAGA! dane na nośniku zostaną wymazane)

dd if=/dev/zero of=/dev/sdb bs=1024 count=20

Teraz tworzymy jedną partycję na całej powierzchni nośnika USB za pomocą dowolnego programu: fdisk, cfdisk, gparted, parted partycją powinna mieć flagę „boot”. Jeżeli nasz nośnik jest większy niż 10GB spokojnie możemy zrobić sobie inna konfiguracje np.

/boot = 50MB

/ = 10GB

/home = reszta pojemności

Kolejna sprawa to system plików, ja zalecam ext2 ale BT4 wspiera ext3, ext4, xfs, reiserfs, jfs mimo wszystko ext2 jest najlepszy do tego celu ze względu na oszczędność nośnika. (dodatkowo potem można jeszcze lekko zmodyfikować parametry montowania dla poprawy wydajności)

2. Instalacja

Teraz odpalamy instalator BT4 którego ikona znajduje się na pulpicie systemu (aby odpalić tryb graficzny wpisujemy startx) . Instalację przeprowadzamy normalnie, wybieramy do instalacji nasz nośnik USB, sami konfigurujemy partycję tak aby instalacja odbyła się na partycję które zostały przez nas wcześniej przygotowane. Jeżeli jesteśmy zieloni, wybieramy automatyczną konfigurację partycji czyli „Use entire disk” 😛 na końcu instalacji możemy kliknąć przycisk „Advanced” i odznaczyć instalację GRUB-a w MBR bo to i tak się instalatorowi nie uda z bliżej mi niewiadomych przyczyn. (wyskoczy błąd który trzeba zignorować)

Konsola i wpisujemy: sync && reboot

3. Korekty i GRUB

Instalator poległ… ale my działamy dalej!

Odpalamy system jeszcze raz z płyty DVD BT4 a następnie:

mkdir /bt4

Wsadzamy pendrive do USB, i montujemy go (przypominam, aby sprawdzić gdzie znajduje się nasz pendrive po jego wsadzeniu wpisujemy w konsoli: dmesg | tail)

mount -o noatime /dev/sdb1 /bt4

Oczywiście /dev/sdb to nasz pendrive, /dev/sdb1 to pierwsza i jedyna partycja która na nim jest.

a następnie na ślepo stukamy:

mount -t proc none /bt4/proc

mount -o bind /dev /bt4/dev

mount -o bind /sys /bt4/sys

chroot /bt4 /bin/bash

source /etc/profile

Teraz pora poprawnić konfiguracje GRUB-a i fstab, której dokonujemy za pomocą dowolnego edytora tekstu: vi, nano, gedit, kedit, vim, emacs. Aby to zrobić musimy poznać UUID naszego dysku a raczej partycji którą stworzyliśmy. UUID to identyfikator naszej partycji. Aby go poznać wpisujemy:

ls -l /dev/disk/by-uuid

Wynik:

lrwxrwxrwx 1 root root 10 06-06 01:10 056d7322-8191-4729-b2b7-7e1bda1d4cfa -> ../../sda6
lrwxrwxrwx 1 root root 10 06-06 01:10 120F0ACB0F82B494 -> ../../sdb5
lrwxrwxrwx 1 root root 10 06-06 01:10 965dc8cf-4f79-4623-a1ef-e179559142e6 -> ../../sda5
lrwxrwxrwx 1 root root 10 06-06 01:10 97b9bd4b-396f-428f-9d7b-cf85e54526f8 -> ../../sda1
lrwxrwxrwx 1 root root 10 06-06 01:10 c1869236-1d3c-4f80-9c88-91c6566d8139 -> ../../sda7
lrwxrwxrwx 1 root root 11 06-05 23:14 db100bc2-52b7-4789-a9de-528db8c7dd8a -> ../../loop0
lrwxrwxrwx 1 root root 10 06-06 01:10 F2D413C0D413864F -> ../../sdb1
lrwxrwxrwx 1 root root 10 06-06 01:10 f50572af-b4cb-40fd-9281-39155fde6cd9 -> ../../sda8

UUID zaznaczyłem na czerwono, plik naszego dysku na zielono. Musicie jednak pamiętać że plik pod którym jest nasz pendrive może się zmieniać w zależności od ilości dysków jaką mamy w systemie, portu do którego zostanie wsadzony itd. dlatego za każdym razem kiedy go wyciągamy i wkładamy trzeba sprawdzić pod jakim plikiem on się faktycznie pojawi za pomocą: dmesg | tail

Po tym jak już wiemy jakie UUID ma nasz pendrive musimy poprawić /boot/grub/menu.lst

title           BackTrack 4
uuid           F2D413C0D413864F
root        (hd0,7)

kernel          /boot/vmlinuz-2.6.30.9 root=UUID=F2D413C0D413864F ro quiet splash
initrd          /boot/initrd.img-2.6.30.9
quiet

Inne niepotrzebne pozycje w menu.lst można wyrzucić.

Następnie poprawiamy /etc/fstab

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
UUID=F2D413C0D413864F /               ext2    noatime,nodiratime,errors=remount-ro 0       1

Tak jak na przykładzie wywalamy niepotrzebne cdrom-y, dyskietki, inne dyski i zostawiamy tylko proc i /, chyba że mamy pendrive i zrobiliśmy oddzielny / (root), /boot, /home , wtedy trzeba wpisać UUID każdej partycji tak aby system wiedział co gdzie montować.

Gdy już wszystko pięknie ustawione, przechodzimy do poinformowania grub-a o zmianach.

grub

root (hd2,0)

setup (hd2)

quit

Gdzie (hd2,0) odpowiada dyskowie numer 2 czyli naszemu pendrive-owi a ,0) to pierwsza partycje na nośniku. Co ciekawe gdy wpiszemy „root (hd” i wciśniemy „tab” grub sam pokaże nam jakie mamy dyski w systemie łącznie z naszym pendrivem.

Na koniec trzeba wyjść z chroot-a za pomocą komendy „exit”

4.Instalacja GRUB-a

Pewnie znajdą się osoby które mnie skarcą i powiedzą że instalacje grub-a powinno się robić z chroot-a ale ja tego nie robię bo grub nie lubi chroot-a i często gęsto wyrzuca błędy w stylu że: plik stage1 lub stage2 jest uszkodzony, dysk nie zawiera /boot, lub wcale nie istnieje… dlatego ja robię to z LiveCD.

Montuje pendrive w /bt4 (niekonieczne jeżeli po wyjściu z chroot-a nie został odmontowany) i wykonuje polecenie:

grub-install –recheck –no-floppy –root-directory=/bt4

Czasem to może potrwać, ale o ile nie wypluje błędów to ok. Sposób ten sprawdza się na 99% nośników, zarówno na dyskach jak i na pamięciach flash.

Metoda 2 – z mojego obrazu nośnika

1. Pobieranie i przygotowanie plików

Przygotowałem dla was specjalną wersje Backtrack4 gotową do instalacji na dowolnym nośniku, ma ona niestety kilka wad, po pierwsze przeznaczona jest na 8GB nośnik, partycja która jest w obrazie ma dokładnie tyle. Czyli jeżeli nagracie ten obraz na pendrive większy niż 8GB pozostałe miejsce leży odłogiem. (Można ewentualnie próbować go zmienić za pomocą gparted ale może się okazać że taka manipulacja zmieni UUID i klops, oczywiście UUID można bez problemu zmienić: tune2fs /dev/sdb1 -U F2D413C0D413864F no ale to dodatkowa operacja 🙂 Kolejna wada to brak możliwości wyboru systemu plików na nasz BT4

Pobieramy wszystkie pliki (99MBx10 + 70MBx1=~1GB): http://chomikuj.pl/funtoo/Backtrack4_USB/bt4.img

Składamy plik do kupy:

cat bt4.img.xz_* > bt4.img.xz

Rozpakowywujemy go: (co może trochę potrwać LZMA2)

xz -d bt4.img.xz

2. Nagrywamy obraz na pendrive

dd if=bt4.img of=/dev/sdb

UWAGA! Dysk /dev/sdb podaje przykładowo, należy tu umieścić poprawny plik pod którym kryje się wasz pendrive, pomyłka może spowodować że nadpiszecie sobie dysk twardy a nie pendrive. Po raz kolejny przypominam, aby sprawdzić pod jakim plikiem kryje się pendrive odrazu po jego wsadzeniu do portu USB należy wpisać: dmesg | tail wynik tej komendy wygląda tak:

scsi 5:0:0:0: Direct-Access     USB 2.0  SanDisk Cruzer Blade 0.00 PQ: 0 ANSI: 2
sd 5:0:0:0: Attached scsi generic sg8 type 0
sd 5:0:0:0: [sdb] 63176704 512-byte logical blocks: (32.3 GB/30.1 GiB)
sd 5:0:0:0: [sdb] Write Protect is off
sd 5:0:0:0: [sdb] Mode Sense: 00 00 00 00
sdb: sdb1
sd 5:0:0:0: [sdb] Assuming drive cache: write through
sd 5:0:0:0: [sdb] Attached SCSI removable disk
sd 5:0:0:0: [sdb] LUKS Encrypted (Serpent/AES)

Czyli mój pendrive kryje się pod /dev/sdb a pierwsza jego partycja to: /dev/sdb1

KONIEC, pendrive, system jest gotowy do odpalenia.

Pod metoda 2 – mieszana 🙂

Ta metoda łączy szybkość drugiej metody i możliwości pierwszej. Polega na nagraniu plików z obrazu na przygotowaną przez nas partycję lub partycję, niestety wymaga korekty UUID lub ustawień grub-a.

1. Przygotowanie

Wkładamy pendrive do USB, tworzymy partycję według uznania, do wyboru systemy plików: ext2, ext3, ext4, xfs, jfs, reiserfs. Montujemy stworzoną partycję pod /bt4, następnie pobieramy mój obraz bt4.img, scalamy go i rozpakowujemy jak w metodzie 2 ale nie nagrywamy go bezpośrednio tylko będziemy kopiować z niego pliki. Niestety montowanie pliku nie uda się normalnie bo obraz zawiera MBR oraz tablicę partycji, dlatego posiłkujemy się parametrem offset.

mkdir /bt4-img

mount -o loop,ro,offset=32256 bt4.img /bt4-img

2. Kopiowanie zawartości obrazu

Metod kopiowania jest wiele, ja preferuje rsync, niektórzy cp, jak kto woli byle osiągnąć końcowy efekt, czyli pliki przeniesione i w 100% zgodne z oryginałem.

rsync -av /bt4-img/* /bt4 && sync

3. Korekta GRUB-a lub zmiana UUID

Wszystko super ale UUID naszej partycji jest inny niż ten który miała partycja w obrazie, trzeba więc wykonać jedno z dwóch możliwości, korekta i instalacja GRUB-a lub zmiana UUID i nadpisanie MBR z obrazu.

Korekta GRUB-a i pliku fstab trzeba wykonać dokładnie tak samo jak w metodzie pierwszej a następnie dokładnie tak samo zainstalować grub-a.

Aby ominąć ten proces można zmienić UUID partycji i nadpisać MBR z obrazu, robi się to następująco:

mount -o ro /dev/sdb1 /bt4 #gdzie /dev/sdb1 to nasz pendrive

cat /boot/grub/menu.lst | grep UUID #rezultat tej komendy to wyświetlenie UUID z obrazu który należy podać w kolejnej komendzie (domyślnie w obrazie jest to: db100bc2-52b7-4789-a9de-528db8c7dd8a )

tune2fs /dev/sdb1 -U db100bc2-52b7-4789-a9de-528db8c7dd8a #gdzie /dev/sdb1 to nasz pendrive!

Teraz instalujemy nadpisujemy MBR, można to zrobić bezpośrednio z obrazu bt4.img lub z plików z samym MBR które przygotowałem na chomiku: http://chomikuj.pl/funtoo/Backtrack4_USB należy pobrać bt4-mbr-nopt.img (obraz MBR bez tablicy partycji)

Nadpisywanie bezpośrednio z obrazu odbywa sie tak:

dd if=bt4.img of=/dev/sdb count=1 bs=446 #oczywiście sdb to nasz pendrive, NIE DYSK!

Nadpisywanie z bt4-mbr-nopt.img

dd if=bt4-mbr-nopt.img of=/dev/sdb

KONIEC!

Uwaga, poradnik był pisany dosyć szybko, może zawierać błędy, jeżeli komuś uda się takie odszukać proszę o informację.

Strona domowa BackTrack

sd 5:0:0:0: [sdb] Attached SCSI removable disk
Tagged with:
 


Portal Bezpieczna Sieć - Forum komputerowe, Informatyka śledcza, bezpieczeństwo, backtrack, kali - Kali Linux Polska Edycja - Polska Edycja Backtrack - Poradnik dla gracza - Praca oparta na wiedzy i edukacji - Seriws Laptopów Katowice - Sklep Komputerowy Katowice - Odzyskiwanie Danych Katowice - Parking BETA przy lotnisku Pyrzowice - miejsce Run w sieci - Prawda od promocjach ,Informatyka, promocje, ceny, ekonomia, ekologia, filozofia - Prawda na tematy informatyki, ekonomii, ekologii - Wróżka, Poezja - eMono-cykl, SegWay, AirWheel, SoloWheel

stat4u