Nagrywanie płyt

Przed utworzeniem płyty startowej z Cinemiksem należy pobrać archiwum z systemem i wydobyć z niego plik cinemix.img, który jest obrazem dyskietki startowej o pojemności 2.88 MB.
Przystępując do nagrywania należy utworzyć CD-ROM startowy (lub DVD-ROM startowy w przypadku takiej możliwości). Można do tego celu użyć dowolnego programu potrafiącego tworzyć takie płyty, należy przy tym zwrócić uwagę na opcje startowe. Poniżej znajduje się opis jak utworzyć płytę startową w kilku popularnych programach do nagrywania. Płyty takie zaleca się nagrywać w trybie Disc At Once (DAO).
Nie ma potrzeby tworzenia listy plików do odtworzenia - wszystkie katalogi na płycie zostaną przeszukane na obecność plików z rozszerzeniami multimedialnymi, a następnie po kolei będą odtworzone.

Nero Burning ROM

Czyli chyba najpopularniejszy obecnie program do nagrywania płyt w Windows obsługujący wiele formatów oraz nagrywarek.
Uwaga: obrazy dyskietek startowych w Nero mają standardowo rozszerzenie .ima więc przy wyborze pliku obrazu należy ustwić maskę wyboru plików na wszystkie pliki (*.*), albo zmienić nazwę pliku obrzu z cinemix.img na cinemix.ima.

Z poziomu Kreatora nie można zrobić płyty startowej, więc należy go zamknąć. Naciskamy Ctrl+N albo pierwszą ikonkę z lewej, ukazuje się okienko w którym:

Nero boot

Następnie dodajemy wybrane pliki do kompilacji i postępujemy tak jak z nagraniem zwykłej płyty z danymi.

Cinemix to tylko niecałe 3 MB, jednak może się zdarzyć że wszystko nie zmieści się na płycie. W tym przypadku można skorzystać z opcji nadpalania (overburning) i dla pewności nagrać płytę wolniej np. x8. Uwaga: stosując overburning można uszkodzić nagrywarkę, nie wszystkie nagrywarki go obsługują.

K3B

Bardzo popularny program do nagrywania płyt w Linuksie w środowisku KDE. Sposób tworzenia płyty startowej jest następujący:

K3B boot

Następnie dodajemy wybrane pliki do kompilacji i postępujemy tak jak z nagraniem zwykłej płyty z danymi.

Cdrtools

Jest to pakiet programów pod konsolę do nagrywania płyt popularny w systemie Linux. W przypadku jąder z serii 2.4 i starszych dla nagrywarek IDE wymagana jest emulacja SCSI (jądro musi być odpowiednio skonfigurowane). Dla jądra z serii 2.6 nie wymagają się już emulacji.
Najbardziej potrzebne programy z tego pakietu to mkisofs (do tworzenia obrazów płyt) oraz cdrecord (do wypalania). Należy więc najpierw utworzyć obraz, a potem go wypalić. Poniższy opis przedstawia podstawowe czynności jakie należy wykonać aby wypalić płytę startową CD w trybie TAO oraz DAO. Wszystkie polecenia wydajemy z poziomu konsoli.

Na początku należy sprawdzić jakie nagrywarki są zainstalowane w systemie wydając polecenie:

cdrecord -scanbus

Po wydaniu tej komendy (w przypadku emulacji IDE-SCSI) otrzymamy na przykład takie coś:

Cdrecord 2.0 (i586-mandrake-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
Using libscg version 'schily-0.7'
scsibus0:
0,0,0 0) 'LITE-ON ' 'LTR-48246S ' 'SS0E' Removable CD-ROM
0,1,0 1) *
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *

Z czego wynika że w systemie jest jedna nagrywarka o adresie urządzenia 0,0,0. Adres ten będzie potrzebny programowi cdrecord.
Nie zaszkodzi sprawdzić jakie dodatkowe opcje posiada nagrywarka:

cdrecord dev=0,0,0 driveropts=help -checkdrive

otrzymujemy:

