23.04.2009 22:45
kampfusbeke — Пишем большие файлы на UDF
Многие (знакомые со старой проблемой с UDF) думают, что под Линуксом на UDF нельзя писать файлы размером более 4ГБ или даже 1ГБ. Во времена HD-рипов это не очень-то и приятно... Но на самом деле, это давно уже не так ;) Нам нужны: пакет udftools и загруженые модули udf и loop. Я написал скриптик, который автоматически создает и маунтит образ UDF нужного размера (DVD+9 и DVD-9, как и DVD+5 и DVD-5 на самом деле слегка различаются в размере!), остается только записать на него нужные файлы и прожечь сам образ.Записываем этот скриптик в /usr/local/bin/makeudf (или как захотите) и делаем ему chmod +x. После чего просто запускаем его из терминала и следуем указаниям ;) Если у кого-нибудь есть дельные советы по улучшению скрипта - добро пожаловать в комментарии :)
EDIT: кстати, спасибо grigio за его решение этой проблемы, которое и сподвигло меня на написание этого скрипта.
EDIT2: кстати, cdrecord выдает при записи этих исошников кучу ошибок, не обращайте на это внимания! Записаные болванки без проблем и полностью читаются как в Линуксе, так и в Винде!
EDIT3: теперь скрипт "переспрашивает" при неверном вводе переменной
kampfusbeke 23.04.2009 22:50 #
+ 0 -
интересно, а почему после 81 строчки не нумеруются?
Плюсанул.
Перепишите скрипт так чтобы при некорректных ответах (не y или не n) он не завершался, а пользователю предлагалось ввести ответ еще раз. Циклы мб... а то не совсем тру выходит =)
Перепишите скрипт так чтобы при некорректных ответах (не y или не n) он не завершался, а пользователю предлагалось ввести ответ еще раз. Циклы мб... а то не совсем тру выходит =)
да, я тоже вот это подумал... надо бы переделать это в do-while, когда время будет :)
или, собственно, можешь подсказать что-нибудь лучше do-while? я в скриптинге пока еще новичек ;)
так, это сделали. следущая проблема - хочу, чтобы проверялось, существует ли каталог, можно ли туда писать, пустой ли он (это для монтирования). если он не пустой - чтобы так-же и создавался. как все это решить по-отдельности - раскурил, но чтобы все вместе, в одном цикле и по-элегантнее - пока не вкуриваю...
< -e $dir -a -d $dir -a -w $dir -a -x $dir > || echo "Каталог не верен";
< -z `ls $dir` > && echo "Каталог пуст" || echo "Каталог не пуст";
Вместе в одном цикле элегантно не будет. Так не получится возвращать ошибку, описывающую, что именно не так с каталогом. Лучше подробнее:
< -e $dir > || echo "Каталог не существует";
< -d $dir > || echo "Это не каталог";
< -w $dir > || echo "Запись в каталог не доступна";
< -x $dir > || echo "Нет прав на просмотр каталога";
< -z `ls $dir` > || echo "Каталог не пуст";
Что значит "если он не пустой - чтобы так-же и создавался"?
< -z `ls $dir` > && echo "Каталог пуст" || echo "Каталог не пуст";
Вместе в одном цикле элегантно не будет. Так не получится возвращать ошибку, описывающую, что именно не так с каталогом. Лучше подробнее:
< -e $dir > || echo "Каталог не существует";
< -d $dir > || echo "Это не каталог";
< -w $dir > || echo "Запись в каталог не доступна";
< -x $dir > || echo "Нет прав на просмотр каталога";
< -z `ls $dir` > || echo "Каталог не пуст";
Что значит "если он не пустой - чтобы так-же и создавался"?
проглючило :) в смысле, если он не существует, чтобы он создался. как это все по-отдельности решить, я уже разобрался, но надо будет подумать, как всю проблему решить по-элегантнее ;)
буду думать поздно вечером опять ;)
буду думать поздно вечером опять ;)
И у меня вновь не совсем элегантное решение..)
< -e $dir > || (mkdir $dir || echo "Не могу создать каталог");
< -e $dir > || (mkdir $dir || echo "Не могу создать каталог");
Все совсем давно не так о.о Скрипт для консоли, конечно, хорош, но k3b позволяет писать UDF без ограничения в 4гб.
совсем давно - это когда? в к3б под кде4 - может быть, не проверял.
в к3б под кде3 была функция записи в удф, но на деле с большими файлами ничего не выходило.
в к3б под кде3 была функция записи в удф, но на деле с большими файлами ничего не выходило.
Хмм.. лежит стопочка дисков с hd-рипами, записанными в k3b. Ни одной болванки не закосячило.
какая версия к3б?
хд-рипы, я так понимаю, больше 4-х гиг и записаны на юдф?
хд-рипы, я так понимаю, больше 4-х гиг и записаны на юдф?
1.0.5
больше 4-х гиг
а как бы посмотреть уже записанные диски - udf или нет? чтобы уж точно, а не по памяти.
больше 4-х гиг
а как бы посмотреть уже записанные диски - udf или нет? чтобы уж точно, а не по памяти.
ну, если файлы больше 4г, то должно быть удф. стандартные исо9660 так не могут ;)
а вообще, крусэйдер показывает, например, там-же где показывается свободное место. lesspipe кроме всего прочего это тоже показывает (less /dev/sr0).
если стоит lshw, можно сделать lshw |grep medium -A 4
а вообще, крусэйдер показывает, например, там-же где показывается свободное место. lesspipe кроме всего прочего это тоже показывает (less /dev/sr0).
если стоит lshw, можно сделать lshw |grep medium -A 4