Jak zapisać dane na CD pod Linuksem. Autor: Winfried Trümper, winni@xpilot.org v2.7, 11 Kwietnia 1999 WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz MMaarruusszzeewwsskkii BB..MMaarruusszzeewwsskkii@@jjttzz..oorrgg..ppll v2.01, 6 Sierpnia 1999 Dokument ten został napisany w standardzie ISO-8859-2. Oryginał tego dokumentu znajduje się pod adresem www.shop.de. ______________________________________________________________________ Spis treści 1. Wprowadzenie. 1.1 Prawa autorskie, licencja i warunki korzystania. 1.2 Zastrzeżenie. 1.3 Proponowane dokumenty do przeczytania. 1.4 Terminologia ... lasery na max ... ognia! 1.5 Obsługiwane zapisywarki. 1.6 Obsługiwane "zalety". 1.7 Listy dyskusyjne. 1.8 Najnowsza wersja. 2. Konfiguracja Linuksa do nagrywania płyt. 2.1 Konfiguracja jądra Linuksa. 2.1.1 Specjalne uwagi dla serii 2.2 2.1.2 Specjalne uwagi dla wersji 2.0 2.2 Sprzęt i pliki urządzeń. 2.2.1 Nagrywarki IDE/ATAPI. 2.2.2 Nagrywarki SCSI. 2.2.2.1 Ogólne urządzenia SCSI. 2.2.3 Nagrywarki podłączane przez porty równoległe. 2.3 Zdobądź oprogramowanie do wypalania CD-R. 2.3.1 Narzędzia obsługiwane z linii poleceń. 2.3.2 Graficzne interfejsy użytkownika. (opcjonalne) 3. Wypalanie płyt CD-R. 3.1 Zapis CD-ROM-ów (czyste dane). 3.2 Tworzenie obrazu późniejszej płyty. 3.2.1 Przetestuj obraz kompaktu. 3.3 Zapisz obraz CD na płytę. 3.4 Zapisywanie płyt audio. 3.5 CD-ROM-y mieszane. 4. Często zadawane pytania wraz z odpowiedziami. 4.1 Jak czuły jest proces wypalania? 4.2 Czy fragmentacja ma zły wpływ na prędkość przepływu danych? 4.3 Czy możliwe jest zapisanie obrazu CD na systemie plików UMSDOS? 4.4 Czy nie ma jakiegoś sposobu, żeby obejść ograniczenia ISO 9660? 4.5 Jak czytać ścieżki z płyt audio? 4.6 Jak automatycznie wykrywać urządzenia SCSI po starcie? 4.7 Czy możliwe jest zrobienie kopii 1:1 danych z płyty? 4.8 Czy Linux umie odczytać płyty Joliet? 4.9 Jak się czyta/montuje CD-ROM-y przez nagrywarkę? 4.10 Jak umieścić jeszcze więcej danych na płycie? 4.11 Jak utworzyć płytę startową (bootable). 4.12 Jak zrobić zapisywalny CD-ROM? 4.13 Czy możliwe jest wykorzystanie kilku nagrywarek na raz? 4.14 Które nośniki są najlepsze? 5. Rozwiązywanie problemów. 5.1 Nie działa: pod Linuksem. 5.2 Błąd: No read access for 'dev=2,0'. 5.3 Nie działa: pod DOS-em i przyjaciółmi. 6. Podziękowania. 6.1 Od tłumacza. ______________________________________________________________________ 11.. WWpprroowwaaddzzeenniiee.. Wielu ludzi wypala płyty CD przy pomocy Linuksa ponieważ jest to sposób niezawodny i łatwy. Nie ma "niebieskich ekranów" podczas wypalania i nie musisz się przejmować tym, żeby dobrać odpowiedni sprzęt i oprogramowanie do niego. Po prostu jak wszystko raz poprawnie ustawisz tak działa. Dokument ten omawia konfigurację, jak umieścić dane na medium i podaje trochę ciekawych aplikacji, który zostały wspomniane przez uprzejmych czytelników. 11..11.. PPrraawwaa aauuttoorrsskkiiee,, lliicceennccjjaa ii wwaarruunnkkii kkoorrzzyyssttaanniiaa.. Prawa autorskie (C) posiada Winfried Trümper 1996,1997,1998,1999. Wszystkie prawa zastrzeżone. Redystrybucja i użytkowanie, z modyfikacjami lub bez, jest dozwolone o ile nazwisko autora nie jest wykorzystywane do promocji czy sygnowania wszelkich produktów powstałych z tego dokumentu bez konkretnego, wcześniejszego, pisemnego pozwolenia. 11..22.. ZZaassttrrzzeeżżeenniiee.. Autor zrzeka się wszelkich gwarancji odnośnie tego dokumentu, włącznie z wszystkimi włączonymi gwarancjami handlowymi. W żadnym wypadku nie jestem odpowiedzialny za jakiekolwiek bezpośrednie i pośrednie zniszczenia, w wyniku których nastąpiła utrata używalności, danych czy dochodów wynikające z używania tego dokumentu. Krótko: używaj na własną odpowiedzialność. 11..33.. PPrrooppoonnoowwaannee ddookkuummeennttyy ddoo pprrzzeecczzyyttaanniiaa.. CD-R FAQ, to ogólny dokument zawierający często zadawane pytania na temat płyt CD do nagrywania (CD-R), nagrywarek płyt i wymaganego oprogramowania. Ponieważ wiekszość nagrywarek CD można używać także do czytania płyt CD; możliwe, że będziesz chciał przeczytać także _C_D_R_O_M_-_H_O_W_T_O, _S_C_S_I_- _H_O_W_T_O i _K_e_r_n_e_l_-_H_O_W_T_O 11..44.. TTeerrmmiinnoollooggiiaa ...... llaasseerryy nnaa mmaaxx ...... ooggnniiaa!! CD-ROM to skrót od "Compact Disc Read Only Memory", nośnik danych wykorzystujący laser optyczny do wyczuwania mikroskopijnych zagłębień na srebrnym, błyszczącym dysku. Błyszczenie pochodzi od aluminiowej warstwy, która jest nośnikiem. Zaglebienia reprezentują bity informacji (w pewien sposób) i są takie malutkie, że jakieś kilka bilionów mieści się na płycie. Przez to CD jest nośnikiem dużych ilości danych. Termin CD-R jest skrótem od "CD-ROM Recordable" i odnosi się do płyty CD, która nie ma tych mikrospijnych zagłębień na powierzchni... i przez to jest pusta. Zamiast srebrnej aluminiowej warstwy ma specjalny "film" (kolorowy), w którym "mikroskopijne zagłębienia)" mogą być wypalone. Robi się to przez nadanie laserowi, który normalnie tylko wykrywa zagłębienia, trochę większej mocy, tak że zagłębienia są wypalane. Takie działanie może być podjęte ttyyllkkoo rraazz na CD-R. Jednak można sobie zostawić miejsce na późniejsze nagrywanie, tworząc wielosesyjną płytę CD. _C_D_-_R_O_M _r_e_w_r_i_t_a_b_l_e (czyli CD do wielokrotnego zapisu; w skrócie _C_D_-_R_W zostały wynalezione, aby obejść ograniczenia CD-R. W tych płytach laser nie tylko może wypalić takie mikroskopijne zagłębienia, ale może także przywrócić płytę do oryginalnego stanu sprzed zapisu. Jest to możliwe, ponieważ laser tak naprawdę nie wypala dziur - nie widzisz przecież dymu podczas wypalania i żaden głos z góry nie mówi ci "cel zniszczony". To co laser robi naprawdę, to wyzwala zmianę fazy (trigger a phase change), i stąd nazwa dla nagrywarek CD-RW "urządzenia do zmiany fazy". Przykład bardzo podobnej procedury, to samochód czyszczący na lodowisku hokejowym; w czasie przerw samochód ten przejeżdża przez lodowisko i wypełnia zadrapania w lodzie (cząstki zawierające rodzaj informacji o grze... :) ) roztopionymi kawałkami lodu. [Od tłumacza] Dobra... Wiem, że przetłumaczyłem to ... powiedzmy nieciekawie... Jeśli masz ciekawsze tłumaczenie tego fragmentu, to zapraszam. To HOWTO objaśnia zadanie zapisu na CD-R i CD-RW. Witamy na pokładzie, kapitanie! 11..55.. OObbssłłuuggiiwwaannee zzaappiissyywwaarrkkii.. Szczegółowa lista modeli, które zostały podane jako działające lub nie z różnymi unix-ami jest dostępna pod adresem (www.guug.de). Oto obszerne zestawienie napędów, które zdają się działać z cdrecord: Acer: CDRW 6206A BTC: BCE 621E (IDE) Compro: CW-7502, CW-7502B Dysan: CRW-1622 Elite: Elite b444.41 Grundig: CDR 100 IPW Guillemot: Maxi CD-R 4X/8X HP: SureStore 4020i, SureStore 6020i, C4324, C4325 CD-Writer+ 7100, CD-Writer+ 7200i, CD-Writer+ 8100i, CD-Writer+ 8110i, Hi-Val: CDD-3610 JVC: XR-W2001, XR-W2010, XR-W2042, R-2626 Kodak: PCD 200, PCD 225, PCD 260, PCD 600 Matsushita: CW-7502 Memorex: CRW-620, CRW-1622 Microboards: PlayWrite 2000, PlayWrite 4000RW, PlayWrite 4001RW MicroNet: MasterCD Plus 4x4, MasterCD Plus 4x6 Mitsubishi: CDRW-226 Mitsumi: CR-2401-TS, CR-2600 TE, CR-2801 TE, CR-4801 TE Nomai: 680.RW OTI: CDRW 965 Olympus: CDS 615E, CDS 620E Optima: DisKovery 650 CD-R OTI: CDRW 965 Panasonic: CW-7502, CW-7582 Philips: CDD-521/10, CDD-522 CDD-2000, CDD-2600, CDD-3600, CDD-3610 Omniwriter 26, Omniwriter 26A Plasmon: CDR 480, CDR 4220, RF-4100, RF-4102, CDR 4400 Plextor: CDR PX-24 CS, PX-412 C, PX-R412 C PX-R810Ti, PleXwriter 412C Procom: PCDR 4 Ricoh: RO-1420C+, MP 1420C, MP 6200S, MP 6201S Sanyo: CRD-R24S Smart and Friendly: CD-RW226, CD-R1002, CD-R1002/PRO, CD-R1004, CD-R2004, CD-R2006 PLUS, CD-R2006 PRO, CD-R4000, CD-R4006, CD-R4012 Sony: CDU 920S, CDU 924, CDU 926S, CDU-928E, CDU 948S, CDRX 100E Taiyo Yuden: EW-50 TEAC: CD-R50S, CD-R55S, CDR-55S Traxdata: CRW 2260, CDR 4120, CDRW 4260, Turtle Beach: 2040R WPI (Wearnes): CDRW-622, CDR-632P YAMAHA: CDR-100, CDR 102, CDR-200, CDR-200t, CDR-200tx CDR-400, CDR-400c, CDR-400t, CDR-400tx, CDR-400Atx CRW-2260, CRW-2260t, CRW-4250tx, CRW-4260 t, CRW-4260 tx, CRW-4261, CRW-4416 S _T_a_b_e_l_a _1_: _N_a_g_r_y_w_a_r_k_i _o_b_s_ł_u_g_i_w_a_n_e _p_r_z_e_z _L_i_n_u_k_s_a Jeśli twój sprzęt nie jest obsługiwany, to wciąż możesz użyć Linuksa do przygotowania materiału na CD. Możesz tak postąpić, ponieważ większość oprogramowania DOS-owego nie umie obsłużyć RockRidge Extensions. Ale musisz wtedy użyć DOS-owego oprogramowania do wypalenia płyty. 11..66.. OObbssłłuuggiiwwaannee ""zzaalleettyy"".. Są dwie klasy narzędzi do zapisywania CD-R: sterowniki sprzętowe i formatery danych. Sterowniki sprzętowe obsługują następujące cechy: Cecha cdwrite-2.1 cdrecord-1.7 -------------------------------------------- IDE/ATAPI nie tak Port równoległy nie tak CD-RW nie tak Wielosesyjność tylko częściowo tak _T_a_b_e_l_a _2_: _C_e_c_h_y _s_t_e_r_o_w_n_i_k_ó_w _s_p_r_z_ę_t_o_w_y_c_h cdwrite to stare oprogramowanie i wzmiankowane jest tylko dla zachowania kompletności. Używaj proszę zamiast tego cdrecord, ponieważ obsługuje on znacznie więcej sprzetu i ma o wiele więcej możliwości. Celem formaterów danych jest organizacja danych na płycie (umieszczenie na nich systemu plików). Cecha mkisofs mkhybrid -------------------------------------------- ISO9660 tak tak RockRidge tak tak El Torito tak tak HFS nie tak Joliet nie tak _T_a_b_e_l_a _3_: _C_e_c_h_y _f_o_r_m_a_t_e_r_ó_w _d_a_n_y_c_h Najbardziej oczywistą różnicą między systemem plików ISO9660 a Extended-2 jest możliwość modyfikacji plików na tym drugim po zapisaniu ich. Ograniczenia na ISO9660 to: ˇ Tylko 8-poziomowa struktura podkatalogów (licząc od głównego katalogu na płycie) (aby zwiększyć tę liczbę użyj RockRidge Extensions) ˇ maksymalna długość nazwy pliku: 32 znaki ˇ pojemność 650 MB RockRidge jest rozszerzeniem pozwalającym na dłuższe nazwy i głębszą strukturę katalogów dla systemu plików ISO9660. Rozszerzenia te (RockRidge) nie są dostepne pod DOS-em czy Windows. El Torito może być używane do tworzenia startowych (bootable) płyt CD. BIOS twojego komputera musi mieć możliwość uruchamiania takich płyt. Mówiąc wprost: pierwsze 1,44 MB na płycie zawiera dyskietkę startową zrobioną przez ciebie. Obraz takiej dyskietki jest traktowany jako dyskietka i system z niej startuje. HFS pozwala na odczytanie CD-ROM-u na Macintosh-u, tak jakby był to wolumin HFS (rodzinny system plików MacOS). Joliet pozwala na długie nazwy (między innymi) dla Windows (95, 98, NT). Autor nie zna żadnego narzędzia, które pozwalałoby mieć dłuższe nazwy pod DOS-em czy Windows 3.11. Sekcja 2.8 pokazuje skąd można pobrać wspomniane oprogramowanie. 11..77.. LLiissttyy ddyysskkuussyyjjnnee.. Jeśli chcesz się przyłączyć do grupy rozwojowej (w celu aktywnej _p_o_m_o_c_y), wyślij list na adres cdwrite-request@other.debian.org i umieść słowo subscribe w treści listu. 11..88.. NNaajjnnoowwsszzaa wweerrssjjaa.. Najnowsza wersja tego dokumentu jest zawsze dostępna pod adresem www.guug.de. 22.. KKoonnffiigguurraaccjjaa LLiinnuukkssaa ddoo nnaaggrryywwaanniiaa ppłłyytt.. Jesli uda ci się pokonfigurować sprzęt i system, to polecenie cdrecord -scanbus wyświetli ci listę urządzeń, dostępnym do zapisu. Celem tego rozdziału jest poprowadzenie cię poprzez konfigurację Linuksa, tak abyś na końcu zobaczył coś takiego: $> cdrecord -scanbus Cdrecord release 1.7a1 Copyright (C) 1995-1998 Jörg Schilling scsibus0: 0) 'Quantum ' 'XP34300 ' 'F76D' Disk 1) 'SEAGATE ' 'ST11200N ' '8334' Disk 2) * 3) 'TOSHIBA ' 'MK537FB/ ' '6258' Disk 4) 'WANGTEK ' '5150ES SCSI-36 ' 'ESB6' Removable Tape 5) 'EXABYTE ' 'EXB-8500-85QUE ' '0428' Removable Tape 6) 'TOSHIBA ' 'XM-3401TASUNSLCD' '3593' Removable CD-ROM 7) * scsibus1: 100) 'Quantum ' 'XP31070W ' 'L912' Disk 101) * 102) * 103) 'TEAC ' 'CD-R55S ' '1.0H' Removable CD-ROM 104) 'MATSHITA' 'CD-R CW-7502 ' '4.02' Removable CD-ROM 105) * 106) 'YAMAHA ' 'CDR400t ' '1.0d' Removable CD-ROM 107) * _L_i_s_t_i_n_g _1_: _W_y_k_r_y_w_a_n_i_e _u_r_z_ą_d_z_e_ń _n_a _k_o_n_t_r_o_l_e_r_z_e _S_C_S_I_. Przykład ten został dostarczony przez Jörga Schillinga. Widać tutaj cztery nagrywarki. Nie można rozróżnić zwykłego CD-ROMu od nagrywarek. Ale identyfikator produktu ma często w sobie wskazówki w stylu R, -R czy -RW. 22..11.. KKoonnffiigguurraaccjjaa jjąąddrraa LLiinnuukkssaa.. Jądro można wyposażyć w sterowniki służące do różncyh celów. Można je wkompilować na stałe lub jako moduły ładowane na żądanie. Ta druga metoda jest preferowana dla sterowników niekrytycznych dla systemu. Np. jeśli masz system na dysku IDE, to sterownik do tego dysku musisz mieć w jądrze (a nie jako moduł). Są trzy rodzaje nagrywarek: SCSI, IDE/ATAPI i zewnętrzne podłączane do portu równoległego. Tabela 4 pokazuje jak skonfigurować jądro dla tych typów nagrywarek. Pierwsza kolumna, to sekcja w menu konfiguracji jądra, gdzie można znaleźć dane ustawienie. Druga kolumna, to opis tej opcji. Trzecia kolumna, to nazwa modułu powstałego po kompilacji. Y to tak (yes) i oznacza, że masz to wkompilować w jądro. M to moduł, i oznacza, że ma to być wkompilowane jako moduł. Y/M pozwala tobie wybrać czy ma to być moduł czy wkompilowanie w jądro. Puste ustawienia oznaczają, że nie trzeba tego modyfikować. Nie zmienianie tego ustawienia zwiększa szanse, że jadro będzie działać (jeśli działało wcześniej). Aby sprawdzić jakie sterowniki są aktywne (tak statyczne jak i dynamiczne) w twoim jądrze, możesz odczytać plik /proc/devices. Aby sprawdzić jakie moduły są załadowane wydaj plecenie 'lsmod'. Aby sprawdzić jakie moduły są dostępne do załadowania wydaj polecenie systemie, musisz przekompilować jądro. Przeczytaj Kernel-HOWTO na temat szczegółów kompilacji. Najświeższe informacje na temat obsługi modułów jądra znajdziesz w Module-HOWTO. Sekcja Opis Moduł SCSI IDE PP ------------------------------------------------------------ BLOCK Enhanced IDE/MFM/RLL... Y BLOCK IDE/ATAPI CDROM ide-cd M/N/Y BLOCK SCSI hostadaptor emulation ide-scsi M BLOCK Loopback device loop M M M PARIDE Parallel port IDE device paride Y/M PARIDE Parallel port ATAPI CD-ROMs M PARIDE Parallel port generic ATAPI M PARIDE (select a low-level driver) Y SCSI SCSI support scsi_mod Y/M Y/M SCSI SCSI CD-ROM support sr_mod Y/M Y/M SCSI Enable vendor-specific Y Y SCSI SCSI generic support sg Y/M Y/M SCSI (select a low-level driver) Y FS ISO 9660 CDROM filesystem iso9660 Y Y Y FS Microsoft Joliet cdrom... joliet M M M _T_a_b_e_l_a _4_: _K_o_n_f_i_g_u_r_a_c_j_a _j_ą_d_r_a Jeśli udało ci się już skompilować jądro czy znaleźć potrzebne moduły, to albo dodaj je do /etc/modules albo pozwól ładować je automatycznym narzędziom (kmod, kerneld). Jeśli nie jesteś pewien, skonsultuj to z dokumenctacją swojej dystrybucji. Opcja "SCSI hostadaptor emulation" we wczesniejszych jądrach nazywa się "SCSI emulation" (około 2.0.36). Jeśli jądro na to pozwala, skompiluj sterownik dla CD-ROM-ów IDE/ATAPI jako moduł. Jeśli nie, to wyłącz go (N) i użyj zamiast niego sterownika do CD-ROM-ów SCSI. W jądrach serii 2.2, nie możliwe jest uruchamianie sterowników do IDE i SCSI na tym samym fizycznym urządzeniu w tym samym czasie (jeśli masz 2.0.36, to przeczytaj poniżej). Urządzenie _l_o_o_p_b_a_c_k jest opcjonalne i pozwala przetestować obraz płyty przed zapisaniem. Jeśli chcesz móc czytać płyty, to potrzebujesz obsługi systemu plików ISO 9660. Sterownik ten zawiera w sobie obsługę RockRidge Extensions. Jeśli chcesz mieć także obsługę MS Joliet ERxtensions, to skompiluj je jako moduł i załaduj. [Od tłumacza] O ile się nie mylę, to Joliet jest obsługiwany przez jądro 2.0.36... W każdym przypadku potrzebujesz sterownik niskiego poziomu dla swojego sprzętu. "Niskiego poziomu" odnosi się do sterownika, który komunikuje się bezpośrednio ze sprzętem. Dla urządzeń SCSI i podłączanych przez port równoległy jest wiele sterowników niskiego poziomu. Są one opisane poniżej. 22..11..11.. SSppeeccjjaallnnee uuwwaaggii ddllaa sseerriiii 22..22 W jądrze 2.2.1 nie włączaj na raz opcji CONFIG_SCSI_MULTI_LUN ('probe for multiple luns') i obsługi ide-scsi. Znany jest błąd ide-scsi, który nie pozwala na to. W każdym razie zaleca się uaktualnienie do wersji 2.2.5. Niektórzy użytkownicy zgłaszali konflikty między prekompilowanymi binariami a jądrem 2.2. Jest to problem z jądrem. Oto rozwiązania: ˇ Może to przejść po kompilacji cdrecord, tak aby dostosował się do wartości w linux/include/scsi/sg.h. Wartości te muszą być tymi z działającego jądra z powodu interfejsu użytkownika dla sg. ˇ Może być to spowodowane ładowalnym sterownikiem dla sg, który nie ma odpowiednio dużo pamięci dla DMA. Zdobądź łatę do sg_buffer z serwera FTP Jörga Schillinga. 22..11..22.. SSppeeccjjaallnnee uuwwaaggii ddllaa wweerrssjjii 22..00 Jądra w wersji wcześniejszej niż 2.0.31 mają kilka błedów i nie mogą czytać ostatniego pliku na płycie. Uaktualnij je do wersji 2.0.36. W jądrze 2.0.36 możesz podać który sterownik (IDE czy SCSI) użyć do którego urządzenia ATAPI. Dokładniej: możesz włączyć opcję "SCSI emulation" w jądrze i uaktywnić ją dla konkretnego urządzenia przed lub podczas ładowania jądra. Np. jesli twojej nagrywarce odpowiada plik /dev/hdb, to dodaj polecenie hdb=ide-scsi. image=/boot/zImage-2.0.36 label=Linux read-only append="hdb=ide-scsi" _L_i_s_t_i_n_g _2_: _P_r_z_y_k_ł_a_d_o_w_a _k_o_n_f_i_g_u_r_a_c_j_a _d_l_a _l_i_l_o _(_/_e_t_c_/_l_i_l_o_._c_o_n_f_) linux "Linux 2.0.36" { image=/boot/zImage-2.0.36 cmdline= root=/dev/hda5 readonly hdb=ide-scsi } _L_i_s_t_i_n_g _3_: _P_r_z_y_k_ł_ą_d_o_w_a _k_o_n_f_i_g_u_r_a_c_j_a _d_l_a _c_h_o_s _(_/_e_t_c_/_c_h_o_s_._c_o_n_f_) 22..22.. SSpprrzzęętt ii pplliikkii uurrzząąddzzeeńń.. Jak już zainstalowałeś wszystkie potrzbne sterowniki, wystartuj nowe jądro. Powinno się tam już znajdować wszystko czego będziesz potrzebować do do następnych rozdziałów. [Użytkownicy _d_e_v_f_s nie muszą się przejmować następnymi krokami (ręczną konfiguracją plików urządzeń. Jeśli używasz _d_e_v_f_s, wszystko pojawi się automagicznie na swoim miejscu.] Przejdź do katalogu /dev i sprawdź czy masz urządzenia loopback. Nie jest to konieczne, żebyś musiał je mieć ale wygodniejsze (zobacz punkt 3.5). Jeśli już je masz, to polecenie _l_s powinno pokazać loop0 - loop7: $ > cd /dev $ > ls loop* loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 _L_i_s_t_i_n_g _4_: _p_l_i_k_i _u_r_z_ą_d_z_e_n_i_a _l_o_o_p_b_a_c_k Jeśli nie masz tych urządzeń, to stwórz je przy pomocy skryptu /dev/MAKEDEV: $ > cd /dev/ $ > modprobe loop $ > ./MAKEDEV loop _L_i_s_t_i_n_g _5_: _p_o_l_e_c_e_n_i_a _d_o _t_w_o_r_z_e_n_i_a _p_l_i_k_ó_w _u_r_z_ą_d_z_e_ń _l_o_o_p_b_a_c_k Ostatnie polecenie powiedzie się tylko jeśli masz skompilowany moduł loop. To co przeczytałeś dotąd na temat obsługi plików urzdzenia loopback odnosi się do wszystkich plików urządzeń (sg*, pg*, hd*, ...) i nie piszę wyraźnie o tym dalej. 22..22..11.. NNaaggrryywwaarrkkii IIDDEE//AATTAAPPII.. ATAPI oznacza "polecenia SCSI przez szynę IDE". Innymi słowy napędy IDE/ATAPI porozumiewają się poprzez protokół SCSI (z pewnymi ograniczeniami) i w ten sposób mogą imitować urządzenia SCSI. W Linuksie nagrywarka IDE może pojawić się jako SCSI dzięki opcji "SCSI (hostadaptor) emulation". Tak więc uaktywnij odpowiedni moduł jądra ide-scsi, jak to opisano powyżej i potem możesz robić wszystko tak jakbyś miał nagrywarkę SCSI. 22..22..22.. NNaaggrryywwaarrkkii SSCCSSII.. Upewnij się, że twoja nagrywarka jest rozpoznawana przez BIOS twojego komputera. Nie ma sensu robić czegokolwiek dalej jeśli twój komputer nie zaakceptuje sprzętu. (fakt, że komputer nie wypluje nagrywarki nie jest potwierdzeniem; na ekranie musi pojawić się odpowiedni napis). Jeśli planujesz podłączyć swój napęd SCSI do portu równoległego, będziesz potrzebował specjalnego kabla i specjalnego sterownika w jądrze. Więcej na ten temat możesz poczytać pod adresem www.torque.net/parport/parscsi.html. 22..22..22..11.. OOggóóllnnee uurrzząąddzzeenniiaa SSCCSSII.. Pliki urządzeń /dev/sd* i /dev/sr* używane do komunikacji z dyskami i CD-ROM-ami SCSI mają zaimplementowany tylko transfer zorientowny na bloki danych. To właśnie czyni je tak szybkimi i idealnymi do zapisu danych. Sterowanie laserem nagrywarki to bardziej skomplikowane zadanie i wymaga trochę więcej niż transferu danych w postaci bloków. Aby utrzymać tę jakość urządzeń sd* i sr* stworzono nowy rodzaj plików urządzeń SCSI; tzw _o_g_ó_l_n_e _u_r_z_ą_d_z_e_n_i_a _S_C_S_I. Ponieważ poprzez ogólne urządzenia SCSI można zrobić wszystko ze sprzętem SCSI nie są one przeznaczone do jakiegoś konkretnego celu - stąd nazwa ogólne (generic). Tak jak inne pliki urządzeń i te można znaleźć w katalogu /dev/: $ > cd /dev $ > ls sg* sg0 sg1 sg2 sg3 sg4 sg5 sg6 sg7 Jeśli nie masz tych plików urządzeń, to stwórz je używając skryptu /dev/MAKEDEV: $ > cd /dev/ $ > ./MAKEDEV sg 22..22..33.. NNaaggrryywwaarrkkii ppooddłłąącczzaannee pprrzzeezz ppoorrttyy rróówwnnoolleeggłłee.. Przykro mi, ale nie mam pojęcia na ten temat. Przeczytaj informacje zawarte na stronie WWW poświęconej temu tematowi albo plik na swoim dysku /usr/src/linux/Documentation/paride.txt. 22..33.. ZZddoobbąąddźź oopprrooggrraammoowwaanniiee ddoo wwyyppaallaanniiaa CCDD--RR.. Przegląd narzędzi służących do nagrywania płyt znajduje się pod adresem www.fokus.gmd.de . Project tworzenia CD dla Unix-a. 22..33..11.. NNaarrzzęęddzziiaa oobbssłłuuggiiwwaannee zz lliinniiii ppoolleecceeńń.. Jedno z poniższych narzędzi potrzebne jest aby wygenerować obraz płyty. mkisofs mkhybrid W zależności od modelu twojej nagrywarki (zobacz 1.3) potrzebne jest jedno z poniższych narzędzi do zapisania danych na CD: ˇ cdrecord Nie wierz podręcznikowi systemowemu od (starego) mkisofs, który stwierdza, że potrzebujesz wersji 1.5. Po prostu użyj programu cdrecord i będzie w porządku. Zauważ, że program mkisofs dostarczany wraz z cdrecord ma kilka rozszerzeń wspomnianych w dokumentacji programu. 22..33..22.. GGrraaffiicczznnee iinntteerrffeejjssyy uużżyyttkkoowwnniikkaa.. ((ooppccjjoonnaallnnee)) Front-endy w Linuksie to rzeczywiste front-endy. Oznacza to, że ciągle musisz zainstalować narzędzia obsługiwane z linii poleceń, ale masz do nich dostęp w ładniejszy sposób. _X_-_C_D_-_R_o_a_s_t to pakiet stworzony do ułatwienia tworzenia płyt w Linuksie. Łączy on narzędzia sterowane z linii poleceń jak _c_d_r_e_c_o_r_d i _m_k_i_s_o_f_s z ładnym graficznym interfejsem. www.fh-muenchen.de _B_u_r_n_I_T to front-end napisany w Javie do cdrecord, mkisofs i cdda2wav-0.95, co czyni z niego kompletny pakiet do wypalania płyt CD na platformach unixowych. Ściągnąć go można z adresu sunsite.auc.dk . 33.. WWyyppaallaanniiee ppłłyytt CCDD--RR.. Imperator Nero na temat palenia swoich własnych klasycznych CD [AD64; on się na tym kompletnie nie zna] "Jeśli do ognia się obrócisz, zabawiać się nie przestanę póki się palisz." [tłum.: Z góry przepraszam za tłumaczenie, ale poetą nie jestem.] Zapis CD w Linuksie składa się z dwóch kroków: ˇ pakowanie programów do plików ze specjalnym formatem ˇ zapisywanie danych z takich plików na płytę CD-R przy pomocy cdrecord. Rozdział ten opisuje kroki tworzenia płyt z danymi i audio. 33..11.. ZZaappiiss CCDD--RROOMM--óóww ((cczzyyssttee ddaannee)).. Pamiętaj, że zebranie wszystkiego do płyty zabiera o wiele więcej niż się można spodziewać. Jednak pamiętaj też, że brakujących plików nie można dopisać do płyty jak jest już zapisana i zakończona. Pamiętaj także, że pewna ilość miejsca na płycie jest używana do przechowywania informacji na temat systemu plików iso9660 (zwykle kilka MB). 620 MB danych zawsze się zmieści na 650MB płycie CD-R. 33..22.. TTwwoorrzzeenniiee oobbrraazzuu ppóóźźnniieejjsszzeejj ppłłyyttyy.. Zanim jakiś nośnik danych (dyskietka, dysk twardy czy kompakt) będzie mógł być użyty trzeba na nim założyć system plików (mówiąc po DOS- owemu: trzeba go sformatować). System plików jest odpowiedzialny za organizację i zapis plików na nośniku. Zwykle, narzędzia do tworzenia systemu plików na partycji dyskowej, zapisuja na niej pusty system plików, który jest potem montowany i wypełniany plikami przez użytkownika. Zapisywalne płyty CD są zapisywalne ttyyllkkoo rraazz, więc jeśli zapisałbyś na nim pusty system plików, zostałoby sformatowane - ale pozostałoby puste na zawsze. Jest to także prawda dla nośników wielokrotnego zapisu, ponieważ nie można zmienić dowolnie zawartości sektorów, ale trzeba ją całą najpierw skasować. Więc to czego potrzebujemy, to narzędzie, które tworzy system plików podczas nagrywania plików na płycie. Narzędzie to nazywa się _m_k_i_s_o_f_s. Przykładowe użycie może być takie: mkisofs -r -o obraz_cd moja_kolekcja/ `---------' `-------------' | | dokąd zapisać nagraj z tego katalogu Opcja --rr ustawia prawa dostępu wszystkich plików na odczyt dla wszystkich i włącza RockRidge Extensions. To jest zwykle to, co chcesz osiągnąć i użycie tej opcji jest zalecane, no chyba, że wiesz dokładnie co robisz. (wskazówka: bez --rr pliki na kompakcie będą miały prawa jak moja_kolekcja!). _m_k_i_s_o_f_s spróbuje odwzorować wszystkie nazwy plików na format 8.3 używany przez DOS, aby zapewnić jak największą kompatybilność. W razie gdy pliki w formacie 8.3 nazywają się tak samo, używane są liczby, a informacja o takich plikach wysyłana jest do _S_T_D_E_R_R - zwykle ekran. Nie panikuj: Pod Linuksem nigdy nie zobaczysz tych nazw w formacie 8.3, ponieważ Linux umie korzystać z RockRidge Extensions, które zawierają oryginalne atrybuty pliku (prawa dostępu, nazwy, itp.). Teraz możesz się zastanawiać dlaczego rezultat nie jest wysyłany bezpośrednio do nagrywarki. Z dwóch powodów: ˇ mkisofs nie wie nic na temat obsługi nagrywarek CD. ˇ możesz chcieć przetestować obraz płyty zanim go nagrasz. ˇ Na wolnych komputerach nie byłoby to rozsądne. Metodę zapisu płyty w jednym kroku opiszę poniżej. Możnaby stworzyć dodatkową partycję na dysku i tam zapisywać wynik działania _m_k_i_s_o_f_s. Jednak ja jestem przeciwny takiemu rozwiązaniu ponieważ jedną literówką możnaby sobie zniszczyć całą partycję Linuksową (czytaj: co mi się przytrafiło...). Co więcej, to jest marnowanie miejsca na dysku, bo dane te są tylko czasowe i można je usunąć po zapisaniu na płytę. Jednak jeśli masz wystarczająco dużo miejsca na dysku, dodatkowa partycja może ci zaoszczędzić czasu na kasowanie obrazu. 33..22..11.. PPrrzzeetteessttuujj oobbrraazz kkoommppaakkttuu.. Linux ma możliwość montowania plików tak jakby były one partycją. Cecha ta przydaje się do testowania obrazu płyty, czy prawa dostępu są takie jak chcesz. Pomimo, iż nośniki są teraz bardzo tanie, to zapis płyty zabiera trochę czasu i możesz chociaż zaoszczędzić swój czas sprawdzając obraz. Aby zamontować w katalogu /cdrom taki plik stworzony wcześniej wpisz: ______________________________________________________________________ mount -t iso9660 -o ro,loop=/dev/loop0 cd_image /cdrom ______________________________________________________________________ Teraz możesz sprawdzić pliki w katalogu /cdrom - pojawią się tam dokładnie tak samo jak będą wyglądać na płycie. Aby odmontować ten plik po prostu napisz _u_m_o_u_n_t _/_c_d_r_o_m. Uwaga: Jeśli masz jądro starsze niż 2.0.31, to ostatni plik na płycie może nie być czytany. Użyj nowszego jądra, jak np. 2.0.36. Opcja -pad w programie cdrecord odnosi się tylko do płyt audio, a dodatkowa opcja -pad programu mkisofs wymaga łaty, co jest taką samą pracą jak uaktualnienie do nowego jądra. Uwaga: Niektóre stare wersje _m_o_u_n_t nie umieją obsługiwać urządzeń loopback. Jeśli masz taką starą wersję _m_o_u_n_t, to jest to wskazówka, żeby uaktualnić swoją dystrybucję. Kilku ludzi sugerowało już, żeby zamieścić tu informację skąd wziąć najnowsze narzędzia do montowania, ale ja zawsze odmawiam. Jeśli twoja dystrybucja dostarcza takiej starej wersji _m_o_u_n_t, to zgłoś to do nich jako błąd. Jeśli twoja dystrybucja nie jest łatwa do uaktualnienia, zgłoś to jako błąd. Jeśli dołączyłbym tutaj wszystkie informacje potrzebne do poprawienia błędów w źle zaprojektowanej dystrybucji to HOWTO byłoby o wiele większe i trudniejsze do czytania. 33..33.. ZZaappiisszz oobbrraazz CCDD nnaa ppłłyyttęę.. Już nie ma dużo do zrobienia. Jeśli jeszcze nie próbowałeś, to jest dobra chwila na polecenie: cdrecord -scanbus Polecenie to pokaże ci do którego urządzenia SCSI dołączona jest twoja nagrywarka. Wszystkie inne metody zgadywania informacji wyświetlanych przez cdrecord zostały usunięte z tego HOWTO (szczególnie ten cokolwiek niebezbieczny schemat nazewnictwa ogólnych urządzeń SCSI). Zanim pokażę ci ostatnie polecenie, pozwól się ostrzec, że nagrywarki "lubią być karmione" ciągłym strumieniem danych ponieważ mają tylko mały bufor danych. Tak więc proces zapisu obrazu CD na płytę nie może być przerwany, bo w wyniku otrzymamy źle nagraną płytę. Łatwo jest przerwać taki strumień danych np. przez skasowanie dużego pliku. Przykład: Jeśli skasujesz plik o rozmiarze 650 MB, to jądro musi uaktualnić informacje o 650.000 bloków na dysku (zakładając, że masz na swoim systemie plików bloki 1 kB). Zajmuje to trochę czasu i bardzo prawdopodobne, że zwolni działalność dysku na tyle, że strumień danych zostanie przerwany na kilka sekund. Jednak na szybkich maszynach czytanie poczty, surfowanie po sieci czy nawet kompilacja jądra nie mają wpływu na nagrywanie. Zauważ proszę, że żadna nagrywarka nie potrafi ponownie ustawić lasera i nie może kontynuować od miejsca, w którym zostało przerwane nagrywanie. Przez to każda silniejsza wibracja a nawet wstrząs zniszczy płytę. Jeśli jesteś już psychicznie przygotowany, ubierz się w czarną szatę, pomnóż numer SCSI-ID nagrywarki przez numer SCSI-revision i zapal tyleż samo świeczek, wymów dwa wiersze z "_A_S_R_-_F_A_Q" (grupa dyskusyjna alt.sysadmin.recovery) i ostatecznie wpisz: $ > SCSI_BUS=0 # wzięte z listingu "scsibus0:" $ > SCSI_ID=6 # wzięte z listingu "TOSHIBA XM-3401" $ > SCSI_LUN=0 $ > cdrecord -v speed=2 dev=$SCSI_BUS,$SCSI_ID,$SCSI_LUN \ -data cd_image # to samo co wyżej, ale krótsze $ > cdrecord -v speed=2 dev=0,6,0 -data cd_image Dla zwiększenia czytelnośći, namiary na nagrywarkę zapisane są do trzech zmiennych o wymownych nazwach: SCSI_BUS, SCSI_ID, SCSI_LUN. Opcja -data nie jest konieczna, ale została tutaj podana, aby odróżnić tę linijkę o linijki służącej do nagrywania płyt audio. Jeśli używasz programu cdrecord do nadpisania płyty CD-RW, musisz podać opcję blank=..., aby skasować poprzednią zawartość. Poczytaj stronę podręcznika man, aby dowiedzieć się więcej na temat różnych metod zerowania płyty CD-RW. W czasach kiedy wszyscy oprócz mnie posiadają 400 MHz maszyny, ludzie nagrywają płyty w locie bez tworzenia obrazu. Czyli łączą wyjście programu mkisofs z wejściem programu cdrecord: $ > IMG_SIZE=`mkisofs -R -q -print-size private_collection/` $ > mkisofs -r private_collection/ \ |cdrecord speed=2 dev=0,6,0 tsize=${IMG_SIZE}s -data - # nie zapomnij o s --^ ^-- czytaj dane z STDIN Pierwsze polecenie jest pustym poleceniem służącym do określenia rozmiatu obrazu (potrzebujesz mkisofs z pakietu cdrecord, aby to działało). Może twoja nagrywarka nie musi znać rozmiaru obrazu, który będzie zapisany, wtedy możesz to opuścić. Wyświetlony rozmiar musi być przekazany jako parametr tsize do polecenia cdrecord (jest zapisany w zmiennej środowiskowej IMG_SIZE). Ostatnie polecenie to połączenie poleceń mkisofs i cdrecord przez potok. 33..44.. ZZaappiissyywwaanniiee ppłłyytt aauuddiioo.. Zapisanie takiej płyty jest bardzo podobne do wymienionych powyżej kroków/ Dwie główne różnice, to fakt, że płyty audio składają się ze ścieżek audio, które są zorganizowane w osobne obrazy. Więc jeśli chcesz mieć 10 ścieżek, to musisz mieć 10 obrazów. Drugą różnicą jest format tych obrazów. Już nie ISO 9660 (czy jaki tam system plików wolisz), ale 16-bitowe sample w kodowaniu PCM z częstotliwością próbkowania 44,1 kHz. Jednym z narzędzi do zamiany twoich plików dźwiękowych do wymaganego formatu jest _s_o_x. Użycie jest bardzo proste: $ > sox killing-my-software.wav killing-my-software.cdr Polecenie to zamienia utwór killing-my-software z formatu WAV na format CDR. Poczytaj stronę podręcznika systemowego man programu sox na temat rozszerzeń i formatów plików rozpoznawanych przez niego. Z powodu sporej ilości dysku potrzbnej na konwersję, jest to wbudowana cecha programu cdrecord dla formatów WAV i AU. Tak więc dopóki twoje pliki muzyczne są w postaci plików .wav czy .au i są to 16-bitowe próbki z częstotliwością 44,1 kHz możesz ich używać bez ręcznej zamiany. Cdrecord zapisuje obrazy jako ścieżki audio jeśli podamy opcję -audio. Inne opcje są identyczne z tymi do zapisywania danych (o ile nie masz jakichś bardzo specyficznych wymagań). Poniższe trzy przykłady robią to samo, ale czytają obrazy z innych plików: $ > cdrecord -v speed=2 dev=0,6,0 -audio track1.cdr track2.cdr... $ > cdrecord -v speed=2 dev=0,6,0 -audio track1.wav track2.wav... $ > cdrecord -v speed=2 dev=0,6,0 -audio track1.au track2.au... Szczególnym przypadkiem są pliki MPEG3, które mogą być zamienione przy pomocy programu 'mpg123 -s track1.mp3 > track1.cdr'. W drugą stronę działa 8hz-mp3 dla plików WAV. W takim układzie jak powyżej wypalisz płyty z 2-sekundową przerwą pomiędzy każdymi dwoma ścieżkami audio. Jeśli twoja nagrywarka umożliwia nagrywanie w trybie "disc at once" (DAO), możesz wypróbować najnowszej wersji cdrecord, aby się tych przerw pozbyć. 33..55.. CCDD--RROOMM--yy mmiieesszzaannee.. Niewiele do powiedzenia. Po prostu określ typ oklejnych obrazów opcjami -data lub -audio. Przykład: cdrecord -v dev=0,6,0 -data cd_image -audio track*.cdr 44.. CCzzęęssttoo zzaaddaawwaannee ppyyttaanniiaa wwrraazz zz ooddppoowwiieeddzziiaammii.. 44..11.. JJaakk cczzuułłyy jjeesstt pprroocceess wwyyppaallaanniiaa?? Odpowiedź: To zależy od twojej nagrywarki. Nowsze powinny mieć bufor danych o pojemności ok. 1MB lub coś koło tego i może wytrzymać jakieś 1-2 sekund bez dopływu danych. Jeśli chcesz znać jakieś szczegóły, to zajrzyj do podręcznika albo zapytaj producenta. Niezależnie od rozmiaru tego bufora musisz zagwarantować stały przepływ danych w granicach 300 kb/s - 600 kb/s. Procesy intensywnie wykorzystujące dysk, jak np. uaktualnianie bazy "locate", obniżają maksymalny przepływ i mogą zniszczyć płytę; lepiej sprawdź czy takie procesy nie są uruchamiane przez cron-a, at lub anacron-a podczas gdy wypalasz płytę. Z drugiej strony niektórzy kompilowali jądro podczas wypalania płyty i nic ich płytom się nie działo. Do takich eksperymentów potrzebujesz jednak szybkiej maszyny. 44..22.. CCzzyy ffrraaggmmeennttaaccjjaa mmaa zzłłyy wwppłłyyww nnaa pprręęddkkoośśćć pprrzzeeppłłyywwuu ddaannyycchh?? Fragmentacja jest zwykle taka mała, że jej wpływ jest niezauważalny. Jednak możesz łatwo skonstruować patologiczne przypadki fragmentacji, które obniżą prędkość przepływu danych do 100 kb/s. Więc nie rób tego. :-) Tak, pliki przez lata fragmentują się na dysku. Tym szybciej, im szybciej system plików jest pełny. Zostawiaj zawsze 10% - 20% wolnego miejsca i powinno być dobrze. Jeśli nie jesteś pewny, to spójrz na komunikaty wypisywane podczas startu, procent fragmentaji jest podawany podczas sprawdzania systemu plików. Możesz sprawdzić tę wartość bardzo niebezpiecznym poleceniem ______________________________________________________________________ $ > e2fsck -n /dev/sda5 # '-n' jest ważne! [różne komunikaty usunięte - zignoruj wszelkie błędy] /dev/sda5: 73/12288 files (12.3% non-contiguous) ______________________________________________________________________ W tym przykładzie fragmetacja jest bardzo wysoka - ale na tym systemie plików są tylko 73 małe pliki (użyte w /tmp) więc wartość ta nie jest alarmująca. Jest eksperymentalne narzędzie zwane _e_2_d_e_f_r_a_g służące do defragmentacji systemu plików Extended-2. Obecna wersja nie działa zbyt pewnie, aby używać jej nawet w domowych komputerach. Jeśli naprawdę chcesz zdefragmentować swój system plików, zrób kopię zapasową (lepiej: dwie kopie), poćwicz odzyskiwanie danych, stwórz nowy system plików (to zniszczy ten stary) i odtwórz dane. Jest to najbezpieczniejsza technika. 44..33.. CCzzyy mmoożżlliiwwee jjeesstt zzaappiissaanniiee oobbrraazzuu CCDD nnaa ssyysstteemmiiee pplliikkóóww UUMMSSDDOOSS?? Tak. Jedyny system plików, który jest nieodpowiedni do tego celu to NFS (sieciowy system plików). Ja używam UMSDOS, żeby dzielić mejsce na dysku pomiędzy Linuksem a DOS/Win na PC-cie (486/66) przeznaczonym do nagrywania płyt. 44..44.. CCzzyy nniiee mmaa jjaakkiieeggoośś ssppoossoobbuu,, żżeebbyy oobbeejjśśćć ooggrraanniicczzeenniiaa IISSOO 99666600?? Tak. Na płycie możesz umieścić jakikolwiek system plików. Ale inne systemy operacyjne nie będą potrafiły obsłużyć takiej płyty. Oto przepis: ˇ Stwórz pusty plik o rozmiarze 650 MB. ___________________________________________________________________ dd if=/dev/zero of="empty_file" bs=1024k count=650 ___________________________________________________________________ ˇ Stwórz "na" tym pliku system plików EXT2. ___________________________________________________________________ $ > /sbin/mke2fs -b 2048 pusty_plik pusty_plik is not a block special device. Proceed anyway? (y,n) y ___________________________________________________________________ ˇ Zamontuj ten pusty plik przy pomocy urządzenia loopback ___________________________________________________________________ mount -t ext2 -o loop=/dev/loop1 empty_file /mnt ___________________________________________________________________ ˇ Skopiuj to co chcesz do /mnt i odmontuj potem ten katalog. ˇ Użyj _c_d_r_e_c_o_r_d na pustym_pliku (który już nie jest pusty) tak jakby był to obraz ISO 9660. Jeśli chcesz wstawić pozycję do /etc/fstab dla takich płyt, to wyłącz ich sprawdzanie, np. /dev/cdrom /cdrom ext2 defaults,ro 0 0 Pierwsze 0 oznacza "nie dołączaj tego systemu plików do kopii zapasowych", drugie (ważne) oznacza, "nie sprawdzaj błędów podczas startu" (polecenie fsck nie powiedzie się podczas sprawdzania błędów na płycie). 44..55.. JJaakk cczzyyttaaćć śścciieeżżkkii zz ppłłyytt aauuddiioo?? Jest kilka dostępnych pakietów. Najnowszym jest "cdparanoia"; ściągnąć go można z www.mit.edu Albo możesz spróbować kombinację programów "cdda2wav" i "sox" dostępne z serwera w Polsce: ftp.icm.edu.pl . Pierwszy w podkatalogu cdrom/ a drugi w convert/. Pakiet cdda2wav umożliwia odczytanie podanego przedziału czasowego (albo całej ścieżki) z płyty muzycznej i zamianę odczytanych danych na format pliku WAV. sox natomiast zamienia format pliku WAV na format zapisu na płytach muzycznych, tak że dane te mogą zostać zapisane na płytę przy pomocy _c_d_r_e_c_o_r_d. Nie potrzebujesz koniecznie sox jeśli używasz nowszej wersji cdrecord, ponieważ program ten posiada wbudowaną opcję zamiany plików .wav i .au na odpowiedni format. 44..66.. JJaakk aauuttoommaattyycczznniiee wwyykkrryywwaaćć uurrzząąddzzeenniiaa SSCCSSII ppoo ssttaarrcciiee?? Plik drivers/scsi/scsi.c zawiera taką informację: "Użycie: echo "SCSI add-single-device 0 1 2 3" >/proc/scsi/scsi Zamień "0 1 2 3" na swoje numery "Host Channel Id Lun". Ta cecha jest BETĄ. UWAGA: Programu tego nie można używać do podłączania urządzeń SCSI podczas działania systemu ponieważ urządzenia te nie zostały przygotowane do tego i możesz sobie zniszczyć sprzęt! Ale może można włączyć już podłączone urządzenie. Jednak nie ma żadnej gwarancji, że urządzenie to nie zniszczy nadchodzących danych." Używać tego można tylko jeśli dodajesz urządzenia SCSI na końcu łańcucha. Jeśli umieścisz urządzenie SCSI gdzieś w istniejący łańcuch, to popsuje to kolejność w katalogu /dev/ i można zniszczyć całą zawartość twojego dysku. 44..77.. CCzzyy mmoożżlliiwwee jjeesstt zzrroobbiieenniiee kkooppiiii 11::11 ddaannyycchh zz ppłłyyttyy?? Tak. Ale powinieneś zdawać sobie sprawę z tego, iż wszelkie błędy podczas odczytu oryginału (z powodu kurzu czy rys) spowodują błędy także w kopii. Pierwszy przypadek: masz nagrywarkę i oddzielny napęd CDROM. Wykonując polecenie: ______________________________________________________________________ cdrecord -v dev=3,0 speed=2 -isosize /dev/scd0 ______________________________________________________________________ odczytujesz strumień danych z CD-ROM-u podłączonego jako /dev/scd0 i zapisujesz go bezpośrednio poprzez urządzenie SCSI o ID=3 na nagrywarkę. Drugi przypadek: nie masz oddzielnego napędu CD-ROM. W tym przypadku musisz użyć nagrywarki, żeby odczytać dane: ______________________________________________________________________ dd if=/dev/scd0 of=obraz_cd ______________________________________________________________________ Polecenie to jest równoważne _m_k_i_s_o_f_s więc powinieneś postępować dalej tak, jak to opisano w rozdziale 3. Zauważ, że ta metoda nie zadziała w przypadku płyt muzycznych. 44..88.. CCzzyy LLiinnuuxx uummiiee ooddcczzyyttaaćć ppłłyyttyy JJoolliieett?? Tak. Nowsze jądra (2.0.36 i seria 2.2) mają wbudowaną obsługę systemu plików Joliet. Pamiętaj, że musisz użyć obu opcji w pliku /etc/fstab: iso9660 i joliet (to drugie, to rzeczywiste rozszerzenie). Więcej szczegółów przeczytasz na stronie www- plateau.cs.berkeley.edu/people/chaffee/joliet.htm . 44..99.. JJaakk ssiięę cczzyyttaa//mmoonnttuujjee CCDD--RROOMM--yy pprrzzeezz nnaaggrryywwaarrkkęę?? Tak jak to robisz ze zwykłymi napędami. Żadnych sztuczek. Zauważ, że musisz użyć urządzeń _s_c_d (SCSI CD-ROM), aby zamontować płytę do czytania. Przykładowa pozycja z /etc/fstab: /dev/scd0 /cdrom iso9660 ro,user,noauto 0 0 44..1100.. JJaakk uummiieeśścciićć jjeesszzcczzee wwiięęcceejj ddaannyycchh nnaa ppłłyycciiee?? Użyj bzip2 zamiast jakiegoś innego kompresora jak np.: gzip czy pkzip. Zaoszczędzi ci to przy większych plikach (100 kB) około 30% miejsca na dysku. Można go ściągnąć z: www.muraroa.demon.co.uk/ Zamiast nagrywać prawdziwe płyty audio możesz zamienić swoje pliki .wav w .mp3 i zapisać je na systemie plików ISO 9660 jako zwykłe pliki. Format MPEG III umożliwia kompresję około 1:10. Oczywiście większość odtwarzaczy CD nie umie czytać plików... i to jest wada. Jednak z drugiej strony, dlaczego na następnej prywatce nie puszczać muzyki z twardego dysku ? 18 GB to wystarczająco dużo miejsca na 3000-4000 plików .mp3. :-) Program do tworzenia plików MPEG III można ściągnąć z www.stud.ifi.uio.no/~larsi/other/ Odtwarzacz do MPEG III można ściągnąć z homepages.uni-tuebingen.de/student/michael.hipp/mpg123/ Jeśli masz nagraną mowę, to możesz spróbować zredukować jej rozmiar algorytmem "GSM lossy speech compression": kbs.cs.tu-berlin.de/~jutta/toast.html 44..1111.. JJaakk uuttwwoorrzzyyćć ppłłyyttęę ssttaarrttoowwąą ((bboooottaabbllee)).. Musisz mieć dyskietkę startową. Stwórz jej dokładny obraz poleceniem: dd if=/dev/fd0 of=boot.img bs=18k Umieść ten obraz w katalogu z danymi do płyty (albo w jakimś jego podkatalogu). Poinformuj mkisofs o tym pliku poprzez opcję -b i użyj także opcji -c. Szczegóły znajdziesz w pliku README.eltorito w pakiecie mkisofs. Interesującym zastosowaniem może być system DOS czy Windows zabezpieczony przed wirusami. Zaoszczędza to pieniędzy na dyski (jeśli masz sieć i używasz samby do wsytawiania danych użytkowików na serwerze plików). Jednak jest to czysta teoria, bo nikt mi jak dotąd nie dostarczył konkretów. Trochę szczegółów na temat startowych płyt z RedHatem można poczytać po adresem www.channel1.com/users/rodsmith/rhjol-technical.html . 44..1122.. JJaakk zzrroobbiićć zzaappiissyywwaallnnyy CCDD--RROOMM?? Jest dostępna taka nakładka na system plików Linuksa, która montowana jest na CD-ROM i przyjmuje wszystkie operacje zapisu. Nowe i zmodyfikowane pliki zapisywane są gdzie indziej, ale dla użytkownika wygląda to, tak jakby operacje były wykonywane na płycie. Więcej informacji znajdziesz pod adresem home.att.net/~artnaseef/ovlfs/ovlfs.html. Jeśli to ci nie wystarczy, to poczekaj na system plików UDF, który ma być obsługiwany przez Linuksa. Albo pomóż go rozwijać trylinux.com/projects/udf/. 44..1133.. CCzzyy mmoożżlliiwwee jjeesstt wwyykkoorrzzyyssttaanniiee kkiillkkuu nnaaggrryywwaarreekk nnaa rraazz?? Tak. Chociaż zostało to przetestowane na razie z dwoma nagrywarkami. I potrzebujesz też łaty na jądro zapewniającej więcej buforów dla sterownika ogólnego urządzenia SCSI ( ). 44..1144.. KKttóórree nnoośśnniikkii ssąą nnaajjlleeppsszzee?? Niemiecki magazyn komputerowy "c't" ma listę wskazówek dotyczących kompaktów "noname" w wydaniu listopadowym 1996: ˇ płyty "noname" ogólnie nie są najwyższej jakości i nie powinny być używane ˇ jeśli nagrywalna płyta jest zniszczona, to odnosi się to pewnie do całej paczki (jeśli kupiłeś więcej); może masz szczęście i możesz użyć przynajmniej pierwsze 500MB tej płyty... ˇ nie dotykaj błyszczącej powierzchni przed nagraniem. 55.. RRoozzwwiiąązzyywwaanniiee pprroobblleemmóóww.. Zawsze pamiętaj, że popsutą płytę można wciąż użyć jako podstawki. :-) 55..11.. NNiiee ddzziiaałłaa:: ppoodd LLiinnuukksseemm.. Sprawdź najpierw czy nagrywarka działa w innych systemach. A konkretnie: ˇ Czy kontroler rozpoznaje nagrywarkę jako urządzenie SCSI? ˇ Czy oprogramowanie do nagrywarki ją rozpoznaje? ˇ Czy możliwe jest nagranie płyty przy pomocy dostarczonego oprogramowania? Jeśli "to nie działa" nawet w innych systemach, to masz jakiś konflikt sprzętowy albo popsuty sprzęt. Jeśli działa w innych systemach operacyjnych i używasz loadlina, aby startować Linuksa, to tu masz problem. Loadlin robi gorący reset i zostawia cały sprzęt już zainicjalizowany a to przeszkadza jądru Linuksa. 55..22.. BBłłąądd:: NNoo rreeaadd aacccceessss ffoorr ''ddeevv==22,,00''.. W Linuksie niektóre wersje bibilioteki C są niekompatybilne (mają błędy), i program skompilowany z jedną nie będzie działał z inną. Przykładem może być: [root@Blue /dev]# cdrecord -eject dev=2,0 cdrecord: No such file or directory. No read access for 'dev=2,0'. 55..33.. NNiiee ddzziiaałłaa:: ppoodd DDOOSS--eemm ii pprrzzyyjjaacciióółłmmii.. Najprzypuszczlaniej błędy te są powodowane: ˇ brakiem polecenia odłączenia/ponownego podłączenia na szynie SCSI ˇ niewystarczająco chłodzonym sprzętem ˇ popsutym sprzętem (to powinno być wykryte w punkcie 5.1) W różnych warunkach urządzenia SCSI odłączają się i podłączają ponownie samemu (elektronicznie) do szyny SCSI. Jeśli taka cecha nie jest dostępna (sprawdź parametry kontrolera i jądra) niektóre nagrywarki mają problemy podczas wypalania czy utrwalania danych na kompakcie. Szczególnie sterownik NCR 53c7,8xx SCSI ma standardowo wyłączoną tę cechę, więc możesz najpierw to sprawdzić: NCR53c7,8xx SCSI support [N/y/m/?] y always negotiate synchronous transfers [N/y/?] (NEW) n allow FAST-SCSI [10MHz] [N/y/?] (NEW) y allow DISCONNECT [N/y/?] (NEW) y 66.. PPooddzziięękkoowwaanniiaa.. AAllaann BBrroowwnn <> AArrtt SSttoonnee <> zgłosił literówki BBeerrnnhhaarrdd GGuubbaannkkaa <> zauważył potrzebę posiadania nowszych narzędzi mount do montowania przy pomocy urządzenia loopback. RRoobbeerrtt DDoooolliittttllee <> dobra argumentacja, żeby wyrzucić cdwrite z tego HOWTO. BBrriiaann HH.. TToobbyy wygładził słownictwo. MMaarrttiinn SScchhuullzzee <> podał informację o liście dyskusyjnej programu cdwrite. DDaallee SScchheeeettzz <> pomógł w ulepszeniu sekcji na temat tworzenia obrazu CD. DDoonn HH.. OOlliivvee <> URL do narzędzia mkhybrid EErrwwiinn ZZooeerr <> GGeerraalldd CC SSnnyyddeerr <> sprawdził nagrywanie CD-ROM-u EXT2 (zobacz 4.4) JJaannnnee HHiimmaannkkaa <> adres do łaty dla jądra potrzebnej do czytania płyt Joliet. JJooeerrgg SScchhiilllliinngg <> informacje na temat cdrecord. JJooss vvaann GGeeffffeenn <> zauważył problem w 4.9 MMaarrkkuuss DDiicckkeebboohhmm <> JJeessppeerr PPeeddeerrsseenn <> PPiieerrrree PPffiisstteerr <> pomógł przy tworzeniu przepisu jak zrobić kopię 1:1 RRiicckk CCoocchhrraann <> wskazówka na temat domyślnego wyłączenia cechy rozłączania/ponownego podłączania w sterowniku ncr. SStteepphhaann NNooyy <> informacje i doświadczenia na temat nagrywania płyt muzycznych. SStteepphheenn HHaarrrriiss <> dostarczył wskazówkę na temat zapisu płyt muzycznych. TThhee SShheeeeppyy OOnnee <> zasugerował użycie popsutych płyt jako podstawkę pod napoje. MMaarrttttii..RRaahhkkiillaa@@hhuutt..ffii zgłosił problem z wcześniej zainicjalizowanymi nagrywarkami przy starcie przy pomocy loadlin. 66..11.. OOdd ttłłuummaacczzaa.. Tłumaczenie to jest chronione prawami autorskimi Š Bartosza Maruszewskiego 1997-1999. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny. Jeśli znalazłeś jakieś rażące błędy ortograficzne, gramatyczne, składniowe, techniczne to pisz do mnie: B.Maruszewski@jtz.org.pl Oficjalną stroną tłumaczeń HOWTO jest http://www.jtz.org.pl/ Aktualne wersje przetłumaczonych dokumentów znajdują się na tejże stronie. Dostępne są także poprzez anonimowe ftp pod adresem ftp.jtz.org.pl w katalogu /JTZ/. Przetłumaczone przeze mnie dokumenty znajdują się także na mojej stronie WWW. Są tam też odwołania do Polskiej Strony Tłumaczeniowej. Kontakt z naszą grupą, grupą tłumaczy możesz uzyskać poprzez listę dyskusyjną jtz@ippt.gov.pl. Jeśli chcesz sie na nią zapisać, to wyślij list o treści subscribe jtz Imię Nazwisko na adres majordomo@ippt.gov.pl Zmiany w tym dokumencie wprowadzone przez tłumacza to: ˇ odwołania do polskich zasobów.