Cdrecord 2.0 (i586-mandrake-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
Using libscg version 'schily-0.7'
Device type : Removable CD-ROM
Version : 0
Response Format: 2
Capabilities :
Vendor_info : 'LITE-ON '
Identifikation : 'LTR-48246S '
Revision : 'SS0E'
Device seems to be: Generic mmc CD-RW.
scsidev: '0,0,0'
scsibus: 0 target: 0 lun: 0
Linux sg driver version: 3.1.24
Driver options:
burnfree Prepare writer to use BURN-Free technology
noburnfree Disable using BURN-Free technology
forcespeed Tell the drive to force speed even for low quality media

Opcja burnfree (trzecia linijka od dołu) mówi że nagrywarka posiada system ochrony zapisu (BURN-Proof, Smart-Burn, Just-Link itp.) zapobiegający błędom buffer-underrun. Warto z tego skorzystać.

Przy tworzeniu obrazu należy pamiętać o kilku szczegółach. Najważniejsze jest żeby wszystkie pliki które mają być nagrane znajdowały się w jednym katalogu, po za tym na dysku musi być odpowiednia ilość miejsca dla obrazu (z reguły ok. 700 MB). Wydajemy polecenie:

mkisofs -r -J -b cinemix.img -c boot.catalog -o obraz.iso plytka

Parametry oznaczają:
-r - utwórz obraz z rozszerzeniem Rock Ridge uwzględniającym własności systemu plików Linuksa, przy okazji zmień właściciela wszystkich plików na root itp.
-J - utwórz również z rozszerzeniem Joliet, aby można było odczytać długie nazwy plików w Windows
-b cinemix.img - użyj obrazu dyskietki startowej z Cinemiksem, plik ten musi się znajdować w katalogu plytka (gdzie znajdują się pliki do nagrania)
-c boot.catalog - plik boot.catalog wymagany przy tworzeniu płyt startowych, plik ten jest tworzony w obrazie płyty
-o obraz.iso - wynik zapisz do pliku obraz.iso
plytka - wszystkie pliki przeznaczone do nagrania znajdują się w katalogu plytka

Jeśli utworzymy obraz wystarczy go teraz nagrać na płytę, można to zrobić poleceniem:

cdrecord dev=0,0,0 -speed=8 -driveropts=burnfree -eject -v obraz.iso

Parametry oznaczają:
dev=0,0,0 - wypalaj płytę na urządzeniu SCSI 0,0,0 (w naszym przykładzie)
-speed=8 - wypalaj z prędkością x8 (brak tego parametru powoduje wybranie możliwie największej prędkości zapisu)
-driveropts=burnfree - włącz system ochrony zapisu
-eject - po nagraniu wysuń tackę
-v - włącza tryb gadatliwy, pokazuje postęp wypalania płyty
obraz.iso - nazwa pliku z obrazem płyty
Jeżeli płyta ma zostać nagrana w trybie DAO należy dodać parametr -dao
W pewnych przypadkach potrzeba dodać parametr -input-charset zestaw_znaków, który mówi w jakim standardzie są kodowane znaki narodowe w naszym systemie Linux (wymagane przy tworzeniu Joliet); bez tego parametru nazwy plików zawierające polskie znaki mogą dziwnie wyglądać w Windows. Domyślnym zestawem znaków jest utf-8. Gdy nasz sytem używa jeszcze kodowania iso8859-2 nalezy dopisać -input-charset iso8859-2

Na początku program poczeka kilka sekund jakby ktoś się miał rozmyślić, a później będzie sukcesywnie wypisywał ilość wypalonych megabajtów. Po wypaleniu płyty możemy skasować plik obraz.iso.

Tworzenie obrazu oraz wypalanie można zapisać w jednym potoku:

mkisofs -r -J -b cinemix.img -c boot.catalog plytka |
cdrecord dev=0,0,0 -speed=8 -driveropts=burnfree -eject -v -

W opcjach mkisofs pomijamy informacje o pliku wyjściowym, więc dane będą kierowane na standardowe wejście, a znak - na końcu linijki mówi żeby cdrecord pobierał dane ze standardowego wejścia. Zaletą jest brak potrzeby tworzenia pliku obrazu, zaś wadą jest to że nie jest z góry znany rozmiar obrazu płyty, więc trzeba mieć pewność że wszystko się zmieści (nie można też nagrywać w trybie DAO).

Jeśli chcemy nagrać płytę w locie płytę w trybie DAO należy znać wielkość obrazu który zostanie utworzony. Służy do tego parametr -print-size programu mkisofs. W tym przypadku pomocny może się okazać skrypt:

#!/bin/sh
DEV=0,0,0
SPEED=8
DIR=plytka
CDSIZE=`mkisofs -r -J -b cinemix.img -c boot.catalog -print-size $DIR`
mkisofs -r -J -input-charset iso8859-2 -b cinemix.img -c boot.catalog $DIR |
cdrecord dev=$DEV -speed=$SPEED -eject -driveropts=burnfree -tsize=${CDSIZE}s -dao -