Вантажте апельсини бочками

Костянтин Лєпіхов, СофтТерра

Новий, але поки ще мало використовуваний стандарт запису дисків надає значно більше можливостей і суттєво легше у використанні. Детально про те, як записувати диски по-новому під linux і піде мова в цій статті. Плюс трохи про FreeBSD.

Будь-який власник приводу CD-ROM – це щасливий власник, підтвердитьбудь-який, у кого цей привід ламався, і хто відчув всю красуіснування в сучасному комп’ютерному світі без цього приводу =) Алеце може і сказати власник пишучого CD пристрою. Особливо, якщо вінніколи не записував диск під UNIX / Linux. Тому, хто працював з графічними програмами в Windows, дуже складно звикнути до”Спартанської” обстановці в світі * NIX. Та й сама процедура запису на компакт-диск, що прийшла до нас із стародавніх часів, більше походить на танець шамана біля багаття. Її головний недолік (багатьма розцінюється як гідність) – незручність створення записів і тривалість їх створення.

Прихід CD-RW (перезаписуваного компакт-диска), не ознаменувавнічого нового для користувача в сенсі зручності запису: як і ранішедоводилося створювати сесію, а до цього ще довго форматуватиболванку. У мінусі була і низька швидкість запису на CD-RW (2x-4х проти8х-12х). Все почало змінюватися з приходом DVD. Для нього була створена свояфайлова система UDF (Universal Disk Format), що враховує його великуємність і швидкість. Адже стандарт iso9660 був створений ще в 1987 році,і скоєно не годився для нового носія інформації черезобмежень на обсяг і розміщення даних. Спочатку основним завданням UDF була лише безперервність відеопотоку і сумісність зі звичайноюфайловою системою (т.зв. Bridged UDF, в якій відеопотоки записувалисяв двох видах – UDF і ISO9660). У наступних версіях системи додаласяпідтримка запису на CD-R і CD-RW диски. Це було великим кроків впереддля звичайних користувачів. З’явився реальний конкурент ZIP дисках імагнітооптиці. Перерахую переваги нового стандарту запису:

Новинка була відразу підхоплена фірмами Adaptec і CeQadrat, лідерами на ринку програм для запису CD (тепер їх продукти продаються під торговоюмаркою Roxio). Adaptec розробила свою реалізацію UDF, назвавши їїDirectCD, а CeQuadrat свою, назвавши її PacketCD. Назви як бипідкреслювали доступність і компактність, “packed” – це від методузапису на диск, в основі якого лежав принцип запису “пакетами” -маленькими (32-64кб) блоками даних. Саме через це забезпечуваласябільша гнучкість при записі. Пропали проблеми “переповнювання буфера”запису. З’явилася можливість “лікувати” диски, на яких з’явилисяпогані сектора: можна було або просто переформатувати диск, абопереписати ту ділянку, на якому виник збій. Ще одна зручність такого запису – диск можна не “закривати” (finalize), до тих пір, поки вас не влаштує результат (порівняйте з CD-R, який нерідко доводилося перезаписувати по-новій через неправильно зібраного “образу”). Назорі створення цього стандарту лише мала кількість CD рекордерівпідтримувало пакетну запис, але скоро ситуація почала виправлятися -виробники взяли UDF і packed writing. На сьогоднішній день всі CDрекордери мають підтримку пакетного запису.

