Блог Eugen772

начинающий для начинающих во FreeBSD и всяком другом


Архивирование tar`ом для передачи виндовым машинам с кодировкой CP1251
Pentalfa
[info]eugen772
Нужно было передать архив виндовым пользователям. Естественно кодировка на виндовой машине KOI8-R не читаема. Опять же гуглил. Нашел forum.shelek.ru .
Выглядит процесс так.
- Сначала КОПИРУЕМ все необходимые файлы в отдельную директорию (при этом замечю для особо понятливых, коими Россия богата, что это нужно только в случае, когда у вас кучка файлов с кирилическими именами);
- Потом преобразовываем кодировку этой директории в CP1251
        convmv -r -f koi8-r -t cp1251 --notest ./target
думаю опции и так понятны, а если хочеца подробно читаем "man convmv", если не установлена тулза инстолим (/usr/ports/converters/convmv). О опции --notest оставлю пометку, без нее конвертер только покажет, что получится после преобразования, но сами файлы трогать не будет, когда тест покажет что "все правильно сделал", тогда и ставим эту опцию "--безтеста";
- Далее завершаем всю эту муку архивацией
        tar -czf archive.tgz ./target
- Удаляем директорию ./target чтоб не смущала.
- Копируем на флешку, или еще куда нужно, чтобы передать архив винде.

Монтирование NTFS раздела с русской кодировкой.
Pentalfa
[info]eugen772
# mount_ntfs -C KOI8-R /dev/da0s1 /mnt 
И снова все ладом, команда под специфичную ФС, опция указывающая локальную кодировку, устройство, точка монтирования.
Еще хотелось бы отметить, что на нулевой консоли, при подключении флешки появляется полезная информация, поэтому никогда не работаем на ней, а работаем на первой и далее или в X-ах. гы Из иксов можно попасть в первую консоль нажанием Ctrl+Alt+F1. Вернутся в иксы Alt+F9. Плюсик при этом нажимать не надо. гы На консоли вы увидите примерно следующую информацию:
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Maxtor 6 E040L0 0811> Fixed Direct Access SCSI-0 device
da0: 40.000MB/s transfers
da0: 39204MB (80291135 512 byte sectors: 255H 63S/T 4997C)
GEOM_LABEL: Label for provider da0s1 is ntfs/MAX040.
из этого сразу ясно, какой файл устройств, с какой ФС мы имеем.

Монтирование CD DVD во FreeBSD с русской кодировкой.
Pentalfa
[info]eugen772
Автомонтирование во FreeBSD уже работает, но все же с ним бывают вопросы. Да и пока начинающий только учится поднимать X.org и так далее, он работает в консоли, до автомонтирования ему еще далеко. К тому же в консоли многим, и мне тоже, нравится работать больше чем пользоваться какой-либо системой автоматизации монтирования.
Монтирование описыватся во многих книгах и мануалах, поэтому не буду расписывать синтаксис и значение ключей. Новичкам: учитесь читать на языке потенциального врага.

Монтируем CD DVD с русской кодировкой:

файловая система iso9660

mount_cd9660 -C KOI8-R /dev/cd0 /mnt
mount -t cd9660 -C KOI8-R /dev/cd0 /mnt (с опцией -t я почемута не подружился, не помню почему)

примечание: девайс cd0 это не acd0, а это устройство ATAPI (кажися типа сидюк с расширеными возможностями и скоростью). Так что замените его при необходимости в команде монтирования. Если ваше устройство поддерживает ATAPI (на текущий день это уже почти default) читайте Handbook/Устройства хранения/Запись и использование оптических носителей (CD)/Использование драйвера ATAPI/CAM как заставить работь привод через ATAPI драйвер. На счет -C KOI8-R можно сказать, что это указыавтеся локальная кодировка, то есть настройки вашей системы это либо KOI8-R либо UTF-8 (полностью всю систему на сей день перевести не представляется возможным) либо CP1251 (переводить на эту кодировку я даже пробовать небуду).

файловая система udf

Выше приведенной командой можно монтировать CD DVD с файловой системой (ФС) cd9660. Представим себе, что на DVD был записан файл более 2 Гб (если не ошибаюсь в ограничениях cd9660). Он мог быть записан с ФС udf, при этом команда сильно не изменится:

mount_udf -C KOI8-R /dev/cd0 /mnt
mount -t udf -C KOI8-R /dev/cd0 /mnt

Так, кажется это все, что касаеца монтирования CD DVD. Больше этого я не использую. Единственной проблемой для меня в монтировании в консоле было запомнить необходимые параметры. Но это решилось просто. В домашней директории ~/ положил файл-памятку (простой ascii текст) назвал его personal_faq.txt, записал в него часто используемые команды, и в последствии командой cat (вывод в стандартный поток вывода) и командой фильтрации строк grep получал список подходящих команд, к примеру:

$ cat personal_faq.txt | grep mount_cd9660
mount_cd9660 -C KOI8-R /dev/cd0 /mnt
mount -t cd9660 -C KOI8-R /dev/cd0 /mnt


так же в него напихал
запись dvd
создание iso образов
очистка rw дисков (хорошая штука для создания подставок под кружки с чаем/кофе, если применить на простые r балванки :)))
и еще много чего планирую напихать и в блог выложить

теперь просто нужно помнить пару букв необходимых для фильтра файла-памятки.

Home