“А як це реалізовано на практиці?”, Запитаєте ви. Специфікація OSTA UDFдетально торкається це, і тут все залежить від розробників: підWindows це драйвер, під Linux це модуль ядра. Є також і драйверMacOS 8.1 від Roxio. Реалізація UDF під інші платформи мені не відома,але в OSTA UDF заявлена ​​підтримка під OS / 2 і Unix (xBSD, VMS, HP-UX). ЗаПринаймні, FreeBSD, починаючи з 4.2STABLE, офіційно підтримуєзапис на CD-RW, в 4.3STABLE додана підтримка DVD-RAM (див.Додаток C). Найбільш зручно в Windows: підтримка зроблена у виглядідрайвера, який додає можливість читання для CD-ROM приводу ізаписи для рекордера. Ще є можливість зміни швидкостічитання / запису даних (що дуже зручно і в звичайних умовах, т.к зазвичайCD-RW диск читається на тій же швидкості, що і записаний). На жаль,через відсутність у мене CD-RW, доводиться говорити “можливо” і “я такдумаю “. Весь процес запису під Windows дуже простий- Ви просто форматуєте диск, як дискету (зазвичай це займає ~ 20хвилин), потім просто в “Провіднику” або вашому улюбленому файловомуменеджері копіюєте файли на диск. Якщо щось не так, або ви передумали, просто перете і записуєте новий. Як мовиться, “Доступно навіть немовляті” =) DirectCD входить в Easy CD Creator, PackedCD є в WinOnCD. З додаткових можливостей під Windows реалізована компресія даних, що дозволяє розмістити на диску 700Мб близько 1 Гб інформації! Звичайно, інформація повинна добре стискатися і сам носій бути достатньо хорошим, інакше можливі збої при читанні. З особистого досвіду хочу зауважити, що DirectCD більш стабільний і найбільш близький до “Ідеальної OSTA UDF”, а PackedCD більш “наворочено” з точки зору функціональності, але з ним частіше збої при запису через якість носіїв. До того ж PackedCD не сумісний з реалізацією UDF під Linux і його не читає DirectCD, загалом досить закритий і проблемний продукт вийшов.

З Linux все складніше … Тут нормально реалізовано тільки читання дисків,файлова система UDF офіційно входить в ядро, починаючи з версії 2.3.7 ідоступна для попередніх версії як додатковий модуль. Більшістьдистрибутивів, крім ASPLinux і RedHat, мають підтримку UDF в ядрах 2.2(Це не стосується 2.4, куди udf входить офіційно). util-linux такожзнають цю файлову систему. Якщо у вас немає цього модуля (udf.o), тойого вихідний код можна завантажити з сайту linux-udf.sourceforge.net або
http://www.csc.calpoly.edu/~bfennema/udf.html (Це сторінка BenFennema, одного з розробників UDF для Linux) у вигляді архіву, а потімзібрати самостійно (див. додаток А). У поточній версії драйвера -0.9.4, доступної через CVS, додана опція iocharset, нарештідозволяє бачити каталоги в кодуванні, відмінною від iso8859-1. Як ужеговорилося вище, за допомогою цього модуля можна успішно читати UDF диски,створені на базі UDF 2.0 або 1.50 – це DirectCD і InCD.

На жаль, запис udf дисків “на льоту”, поки знаходиться в альфа стані, але все одно, оптимізм автора (Jens Axboe) патча дляпідтримки пакетного запису дуже надихає: вже зараз можна вільнозаписувати на CD-RW, скоро планується підтримка CD-R, а потімпідтримка пакетного запису буде інтегрована в ядро ​​2.4. І це при тому,що версія ще 0.0.2k! Звичайно, не все так безхмарно – ще не вирішено питання із записом великих файлів, не до кінця відпрацьований алгоритм відновлення після збою. Але як то кажуть, “it’s sucks, but it’s works “. Патчі для підтримки пакетного запису під ядро ​​2.4.5-pre1 можна скачати з сайту абочерез SourceForge . На сайтіSourceForge є і CVS репозиторій, через який можна отримати саму свіжу версію. Т.к вся підтримка надається у вигляді патчів до ядра, для збирання вам знадобиться і саме ядро ​​=) Його також можна завантажити з
ftp.kernel.org/pub/linux/kernel/v2.4 або будь-яких загальнодоступних дзеркал
(Chg, Наприклад). Я не раджу використовувати ядра зі всілякихдистрибутивів (RedHat, Mandrake або інших): по-перше, їх склад таорганізація досить сильно відрізняється від того, що є на
www.kernel.org. По-друге, всілякі зміни можуть конфліктувати зпатчами. По-третє, вам просто не вдасться правильно “накласти” патч.Це відноситься і до версій від Alan Cox та інших kernel maintainers. Використовуйте тільки ядро ​​від Linus Torvals, якщо вам не потрібна зайва головний біль! Після того, як ви встановили і зібрали ядро ​​з підтримкою пакетного запису (див. додаток B), саме час подумати, як і чимзаписувати CD-RW диски =) До жаль стандартні програми записудисків під Linux (cdrecord і mkisofs) тут безсилі – підтримка udf вних тільки планується, так що доводиться користуватися засобами,які пропонують розробники проекту linux-udf. У пакеті для цьогопередбачено 3 програми:

[Вперед]

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*