29 Август 2006

Установка многослотового картридера в Linux: card reader in Linux HOWTO

Когда мне потребовалось читать и писать на многие виды флеш-карт, я пошёл на рынок и купил кардридер Transcend. Меня покорила его цена и гордая надпись на упаковке: Supported OSes - Windows, MacOS and Linux. Ну, думаю, дожил - производитель железа вспомнил о Пингвинах. И возрадовался. Преждевременно, как выяснилось потом...

Маленькие грабельки, которые могут больно ударить
Вонзаем USB-штепсель карт ридера в порт, втыкаем в карт ридер карточку и, затаив дыхание, ждём радостных сообщений dmesg. Если нам очень повезло и они появились - не спешите. Очень может быть, что обнаружен только первый слот card reader. На моём кардридере Transend это был MemoryStick, которого у меня не было никогда. На втыкание остальных карт он не реагировал. Почему?

Немного теории
Дело в том, что в Linux USB рассматривается как протокол "поверх SCSI" со всеми вытекающими последствиями. А именно: на одном шлейфе SCSI может висеть несколько устройств, которые общаются с системой независимо. Поддержка этой возможности (LUN - Logical Unit Numbers) в ядре есть, но она может быть выключена. Таким образом, для успешной работы многослотовых карт ридеров нужно, чтобы в ядре было включено:

---SCSI Support (CONFIG_SCSI, scsi.o)
---SCSI disk support (CONFIG_BLK_DEV_SD, sd_mod.o)
---SCSI generic support (CONFIG_CHR_DEV_SG, sg.o)
---Probe all LUNs on each SCSI device (CONFIG_SCSI_MULTI_LUN)
---Support for USB (CONFIG_USB, usb.o)
---Preliminary USB device file system (CONFIG_USB_DEVICEFS)
---USB ECHI HCD (CONFIG_USB_EHCI_HCD, usb-ehci-hcd.o), UHCI (CONFIG_USB_UHCI, usb-uhci.o), OHCI (CONFIG_USB_OHCI, usb-ohci.o)
---USB Mass Storage support (CONFIG_USB_STORAGE, usb-storage.o)
Выделенное красным полужирным шрифтом - обязательно включить, иначе будете видеть только первый слот. Эту одну маленькую опцию я искал неделю, но вам теперь будет легче.

Что делать?
1. Если ядро пересобирать не хочется/не можется/ не умеется, то делаем, как сказано здесь:

Дайте команду:
echo "scsi scsi-add-single-device    ">/proc/scsi/scsi

Например, для шестипортового кардридера:

root@localhost# echo "scsi add-single-device 1 0 0 5" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 4" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 3" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 2" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 1" > /proc/scsi/scsi
root@localhost# echo "scsi add-single-device 1 0 0 0" > /proc/scsi/scsi

2. Если ядро пересобрать - не проблема, то включаем там поддержку SCSI (как написано выше) с обязательной опцией Probe All SCSI LUNs. После этого картридер будет читать ваши флеш-карты во всех портах, а флешки будут видны как SCSI-диски, т.е. sda и партиции sda1 sda2 и так далее. Если руками монтировать лениво (и это правильно), пишем в /etc/fstab новую строчку:

/dev/sdc1 /mnt/sd vfat user,noauto,sync,noexec,nosuid,nodev,iocharset=koi8-r,codepage=866 0 0
Всё. После этого флеш-карты карт ридером воспринимаются и читаются/пишутся нормально. Не забываем отмонтировать флешки перед вытыканием :-)

Ссылки:
Кроме личных страданий, были использованы источники:
http://www.linux-sxs.org/hardware/flashreaders.html
http://www.cs.sfu.ca/%7Eggbaker/personal/cf-linux
http://hot-orange.narod.ru/chtivo/card-reader.htm
http://ru.wikibooks.org/wiki/LOR-FAQ-Hardware
http://www.ladoshki.com/?articles&id=139
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

24 Август 2006

Правильная установка Дебиан, In A True Debian Way

Как часто можно услышать: "да, я устанавливал Дебиан семь раз, но у меня ничего не получилось", "как в тёмной чаще, ничего не понятно", "сплошные мучения и заморочки" и прочее и прочее. Это всё потому, что Дебиан был установлен неправильно.

Ниже я постараюсь дать описание способа установки Debian, который должен привести к заведомо лучшему результату. Главное - решать проблемы по ходу их поступления, а не пытаться поставить всё и сразу.

Задача: требуется создать надёжную, стабильную, заточенную под себя рабочую среду на основе Debian GNU/Linux.

Решение: творчески переосмысливая изложенное ниже и согласуя со своими представлениями об удобстве и функциональности, получаем удобную и стабильную систему под управлением Debian GNU/Linux.


Шаг 0. Вместо предисловия
Всё перечисленное ниже - моё личное частное мнение, которое помогло мне поставить Debian GNU/Linux и настроить его за минимальное время. Поэтому если уж вы решились следовать приведённым ниже советам - сначала читайте, а потом делайте.

Надеюсь, что вы хорошо подумали прежде, чем устанавливать Debian. Если есть сомнения - время сесть и подумать ещё раз. Мой ответ на вопрос "почему Debian лучший (для меня) дистрибутив" можно прочитать здесь.

Ставить систему надо один раз. Настраивать систему надо один раз. Потом - работать и получать от этого удовольствие. Переустановка системы есть глупость, это вам помогало в Windows. Здесь - не Windows, и через короткое время вы это очень хорошо почувствуете.

Дебиан - очень простой, понятный и удобный дистрибутив, но него есть свои отличительные черты, о которых нужно знать. Я постараюсь рассказать о них и построить своё описание установки и настройки независимо от версии, чтобы потом не пришлось всё переписывать заново.


Шаг 1. Установка Debian: особенности процесса
Итак, записали первый диск с Дебианом на болванку, вставили диск в CD/DVD привод, загрузились с CD/DVD диска. Нас приветствует первое окно - предлагает нажать Enter для продолжения или F1 для справки.



Подводный камень 1: несколько ядер
В комплекте дистрибутива Debian может быть несколько ядер для установки. Дебианщики - люди основательные и запасливые, а ещё большие перестраховщики, поэтому включают в комплект инсталлятора системы не одно, а несколько ядер. Мало ли - одно не запустится на вашей системе, или работать будет плохо. Всегда приятно иметь запасной парашют.

Итак, может быть несколько ядер на выбор. Поэтому внимательно читаем то, что нам предлагают разработчики дистрибутива перед тем, как нажать Enter.

С Debian v3.1 Sarge была такая ситуация: если вы просто нажимали Enter, то запускалось старое ядро 2.4.27, и ни SATA, ни PCI-Express не работало. Это было источником множества необоснованных упрёков со стороны новичков.
Короче: перед нажатием Enter внимательно читаем прилагающуюся справку.

Затем обычно появляется окно с выбором языка. Если вы планируете работать с русским - выбирайте, соответственно, Русский. Как и регион, и раскладку лучше сразу выбирать ту, с которой будете работать, меньше потом придётся переделывать.
Инсталлятор проверит ваше железо и загрузит для него свои модули. Если ядро не сможет найти драйвера для контроллера жёсткого диска - установка прекратится, хотя это маловероятно.

Подводный камень 2: разбивка диска

Есть несколько вариантов:

1. Использовать максимальное свободное место. При этом вторая операционная система (если такая есть) затронута не будет, свободное место сократится и выделится Debian. При старте можно будет выбирать, что загружать.

2. Использовать весь диск. При этом всё, что есть на винчестере, будет уничтожено и туда будет поставлен Debian в гордом одиночестве.
Если на винчестере установлена другая ОС и хочется её сохранить, выбираем "Использовать максимальное свободное пространство". После этого и вторая ОС, и Debian будут загружаться, при старте можно будет выбрать требуемую систему.


Также могут спросить о схеме разбивки диска. Если вы ставите систему в первый раз и не знаете слов /home, /var и прочих заклинаний: выбирайте вариант по умолчанию "все файлы на одном разделе".


Будьте бдительны, желательно перед установкой сохранить данные в надёжном месте.

Несколько слов о том, что может предложить автоматика и что здесь можно поменять. Могут предложить снести весь диск и разбить его под Линукс, но можно и поменять разделы вручную.



Здесь есть тонкости следующего рода:

а) Swap-раздел
. В принципе, его можно и не использовать, а подключать и отключать по необходимости swap-файлы. Однако лучше swap-раздел всё-таки оставить и отдать под него места, равного половине объёма оперативной памяти.

б) Разные файловые системы
. Да, под Linux их много - есть из чего выбрать. Выбирать надо только журналируемые файловые системы, так как в случае отключения электропитания файловая система не потеряет целостности. Буквально два слова, чем файловые системы Linux друг от друга отличаются:
- Ext3: Надёжная и проверенная файловая система, оптимальный выбор в большинстве случаев.

- ReiserFS:
очень быстрая файловая система, особенно при работе с маленькими файлами. Идеальное решение для корневого раздела. Большие файлы копирует не быстро, но чтение/запись мелких файлов и поиск по файловой системе происходит очень быстро. Минус - грузит процессор, так что не для слабых машин.

- Xfs:
изначально создавалась под хранение файлов огромных размеров, поэтому быстро работает на архивах iso-образов дистрибутивов и фильмов, плюс хорошая работа с дисковыми квотами. Хорошо использовать для разделов, на которых предполагается хранить большие файлы (фильмы, iso-образы, архивы).

- Jfs:
в лучшем случае недалеко от Ext3 по скорости, но весьма стабильная и нетребовательна к ресурсам. Очень мало грузит процессор и идеальна на старых машинах и медленных ноутбуках.
После всех изменений не забудьте убедиться, что на основном разделе стоит метка "загрузочный", подтверждайте свой выбор и продолжайте установку.

Короче:
выбор файловой системы Ext3 для неискушенного пользователя наиболее оправдан.



Подводный камень 3: загрузчик
В Linux выбирать можно всё, даже загрузчик. Загрузчиков два на выбор - LiLo или GRUB. Если вы специально не попросите, поставится GRUB, так как он более функционален. Важно знать, что такая возможность выбора есть.

Короче: если особых соображений по поводу загрузчика нет - просто ставим по умолчанию GRUB.

Базовая система поставится, и попросит перезагрузиться. Вас спросят пароль рута - администратора системы, который будет ей управлять, ставить приложения и настраивать оборудование. Если машина домашняя, то администратором будете именно вы.
Внимание! Есть опасность того, что вы пожадничали место на диске и места может не хватить. Это обычно проявляется в том, что установка не доходит до конца и отправляет вас "по кругу".
Дальше инсталлятор спросит о простом пользователе, под которым вы будете работать. Вводим пароли, выбираем их не очевидными, чтобы враг не догадался. Под рутом постоянно сидеть и работать нельзя, повторяю ещё раз - только настраивать систему и то очень осторожно, ни в коем случае не удаляя мимоходом какие-нибудь ссылки, каталоги или файлы.

Подводный камень 4: долгая первая загрузка
Первая загрузка может быть долгой - не паниковать ни в коем случае, это нормально. Дистрибутивное ядро рассчитано на работу с любым поддерживаемым оборудованием, и на определение конфигурации вашей машины может уйти много времени. Особенно это заметно на ноутбуках с традиционно медленными винчестерами. Диагностические сообщения быстро следуют друг за другом - это нормально (пока они не остановятся на словосочетании типа Kernel Panic, что маловероятно).
Короче: если первая загрузка длится долго (2-3 минуты) и на экране постоянно выдаются диагностические сообщения - это нормально.

Базовая система настроится и будет готова. Если сравнивать её с автомобилем, то это только остов, колёса и движок. Остальное мы будем подбирать под себя сами, думая о том, что мы хотим видеть в новой системе.

Подводный камень 5: автоматическая установка рабочего стола
Может запуститься менюшка с выбором того, чего вы хотите: сразу поставить "веб-сервер", "рабочий стол" или что ещё. Я считаю это самой большой идеологической диверсией в Дебиане, хотя кто-то может со мной не согласиться.

Если вы не сможете устоять перед искушением и попросите поставить сразу "весь рабочий стол", то на вас могут свалиться сразу множество проблем: графическая оболочка может не подняться или подняться, но не так, поставится не та графическая среда, которую вы хотите и прочее. Кроме того, пакетная система из лучших побуждений поставит много программных пакетов, которые в будущем, быть может, придётся удалять.

Здесь кому что: если хотите ставить "всё сразу, а потом выгребать мусор" - ваше право. Но я предпочитаю решать проблемы по мере их поступления. Выбор за вами.


Короче: если вам предложат сразу поставить рабочий стол - подумайте, что вам удобнее: "ставить всё сразу, а потом разбираться и сносить часть поставленного" (вариант "поставить рабочий стол") или "делать всё самому и решать проблемы по мере их поступления" (вариант "только базовая система" и никаких "сразу поставить рабочий стол")


Шаг 2. Обживаем базовую систему
Базовую систему поставили, загрузились в неё, ввели логин и пароль, который назвали при установке. Нас поприветствовала голая консоль. Теперь понятно, что вы не в Windows? Это важный момент: забывайте свои дурные привычки и готовьтесь к тому, что придётся многое осваивать и понимать.

Здесь всё иначе, пока что непривычно и за один день вы всего не поймёте. В Windows вы тоже не за один день научились кнопки тыкать? Тут то же самое, только кнопок пока нет - лишь те, что на клавиатуре.

Это не страшно - скоро мы поднимем графическую оболочку и вы увидите, что многое в Linux правильнее, проще и лучше, чем в Windows. Дебиан нам друг, а не враг, и если что-то не получается, значит: а) вы делаете что-то не правильно, б) у вас нет на это прав. Так что сейчас начнём обживать базовую систему. Нам потребуются диски с софтом, которые шли с Дебианом. Здесь имеет место быть ещё один камушек:

Подводный камень 6: диски с софтом
Для дальнейшей работы нужно ставить софт из дебиановских репозиториев. Они, репозитории, могут быть:
--- в Сети - и тогда нужно подключение к Интернету;
--- на дисках (CD/DVD) - тогда требуется их записать на болванки и иметь рядом с собой;
--- на жёстком диске в виде iso-образов - тогда потребуется их примонтировать.
Для начальной установки софта потребуется первый DVD диск или первые три-четыре CD. Кое-что есть на самом первом диске, откуда и начиналась установка.
В случае с записанными дисками - просто вставляем их в привод и набираем
# apt-cdrom add
и жмём Enter. Так поступаем для каждого диска с пакетами Debian.
Решётка означает, что команда даётся от имени суперпользователя - root. Для этого набираем su и пишем рутовый пароль. На этапе установки и настройки рутовые привилегии будут часто нужны, но постоянно под рутом сидеть нельзя.

Если диски выкачали из Интернета/получили от знакомого дебианщика в виде iso-файлов (образов дисков), то их надо прикрутить и скормить системе управления пакетов. Делается это так:
# mount -t iso9660 имя_образа_диска.iso /cdrom -o loop
После чего даётся та же команда
# apt-cdrom add
Для CD и DVD-дисков операция та же самая. С той лишь разницей, что сиди-дисков куда больше.
После добавления всех дисков набираем:
# aptitude update
Это приведёт к обновлению информации о доступных пакетах для системы.
Кстати, если у нас в консоли есть какие-то проблемы с кириллицей, или её умолчальная настройка нас не устраивает - всегда можно поправить это положение. Переконфигурировать кириллическую локаль можно, вызвав от рута
# dpkg-reconfigure console-cyrillic
Отвечаем на вопросы конфигуратора и радуемся настроенной под себя кириллицей.

Так, с дисками разобралис, и теперь надо начать обживаться в системе. Для этого ставим какой-нибудь файловый менеджер, например mc (аналог Norton Commander):
# aptitude install mc
Больше об установке программ в Debian сказано в этом посте. Если вам религия не позволяет ставить файловые менеджеры, то можно для правки конфигов использовать штатный и аскетичный Nano.

Попутно познакомились с системой управления софтом - почти весь софт есть в репозиториях, который управляется APT - Advanced Package Tool.

Итак, выполнение указанной выше команды приведёт к тому, что система у вас спросит: к этой программе нужны дополнительные пакеты. Спросит, ставить их или нет? Отвечаем "Да", система будет скачивать нужные пакеты с диска/ISO образа/сети в зависимости от того, что вы указали как репозиторий пакетов. На всякий случай, указание репозитория в Дебиан производится в конфигурационном файле sources.list, который находится в каталоге /etc/apt.
Для особо любознательных, привожу пример своего конфига:
#deb file:///cdrom/ sarge main
deb file:///mnt/net/penta4rce/debiandisk1/ unstable contrib main
deb file:///mnt/net/penta4rce/debiandisk2/ unstable contrib main
#deb cdrom:[Debian GNU/Linux 3.1 r1 _Sarge_ - Official i386 Binary-2 (20051220)]/ unstable main
#deb cdrom:[Debian GNU/Linux 3.1 r1 _Sarge_ - Official i386 Binary-1 (20051220)]/ unstable contrib main
#deb http://download.videolan.org/pub/videolan/debian sid main
deb http://www.backports.org/debian/ sarge-backports main
deb http://security.debian.org/ stable/updates main contrib
#deb http://ftp.fi.debian.org/debian sarge main contrib non-free
#deb http://debian.scribus.net/debian/ stable main non-free contrib
Символы решётки в начале строки означают комментарий, и не принимаются во внимание пакетной системой. После изменения этих файлов необходимо обновить информацию о пакетах командой aptitude update от рута.

В итоге программа поставится и будет тут же готова к работе. Набираем
mc
и видим - программа запустилась и ждёт наших указаний. В этом - самое больше отличие от Windows: в дистрибутиве идёт очень много программ, готовых к установке.

Следующий этап - установка графической системы и графической оболочки, которые дадут более привычную графическую среду.



Шаг 4. Установка графической системы

В двух словах: есть единый графический сервер, который предоставляет функции прорисовки окошек, управления мышкой и всё прочее. Называется он X Window System, или в просторечии "иксы". Никаких Windows в названии нет и быть не может.

Всё остальное - окошки, рюшечки и прочее - это графические среды (KDE/GNOME и Xfce) и оконные менеджеры (IceWM, Fluxbox, Blackbox, Enlightenment и прочие).

Итак, для начала нужно установить и настроить графическую систему:
# aptitude install x-window-system
Это приведёт к тому, что установится базовая графическая система - примерно так же, как вы поставили только что базовую систему Дебиан. При установке попросят поставить много пакетов, на что безусловно соглашаемся. Далее начнётся установка нужных пакетов. Это может занять много времени - не пугаемся, ждём, пока пакетная система всё настроит и вернёт нам управление.
Дабы не скучать, можно переключиться на другую консоль Ctrl+Alt+F2 - у вас есть четыре консоли. В консоли тоже есть многозадачность, это не особенность графического режима. Здесь вас попросят снова залогиниться - сделайте это. Можно набрать любую команду - например, top, и посмотреть на то, какие задачи запущены и сколько ресурсов это отнимает у системы. Потом переходим обратно Ctrl+Alt+F1, чтобы продолжать настройку.

Теперь время запустить графическую оболочку, в консоли даём команду:
startx
Экран может помигать, почернеть и вылезет серая сеточка с крестиком. Подёргайте мышку, крестик должен последовать за мышью. Если это произошло - графическая система завелась. Нажмите левой кнопкой мыши и держите - увидите болотно-зелёную менюшку. Знакомьтесь: это twm, Tab Window Manager, графический интерфейс иксов по умолчанию.

Нет, это не вершина графических оболочек Linux - поэтому мы идём в Гугл или в Википедию и смотрим, как выглядят другие оболочки. Но перед этим гасим иксы, нажимая одновременно Ctrl+Alt+Backspace.

Если вам не повезло (что маловероятно) и иксы вылетели - то есть сеточки не появилось, а появились какие-то диагностические сообщения в консоли - ваша видеокарта либо не определилась, либо определилась неправильно. Не отчаиваемся, а в консоли пишем:
su
вводим свой рутовый пароль и идём в каталог /etc/X11 при помощи команды
cd /etc/X11
либо (что проще) запустив mc. В подкаталоге X11 ищем файл XF86Config или xorg.conf и открываем его на редактирование (кнопка F4 в MC). Ищем и правим текст (выделено полужирным):

Section "Device"
Identifier "Generic Video Card"

Driver "vesa"
.....
То есть вписываем вместо того драйвера, который сейчас у вас написан, драйвер VESA. Это позволит запустить иксы без аппаратного ускорения (фильмы будут тормозить, но графическая оболочка заработает). Дальше - в Гугл по теме "как поставить драйвер _какой_у_вас_производитель_видеокарты_" - куча ссылок и решение проблемы за пару минут. Но это потом, а сейчас снова пишем startx в консоли и иксы должны запуститься.

Если иксы запустились в низком разрешении, то пробуем там же, в файле /etc/X11/xorg.conf (или XFree86Config)
Section "Screen"
Identifier "Default Screen"

Device "Generic Video Card"

Monitor "Generic Monitor"

DefaultDepth 16
SubSection
"Display"
Depth 24
Modes "1024x768" "1280x1024"

EndSubSection
SubSection "Display" ........
Не стартуют иксы в нужном разрешении? Ищите бумажную/электронную документацию на ваш монитор и смотрите, какие видеорежимы он поддерживает.

По-русски хотим печатать в графической оболочке? Тогда заделываемся root-ом (команда su и пароль рута) и идём в каталог /etc - в нём все конфигурационные файлы нашей системы. Заходим в подкаталог X11 и ищем там файл XF86Config или xorg.conf и открываем установленным уже MC на редактирование (кнопкой F4). В разделе InputDevice для клавиатуры нужно поправить до примерно следующего состояния:
Section "InputDevice"
Identifier "Generic Keyboard"

Driver "keyboard"

Option "CoreKeyboard"

Option "XkbRules" "xfree86"

Option "XkbModel" "pc102"

Option "XkbLayout" "us,ru(winkeys)"

Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"

EndSection
Вы должны в секции InputDevice вписать строчки, выделенные полужирным. Строка
Option "XkbLayout" "us,ru(winkeys)"
означает, что у нас будет английский и русский (winkeys - значит знаки препинания будут там, где в Windows - на буквах "б" и "ю").

Строка
Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
позволит переключать раскладки по комбинации клавиш Alt+Shift, при этом будет загораться лампочка ScrollLock. Переходим к следующему шагу.


Шаг 5. Установка графической среды

Всё, базовая система и графическая система настроены и работают нормально - осталось выбрать графическую среду или оконный менеджер. В Windows корпорация Microsoft уже выбрала всё за вас. Здесь, в Linux, выбирать будете вы сами, поэтому несколько слов о том, что такое графическая среда и оконный менеджер.

Графическая среда
- это набор интегрированных друг с другом приложений, призванных облегчить управление, конфигурацию и работу с системой в графическом режиме. Максимум удобства и комфорта, кнопочки, появляющиеся при подключении/отключении флешек, компакт-дисков, расшаренных сетевых папок и прочего, готовые приложения для записи дисков, браузер, почтовый клиент и игрушки.

Примеры: KDE, GNOME, Xfce.
Плюсы: привычный (после Windows) способ взаимодействия с системой, сразу ставится набор полезных программ (текстовый редактор, браузер, плеер и проч.), максимальный комфорт для новичка.
Минусы: большой расход ресурсов, сокрытие методов продуктивной работы от пользователя (консольные утилиты, возможность их "конвейерного" соединения для достижения нужного результата, скрипты).

Оконный менеджер - программа, в функции которой входит только отрисовка и управление окнами в графическом режиме. Удобств минимум: прикручивание сменных носителей самостоятельно или специальными утилитами, программы нужно выбирать и ставить самостоятельно, навигация по каталогам - MC в xterm или командами (cd и ls).

Примеры:
IceWM, AfterStep, Enlightenment, open/flux/blackbox, ion, Metacity, wmii и многие другие.
Плюсы: приучение к эффективным методам работы с компьютером (написание собственных скриптов на bash/perl, активное применение команд), существенная экономия ресурсов машины и собственных сил, прикручивание всего чего угодно на сочетания клавиш, продуктивная работа.
Минусы: "обрабатывать напильником" придётся не только систему, но и себя (дурные привычки - самые любимые), по началу будет нелегко, зато потом будете использовать своё и машинное время очень и очень эффективно.

Если вы не знаете, что выбрать из всего многообразия, приведу четыре опции на быстрый выбор.

KDE (как выглядит)
Девизом KDE можно объявить "настраивается всё". В каждой КДЕшной программе настроек - как семечек в арбузе. Стартовое меню с огромным набором приложений, в каждой программе настраивается решительно всё, огромный Центр Управления с массой настроек, чтобы подогнать среду к пользователю настолько, насколько это возможно.

Всё подогнано друг к другу и богато настройками. Замечательный текстовый редактор Kate, графический редактор Krita, файловый менеджер и по совместительству броузер Konqueror и многие другие товарищи на букву К - всё это изобилует функциями и пестрит настройками.

Если вы обожаете подгонять программы под себя, дёргать за настроечные ползнуки и экспериментировать с кучей флажков и кнопок в настройках - KDE вам определённо понравится.


GNOME
(как выглядит)
В противоположность KDE, GNOME ориентируется на максимальную простоту интерфейса и максимальное сокрытие всякого рода "настроек". В общем, если вам нужен максимально простой, но тем не менее функциональный интерфейс - присмотритесь к GNOME.

Здесь определённо есть движение в сторону интерфейса MacOS X. Панелька сверху, компактный список приложений, лаконичный внешний вид и минимум выпирающих настроек. В комплекте с GNOME так же есть все необходимые программы, такие как файловый менеджер и броузер Galeon, текстовый редактор Gedit, графический редактор GIMP, просмотрщик PDF Evince и многие другие приложения.

Если куча настроек и флажков KDE наводят на вас ужас, и хочется простого автопилотного интерфейса - GNOME вам придётся по душе.


XFce
(как выглядит)
Напоминает облегчённый GNOME и скромнее по возможностям. Лёгкая интегрированная среда, идеально подходящая для слабых машин.

Так как среда сильно облегчённая, приложения придётся подбирать сообразно обстоятельствам. Хорошо впишутся в общий фон abiword и gnumeric (текстовый и табличный редакторы соответственно), gpaint и xmms.

Если с ресурсами не густо, а хочется интегрированной простой среды - XFce это то, что вы ищете.


IceWM (как выглядит)
Один из самых гибких и функциональных оконных менеджеров: маленький и шустрый, имеет утилиты настройки, меню, виртуальные рабочие столы, обои, горячие клавиши, индикаторы активности процессора и сетей. Больше скриншотов и описаний есть тут. Подкреплённое фантазией и желанием, это можно трансформировать в десктоп вашей мечты.

Если хочется максимальной скорости от машины и создать что-то своё, то IceWM для начала будет самое то.

Выбрали? Тогда ставим, в зависимости от выбора:
#aptitude install kde-core kdm

или

#aptitude install gnome-core gdm

или

#aptitude install xfce4

или

#aptitude install icewm xdm

На всякий случай: xdm - это X Display Manager, графическая замена стандартному входу в систему (login), хотя на самом деле он может значительно больше.
После установки графической среды / оконного менеджера (пере)стартуем иксы, должны вместо противной серой сеточки увидеть что-то более красивое.


Несколько важных вещей
Несколько слов о системе управления софтом в Дебиан - эти азы нужно знать (частично утянуто отсюда).

Как установить пакет?
aptitude install пакет

Как удалить пакет?
aptitude remove пакет

А после удаления точно ничего от пакета не останется?
Для того, чтобы точно не осталось, используем aptitude purge пакет

Как обновить список пакетов?
aptitude update пройдет по всему списку указанному у Вас в /etc/apt/sources.list и обновит списки пакетов по всем репозиториям.

Как узнать как называется пакет для какой-то цели?
Поиск по ключевым словам при помощи apt-cache search ключевыеслова

Принесли компакт-диски дистрибутива, которых не было, как их добавить?
apt-cdrom add после чего сделать aptitude update

Как поставить один *.deb пакет в систему?
При условии того, что удовлетворены все зависимости, dpkg -i имяфайлапакета

Как удалить один *.deb пакет из системы (возможно, поставленный в предыдущем пункте)?
dpkg -r названиепакета. То есть если вы ставили пакет dpkg -i mplayer_1.0cvs_i386.deb то для его удаления надо написать dpkg -r mplayer

Больше расскажет справка, вызываемая по команде man apt или man aptitude.

Да, самое главное: как правильно выключить систему с Linux?
Для этого в консольке от рута даём команду:
# halt
Для перезагрузки соответственно
# reboot
В Linux нельзя просто так перезагружать систему кнопкой RESET: данные, находящиеся в файловом кэше, должны быть записаны на диск. Впрочем, в Linux кнопка RESET и перезагрузка системы почти не потребуются.


Что дальше?
Продолжая ставить программы и настраивать систему под себя, стараемся прежде всего создать комфортное для себя окружение. Не важно, что вы поставили в качестве графической оболочки - старайтесь сделать систему удобной для вас в использовании. Не надо сразу пытаться пересобирать ядро, ставить что-то из исходников и удалять "ненужные" системные файлы, ощутив мощь рутовых привилегий. Если же очень тянет на эксперименты с системой, лучше поставить эмулятор (типа qemu или virtualbox) и прочесть вот это. Установка программ в Debian описана подробнее в этом посте.

Если вас устраивает установка программ в терминальном режиме, с помощью aptitude - ищите в графической оболочке, которую вы поставили, программы Konsole, Terminal или xterm. Если хочется удобств и графического инсталлятора программ, вам может пригодиться synaptic.

В репозитории Debian огромное количество приложений - описание того, какие программы зачем нужны, можно в этом посте.

Ставьте программы, изучайте их, обустраивайтесь, настраивайте оборудование (принтеры, сканеры, звук и прочее). Попутно, настраивая периферию, вы многое поймёте и узнаете. Главное - не спешить сразу ломиться в цифровые джунгли.

Успехов в освоении Дебиан!
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

22 Август 2006

Установка MATLAB в Debian GNU/Linux

Задача: надо поставить (не)честно (не)купленную (не)институтом систему численных математических расчётов MATLAB в Linux. В этом деле есть некоторые грабли, которые я постараюсь осветить.

Поставляется MATLAB на нескольких CD-дисках, и его инсталлятор, как указывается, способен работать на любых *никсах. Это, скорее всего, так и есть, потому что установочные скрипты писались с использованием стандартных средств типа cat, awk, sed и проч.
Читаем инструкцию по установке, заходим в каталог, где примонтирован диск/исо-образ и под рутом даём команду

# ./install
Если нам очень повезёт, то начнётся установка. Если установка плюётся ошибками, то перво-наперво проверяем, имеет ли наше устройство/исо-образ бит выполнения - если нет, даём права как минимум
# chmod 555 /где/устройство/накоторомматлаб
В Дебиане нам может не повезти ещё больше - у меня с MATLAB v7 и Debian v3.1 Sarge это выглядело так: в консольном режиме от имени root даётся команда:
# ./cdrom/install
что приводит к появлению сообщения
--------------------------------------------------------------------------------------------
Sorry! Could not determine the Format of the CDROM for architecture (glnx86)
--------------------------------------------------------------------------------------------
Можно пробовать запускать
# ./cdrom/install -t
в "терминальном режиме", но сообщение то же самое. Если запустить консольку из графического режима, то реакция будет другой:

Internal error 2: Could not determine the path of the
MATLAB root directory.

original command path = bash
current command path = bash

Please contact Mathworks Technical Support
for further assistance.

Установочный скрипт выругался, что не видит оболочки bash. Это, конечно, неправда, но как его убедить, чтобы он поставился? Этот золотой ключик мне сообщил замечательный человек - Игорь Чернявский, за что ему от меня земной поклон.

Так вот, если содержимое файла лицензии не позволяет вам обратиться в службу тех.поддержки, то попробуйте следующие действия (главное - выделено полужирно)
$ mkdir /usr/local/matlab7/
$ cp /media/cdrom/../license.txt /usr/local/matlab7/
$ cd /usr/local/matlab7/
$ sh /media/cdrom/install
Просто установщику нужно дать отдельную консоль. Опробовано в FedoraCore начиная с 3-ей версии и свежеустановленном Debian GNU/Linux v3.1 Sarge. Только после этого установщик начал ставить MATLAB, что происходит гладко и успешно.
Правда, на моём ноутбуке с точно таким же Саржем и с теми же манипуляциями установка в графическом режиме не пошла. Вылечил ключом -t и текстовым вариантом инсталляции.

Впечатления: не знаю, у кого как, но в Дебиане графическая оболочка MATLAB работает отвратительно. Может быть потому, что у меня iceWM и GTK, но вылеты через раз после старта и крэш-дампы вёдрами меня, скажем так, не устраивают. Поэтому чаще всего я запускаю MATLAB с ключом:
$ matlab -nojvm
что вырубает графическую морду и работает в терминальном режиме. Это гораздо лучше, быстрее и стабильнее. Кстати, не удивляйтесь, если некоторые скрипты будут отсутствовать в линуксовой версии - сейчас MathWorks интенсивно затачивает своё творение под мастдай, что на самом MATLAB отражается далеко не лучшим образом. Впрочем, к теме это уже не относится...


Пояснение: MATLAB - это система численных математических расчётов, написанная на C и Фортране, имеющая простой интерпретируемый язык высокого уровня, на котором пишут скрипты/программы. Поставляется в виде интегрированной среды разработки, средств отладки и профилирования. Ядро системы закрыто, программа проприетарная, однако её расширения - простые текстовые скрипты - поставляются в открытом виде и реализуют базовые операции: работа с матрицами, БПФ, вейвлет-преобразование, работа с сигналами, статистические расчёты и проч. и проч. Так как скрипты открыты и их можно посмотреть и изменить для своих нужд, система MATLAB стала невероятно популярной и фактически стандартном де-факто в научном мире. Естественно, что MATLAB есть для всех платформ, а не только для Windows.

Есть ли альтернативы? Есть, но до уровня MATLAB они не дотягивают. Самая мощная из альтернативных систем - GNU/Octave, хорошо совместимая с MATLAB, но явно проигрывающая ей (хотя и приближающаяся) по функционалу. Остальные (Scilab, Yorik) отстают ещё больше на фоне MATLAB.

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

20 Август 2006

Встречи, поинты, собрания - и как всё это происходит

Тема: некоторые мысли по поводу организации встреч людей, знакомых только по сетевому общению, на примере линукс-поинтов.

Вступление
Часто в блогах и форумах встречаются темы и посты о том, как хорошо было бы встретиться, пообщаться и поговорить. Много комментариев, постов, высказываний, меньше предложений и ещё меньше конкретики. Через некоторое время энтузиазм спадает, люди под разными предлогами отказываются от встреч - и вот вся благородная идея рассыпается в прах...
Унылая картина. И главное, никто не понимает, почему же так происходит?

Несколько слов и предложений
Как человек, уже в третий раз собирающий людей на встречу пользователей Юникс-систем, скажу несколько простых слов по этой теме. Может быть, эти слова помогут организаторам встреч - и может быть, этих встреч станет больше.
Организация встречи: как только вы предложили встретиться - вас сразу будут считать организатором. Нравится вам это или нет, но если хотите, чтобы встреча состоялась, придётся взять на себя некоторое количество неблагодарной работы, необходимой, тем не менее, для успеха предприятия. Никакие отговорки "я не буду этим заниматься" и "это не моё" ваши коллеги не примут: назвались груздем - полезайте в кузов.
Потребуется найти подходящее место встречи, определиться с устраивающих большинство участников временем проведения, цель встречи, взносы (только если вы не угощаете всех) и наконец, приблизительно выяснить количество желающих прийти.
Всё это должно подпитываться вашим энтузиазмом и твёрдой уверенностью в успехе мероприятия.
Состав и количество участников: сразу выясните, кто и как представляет себе будущее мероприятие, чтобы потом не было недопонимания. Если вы будете заставлять людей готовить серьёзные доклады, а они пришли просто попить пива - мне даже не хочется говорить, что из этого выйдет. Поэтому сразу лучше выяснить, сколько будет людей и чего же им хочется от встречи - просто и без обиняков.
Цели встречи: это может быть общение людей, знакомых только по сетевым сообщениям, обмен опытом, программами и вообще совместный отдых. Правильно расставленные акценты - и как бы сама собой образуется ненавязчивая и доверительная атмосфера встречи, в ходе которой люди обмениваются собственными впечатлениями, идеями и знаниями. В обстановке дружбы и доверия.
Место встречи: это самое главное - где в большом городе собрать людей, чтобы можно было бы мирно пообщаться, чего-нибудь съесть и выпить и при этом не иметь конфликтов с правоохранительными органами. Это не так просто, как может показаться. Может быть, участники предложат свои идеи, которые организатор взвесит, оценит и найдёт лучший вариант. В процессе этого вы виртуозно овладеете искусством компромиссов.
Время встречи: какое бы вы не выбрали - оно устроит не всех. Снова идём на компромисс с участниками и выбираем то время, которое удобно большинству собравшихся. Не забываем бодро отписываться об этом на форумах/блогах с тем, чтобы у сомневающихся возникло ощущение "неотвратимости" встречи - вроде всё идёт к тому, что это произойдёт, и во всех участников это вселяет оптимизм. Главное, чтобы организатор этот самый оптимизм не потерял.
Договорённости и координаты: как бы обыденно это не звучало - соберите контактную информацию участников. Желательно иметь мобильные/городские телефоны тех, кто придёт: в случае непредвиденных обстоятельств можно будет оперативно связаться.
Предложения по ходу: совсем не стоит упорно держаться намеченного плана - подстраивайте план под собравшихся, а не наоборот. Вносимые предложения в идеале озвучивают мысль собравшихся, мягко и ненавязчиво. Точно так же разруливаются начинающиеся жаркие споры, грозящие перейти в "религиозные войны" со всеми вытекающим последствиями. Так же неплохо бы прихватить с собой фотоаппарат, а ещё лучше - человека, сколько-нибудь в фотографии сведущего, чтобы по ходу развития мероприятия запечатлевать участников и всё то, что происходило.
После всего: опубликуйте, а ещё лучше опишите то, как прошла встреча. Мне кажется это очень важным моментом: те, кто постеснялся/не смог пойти на встречу, увидят и посмотрят репортаж с места событий и в следующий раз присоединятся к вам. Так же это будет интересно участникам собрания - всегда приятно посмотреть и почитать о том, как все вместе весело провели время.

"Суха теория, мой друг, но зеленеет жизни древо"
Чтобы разбавить конкретикой предыдущие абзацы, приведу несколько примеров.
В первую очередь, людей, которых вы собираете на встречу, должно что-то объединять: общие интересы, увлечения, знакомство по статьям и постам друг друга и прочее. Предложения "а не попить ли нам пивка", как правило, обречены на провал.
Людей не должно быть много - это не митинг, в конце концов. И не гонитесь за количеством участников: труднее организовывать на месте и направлять мероприятие.
Потом, никаких "докладов", "галстухов" и "шмокингов" - как правило, выглядит это вымученно, скучно и серо. Доклады друг друга вы прочитаете на форумах и блогах, а в личном общении, в неформальной обстановке, в каком-нибудь лесочке, под пиво и шашлычок можно узнать об интересующих вас темах гораздо больше. И впечатления останутся хорошие, и собраться ещё раз потом захочется.

Встреча пользователей юникс-систем - общий снимок

Первая встреча - самая сложная. Потом всё обычно организуется проще: будут постоянные участники, они могут помогать в организации встречи, приглашать других и вообще станет проще.

Ссылки:
Собственно, в качестве аргументов привожу репортажи в формате PDF с наших встреч пользователей Линукс и БСД-систем в Москве. За предоставленное место на хостинге огромное спасибо Сергею Ивановскому.
Второй линукс-поинт, 2006 год (PDF, 2.5Мб)
Третий линукс-поинт, 2006 год (PDF, 1.5Мб)
Четвёртый линукс-поинт, 2006 год (PDF, 2.5Мб)
Пятый линукс-поинт, 2006 год (PDF, 0.7Мб)
Шестой линукс-поинт, 2007 год (PDF, 1.3Мб)
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

19 Август 2006

Юмор: Tuborg Twist - пиво Дебианщика!?

Подозрение: сдаётся мне, что в блоге слишком много серьёзности. Кто-нибудь подумает, что автор этих строк - ботаник. Что не соответствует действительности. Ну скажем так - не совсем :-)

Всё началось с того, что как-то раз я проходил мимо палатки своей автобусной остановки. Там всё, как всегда: напитки разной градусности и закуски к подобающим случаям.
- "А не взять ли пивка?" - говорит внутренний голос.
- "А почему бы и нет!?" - не возражает голос внешний.
И тут мой взгляд задерживается на бутылке с подозрительно знакомым символом.
- "Странно," - думаю. - "почему он кажется мне знакомым? Вроде Туборг, вроде ничего особенного... "
Внимательно присмотревшись, меня осенило. Ба, да на этикетке изображён логотип Дебиан! Вот тебе раз! Кто бы мог подумать. Пути маркетинга не исповедимы...
Купил пару бутылок - для надёжности и статистики, посмотрел, сравнил с оригиналом - не поленился и зашёл на www.debian.org. Смотрите сами:

Очень, очень большое сходство. Просто невероятное. Многие специфичные элементы дебиановской завитушки совпадают - смотрел до дегустации, во время и после.
На вкус, кстати, очень приличное пиво, понравилось. Особенно согревало душу, что "пью правильное, идеологически выдержанное пиво". ;-)  Надо будет сделать обои с этой темой...

Может, оптический обман? Если есть соображения на этот счёт - не поленитесь отписаться в комментариях.
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

17 Август 2006

Установка Kile в Debian GNU/Linux

В этом посте мы быстро и просто поставили LaTeX, и даже сразу же им воспользовались, сделав PDF-файл из LaTeXовского документа. Просто и хорошо - но хотелось бы удобств, так как не всегда нужно работать в текстовом редакторе. Требуется интегрированная среда для разработки LaTeXовских документов, особенно если они большие по объёму. Для этого есть в Дебиане замечательная оболочка - Kile (KDE Integrated LaTeX Environment).

Установка: сейчас мы её быстренько поставим. Сама программа занимает всего около 6 Мб места:

# aptitude install kile
Вот оно и поставилось, по умолчанию интерфейс английский, но это не значит, что вы не сможете работать с русским - интерфейс программы, к самому LaTeX он отношения не имеет. Хотим Kile на другом языке - ставим ещё пакет локализации
# aptitude install kile-i18n
Запускаем Kile - штатными средствами своей графической оболочки. В общем случае просто в консольке пишем
$ kile
И вот она, в меру навороченная среда разработки документов LaTeX.

Если вы до этого ставили LaTeX по моему предыдущему посту, откройте теперь этот файл. Выглядит как в Kate, да? Ну ещё бы... Подсветка синтаксиса, автоматическое дополнение выражений, множество кодировок символов и прочие приятные мелочи.
Интерфейс Kile можно заточить под себя, в частности, убрать лишние панели и сделать его более лаконичным. Впрочем, это уже дело личного вкуса.

Раньше в Kile была оболочка к системе построения графиков GNUplot, но теперь, её, похоже, нет. Но это и не важно - например, здесь рассказано, как легко и просто строить навороченные научные графики в GNUplot при помощи простого текстового редактора.

Чтобы проверять орфографию прямо в Kile, надо поставить пакет ispell и в Settings -> Configure Kile -> Spelling выставить словарь для своего языка.

Кстати, если вы используете мой пример из другого поста и попытаетесь перегнать его кнопкой QuickBuild, программа уйдёт в задумчивость, вернуть из которой её можно большой красной кнопкой Stop. Закомментируйте строку \usepackage[pdflatex...]
нажав CTRL+D, когда курсор будет мигать на ней. Откомментировать строку можно CTRL+SHIFT+D.

Ну вот, теперь у вас есть не только сам LaTeX, но и удобная оболочка для работы. И всё бесплатно, и удобно, и в дистрибутиве - и никаких "приключений" с MiKTeX.

Kile - не единственная интегрированная оболочка LaTeX в Линукс. Есть ещё простой визуальный редактор LaTeX-файлов, который называется LyX, о чём можно прочесть там. Другой аналогичный Kile редактор, TeXmaker, был описан в этом посте. Выбор за вами.
Однако может быть, вы через некоторое время захотите работать с библиографическими списками - о замечательной программе JabRef сказано тут.

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

16 Август 2006

С днём рождения, Дебиан!

Тринадцать лет назад появился этот замечательный дистрибутив - Debian GNU/Linux, которому и посвящён этот блог.
Единственный GNU/Linux, самый стабильный, самый свободный, самый продуманный, самый богатый софтом и с лучшей пакетной системой APT. Дебиан, мы тебя любим и ждём в декабре долгожданный Etch.
Спасибо Яну Мёрдоку и его супруге Дебре за их труды, мы их помним и любим. Так держать!

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

15 Август 2006

Быстро и просто устанавливаем LaTeX в Debian GNU/Linux

Задача: требуется быстро и просто верстать научные статьи, дипломы, книги, монографии и вообще всё, что содержит много формул и графиков.
Решение: установка LaTeX в Debian GNU/Linux - минутное дело. В UNIX-системах пакеты для LaTeX называются tetex или texlive.

Для установки LaTeX в Linux следует установить пакеты (дистрибутив tetex):

#aptitude install tetex-bin tetex-extra latex-ucs
Если у вас Debian Lenny и старше, то скорее всего у вас будет дистрибутив texlive. Чтобы установить texlive в Linux пишем:
#aptitude install tex-common texlive-base texlive-base-bin texlive-common texlive-doc-base texlive-fonts-recommended texlive-lang-cyrillic texlive-latex-base texlive-latex-recommended
Для установки потребуется только первый dvd-диск. Пока ставятся пакеты - открываем свой любимый текстовый редактор и в нём пишем буквально следующее:
\documentclass[a4paper,12pt]{article}
\usepackage[T2A]{fontenc}
\usepackage[koi8-r]{inputenc}
\usepackage[russian,english]{babel}
\usepackage[pdftex,unicode]{hyperref}

\begin{document}
This is our first LaTeX document.
Это наш первый документ ЛаТеХ.
\end{document}
Набранное сохраняем под любым именем с расширением *.tex, например newlatexdoc.tex

Примечание: я использую локаль koi8-r, поэтому в строке

\usepackage[koi8-r]{inputenc}
стоит именно koi8-r.
Кто использует другую локаль, например utf8, поправьте по вкусу.

Далее в консоли (в той директории, где сохранили только что набранный файл) дать команду:
$ pdflatex newlatexdoc.tex
Среди нескольких служебных файлов появляется искомый newlatexdoc.pdf
Всё, вы уже стартовали в мир LaTeX.

Примечание: tetex в следующих версиях Debian может быть заменён на texlive.

Ссылки:
В блоге часто публикуются материалы по LaTeX в Linux, все они перечислены тут. Для изучения LaTeX вам понадобятся книги и справочники - они здесь. Дополнительные стили и прочие полезности - тут. Подробнее о разметке в LaTeX - сюда.

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

11 Август 2006

Строим научные графики с помощью GNUplot

Задача: требуется строить научные графики, двухмерные и трёхмерные, с подписями на осях с греческими буквами - много и часто.
Решение: для этих целей давно и успешно применяется программа gnuplot, которую мы быстро поставим и освоим в Linux.


Введение
Стереотипы, вредные привычки и топорные, неэффективные решения чрезвычайно живучи. Одним из таких топорных решений является применение офисных средств при работе с научными документами. То, что это легко осваивается, вовсе не значит, что это будет удобно и просто. Сколько времени и сил у научных сотрудников уходит в песок - совершенно напрасно и бесцельно. Для того, чтобы эффективно работать в научной среде, необходимо дать себе за труд освоить соответствующие инструменты. Одним из них является LaTeX, другим -
gnuplot. О нём и пойдёт речь дальше.


Немного о gnuplot
Сначала его поставим - как всегда:

#apt-get install gnuplot
Если его теперь запустить, вызвав в консольке
$gnuplot
то он нас поприветствует примерно таким образом:

G N U P L O T
Version 4.0 patchlevel 0
last modified Thu Apr 15 14:44:22 CEST 2004
System: Linux 2.6.15.7

Copyright (C) 1986 - 1993, 1998, 2004
Thomas Williams, Colin Kelley and many others

This is gnuplot version 4.0. Please refer to the documentation
for command syntax changes. The old syntax will be accepted
throughout the 4.0 series, but all save files use the new syntax.

Type `help` to access the on-line reference manual.
The gnuplot FAQ is available from
http://www.gnuplot.info/faq/

Send comments and requests for help to

Send bugs, suggestions and mods to


Terminal type set to 'x11'
gnuplot>

То есть запустилась интерактивная часть программы. Здесь нам предлагают набирать команды и сразу видеть их результат - что не очень удобно, особенно если вы в первый раз работаете с gnuplot.

Но у
gnuplot есть и другой режим работы - потоковый. На мой взгляд, для освоения и работы он более эффективен. Для того, чтобы быстро начать с ним работу и сразу посмотреть, на что он способен, мы построим небольшой, но показательный график. Всё, что нам потребуется - это ваш любимый текстовый редактор с подсветкой синтаксиса и немного терпения.

Приступим
В потоковом режиме работы
gnuplot воспринимает сразу все команды, которые вы ему пошлёте, и сразу строит график по данным из файла. В ряде случае это удобнее, а если требуется строить множество графиков, то потоковый режим работы GNUplot вас просто спасёт.

Итак, ниже я привожу разбор построения типичного графика, параметры которого записанного в виде скрипта, что выделено тёмно-красным цветом, а комментарии серым цветом. Пишите в файл строчки так, как они написаны здесь, без переносов и абзацев - это важно!

Создаём новый файл, называем, например, simple.graph и начинаем в него записывать команды
gnuplot. Признаком того, что файл относится к скрипту GNuplot, является первая строка в файле:
#! /usr/bin/gnuplot -persist
Далее выведем график в виде файла формата постскрипт (который можно скормить LaTeX)
set terminal postscript eps enhanced
задаётся имя выводимого файла с графиком, имя в кавычках
set output "~/RMSresearch.ps"
Ставим поддержку кириллицы, а то не увидим в подписях
set encoding koi8r
Устанавливаем метки по осям, размер и тип шрифта: сейчас по оси Х
set xlabel "Параметр регуляризациии {/Symbol a}, 10^{-n}" font "Helvetica,18"
Устанавливаем метки по осям, размер и тип шрифта: теперь по оси Y
set ylabel "Величина СКО, отн.ед" font "Helvetica,18"
Устанавливаем предел значений по оси Y
set yrange [0:1]
Задаём стиль линии (line1): сплошная прямая(lt - от linetype) с круглыми точками (pt - от pointstyle) типа 7
set style line 1 lt 1 pt 7
Теперь, задав все параметры, строим график, беря данные из файла RMSresult (для примера), где мы берём только второй столбец. Легенду для данных второго столбца называем СКО (среднеквадратичное отклонение) и заставляем строить график, используя тип линии, который мы задали.
plot "~/RMSresult" using 2 title "СКО" with linespoints linestyle 1

Осталось привести содержимое файла RMSresult - это просто поток чисел, разделённых пробелами (снятые параметры физического эксперимента):

1.0000000e-04 6.1881100e-01
1.0000000e-03 5.5289577e-01
1.0000000e-02 3.5527980e-01
1.0000000e-01 2.4352333e-01
1.0000000e+00 2.5852181e-01
1.0000000e+01 2.5291911e-01
1.0000000e+02 2.5109706e-01
1.0000000e+03 2.5524945e-01
1.0000000e+04 2.6013621e-01
1.0000000e+05 2.4596297e-01


Теперь, когда у нас есть всё необходимое для строительства графика, в командной строке пишем:
$ cat simple.graph | gnuplot
Всё, должен появиться график RMSresearch.ps, который можно просмотреть любым графическим редактором. Выглядеть он должен примерно так:



Ну вот, мы и построили первый график в
gnuplot. Причём, график довольно навороченный - с греческими буквами в подписи, правильно подписанными осями и прочим. Теперь людей, работающих в UNIX-системах не первый день, должно замкнуть: раз он воспринимает команды потоково - значит, можно gnuplot завернуть в скрипт и заставить штамповать графики массово? Да, естественно! И я даже скоро приведу пример Perlового скрипта, который это делает. Таким образом мной было построено 96 графиков за 3 секунды. Это ещё один пример CLI Magick...

Ссылки:
Конечно, я не смог в одном посте охватить безбрежные возможности gnuplot, да и не ставил себе таких целей. Тем не менее, в блоге есть и другие статьи по gnuplot:

Создание графиков в gnuplot метки, оси и подписи
Создание графиков в gnuplot: о легендах
Создание графиков в gnuplot: деления на осях
Создание графиков в gnuplot: двухмерные графики
Создание графиков в gnuplot: оформление двухмерных графиков
Создание графиков в gnuplot: пример построения графика


Англоязычные ресурсы:

Самым информативным ресурсом по
gnuplot является домашняя страница одного японца, которая называется gnuplot tips (not so Frequently Asked Questions) с английским вариантом. Информации там море, достаточно хорошо структурирована и главное - море примеров. Далее есть Gnuplot FAQ, в котором информация больше идеологического плана. Интересная страница "Visualize your data with gnuplot" на сайте IBM, где приводятся несколько показательных примеров использования gnuplot.

Русские ресурсы:
Кое-что есть и в нашем отечестве. Статья "Примеры построения графиков" подойдёт для начального ознакомления, а статья "GnuPlot нарисует график" подойдёт для более глубокого ознакомления.

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

08 Август 2006

Научные программы в Linux: обработка изображений

В Linux очень комфортно чувствуют себя люди с исследовательской чертой в характере - поэтому он так распространён среди физиков, математиков, геологов, химиков и научных работников других специальностей. Не удивительно, что научных программ в Linux великое множество, и часть из них присутствует в Debian GNU/Linux.

Так как я занимаюсь цифровой оптикой, то больше знаю о программах для обработки изображений. Ниже приведён их список с комментариями, полужирное выделение - значит есть в Debian GNU/Linux.


Оформление научных статей: LaTeX (пакет tetex и шрифты к нему), оболочка Kile, LyX, TexMaker.
Если в тексте есть больше одной формулы или ссылки на литературу - следует использовать для этого специализированный инструмент, который создан и заточен специально для этого. Изобретать велосипеды с использованием "визуальных" редакторов - значит тратить свои нервы, ресурсы и силы понапрасну.
Ссылки: Описание установки ЛаТеХа, оболочек Kile, LyX, TexMaker. Пакеты расширений для ЛаТех.


Средство работы с библиографией
: BibTeX, Оболочка JabRef (есть пакет для Дебиана, программа под GPL, основана на Java – поэтому в дистрибутиве нет, но скачать вместе с Java-машиной можно).
Когда количество ваших литературных источников перевалит за полсотни, просто перечислять их в конце документа LaTeX будет утомительно, и, кроме того, трудно их выставить по порядку обращения.
Ссылки: Описание установки JabRef и работы с ним.


Численное моделирование: Octave или MATLAB for UNIX (для всех и Линукса в том числе). Программы, написанные в MATLAB, отчасти будут запускаться в Октаве, но... Октаву придётся долго доводить напильником неизвестной мне конфигурации. Как альтернатива - да, как рабочий инструмент - только если рядом есть знакомый октавист. Ссылки: Описание установки MATLAB.


Символьные расчёты: Maple for Linux или Maxima.
Иногда требуется символьно взять интеграл или найти производную. Для простых вещей есть своя голова, для более сложных - запрячь компьютер и MAXIMA. Maple поставить можно - есть линуксовая версия.


Построение графиков: GNUplot + писать для него скрипты на Perl/Bash.
Много программ я пересмотрел для построения графиков - и все они убоги, в том числе навороченные, но до ужаса неэффективные монстры типа Origin. Не так давно мне пришлось строить очень много графиков - сотню. Для разных результатов, с различными подписями по осям и греческими символами в заголовках. Час на написание и отладку Perlового скрипта и 5 секунд работы программы.
Ссылки: Построение научных графиков в GNUplot.


Создание нейросетей: Genesys.
Имитатор нейронных сетей общего назначения. Пока не использовал, но говорят о нём очень уважительно.


Графический редактор для огромных изображений:
nip2.
Специализированный профессиональный графический редактор для анализа огромных изображений. Таблично-ориентированный интерфейс, быстрые алгоритмы обработки изображений. Создавался для Национальной Галлереи в Лондоне.
Ссылки: О программе nip2 и её возможностях.


Поточная обработка изображений:
ImageMagick.
Это пример того, что называется CLI Magic. Нужно в огромном количестве изображений поднять гамму, повысить резкость и перевести в ч\б. ImageMagick и за полчаса написанный скрипт за минуту выполнит полугодовую работу.
Ссылки: Работа с ImageMagick - описание ключей для программы.

Другой интересный научный софт, которого в Дебиан нет, но можно скачать отдельно, можно найти на этом ресурсе.

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

05 Август 2006

Впечатления: Дебиан для домохозяйки - Freespire

История вопроса
Linspire - достаточно старый и известный коммерческий дистрибутив, и стоит упомянуть, что раньше он назывался Lindows. Однако Микро$офт подала на них в суд с требованием переименоваться, т.к. сие название слишком уж созвучно их гениальному проприетарному творению.
После этого деятельность Linspire несколько поутихла. И вот - на DesktopLinux новость, в которой говорилось о скором релизе нового открытого дистрибутива. Из Linspire убрали всё коммерческое и не-GPL, привлекли к этому сообщество - и появилась Freespire.

Зачем нужен Freespire?

В первую очередь - корпоративным пользователям, нуждающимся в простой и "автопилотной" ОС, не слишком жадной до лицензионных отчислений. И тут на сцене появляется Linspire/Freespire, основанный на Debian GNU/Linux и дополненный фирменными технологиями, упрощающими его использование для неквалифицированных граждан. Впрочем, и простых пользователей может заинтересовать простой, надёжный и не требующий знакомства с конфигами Линукс.
Дистрибутив отличается фирменной технологией Click-and-Run. Вы подписываетесь на эту услугу, подключаетесь к Интернету, и если вам нужна какая-нибудь программа - жмёте в специальном меню "Установить". Программа скачивается их репозитория Linspire, распаковывается и ставится. Сразу можно начинать с ней работать. Так ставятся не только GPL-приложения, но и коммерческие, при условии, что ваш карман настолько широк для их оплаты.

Знакомство с Freespire
На момент написания статьи, имеется Freespire Beta2, которая и была установлена в эмуляторе QEMU (с ускоряющим модулем kqemu). При запуске диска спросили - хочу ли я ставить дистрибутив или просто посмотреть Live-версию.
Посмотрел на Live. Да, это доведённое до ума КДЕ с простым и понятным меню, где нет ничего лишнего и ничего, что могло бы ввести в замешательство новичка.



Русского языка пока нет, но я уверен, что это временное явление. Всё-таки бета-релиз. Остальное работает весьма быстро и без неожиданностей: OpenOffice, Firefox, и другие популярные ОпенСорс программы. Названий их в меню нет - только функциональное назначение. В общем, для новичков - правильный подход.

Установка Freespire
Итак, в QEMU создан образ жёсткого диска на 4Гб, подключён ISO-образ с Freespire 1.0beta и при загрузке выбрана "Установка на жёсткий диск". Установка проходила так:

1. Меня поприветствовали.
2. Попросили выбрать раскладку (было около двух десятков, русской не нашлось - выбрал английскую).
3. Спросили, как я хочу ставить систему - с автоматической разбивкой или ручной - выбрал автоматику.
4. Спросили про название компьютера (оно тут же отдублировалось в имя пользователя - удобно :-)), пароль.
5. Попросили подтвердить, правильно ли я всё написал и перепроверить всё на всякий случай. Ответил "Далее".
6. Спросили, в здравом ли уме и твёрдой памяти нахожусь - понимаю ли, что хочу поставить Линукс? Ответил утвердительно, нажав на "Я уверен".


Всё. В эмуляторе установка заняла не больше 20 минут, весь процесс от вставки диска в привод до получения готовой системы отнял ровно полчаса. На местном форуме были некоторые прения по поводу того, откуда у Lin/Freespire такая скорость - дескать, он просто копирует пакеты, не разархивируя их. Таким образом, получается заметная экономия времени - ставится стандартная система, которую затем можно догнать нужными программами, воспользовавшись либо apt-get, либо графической утилитой, либо (за деньги) фирменным Click-and-Run.

Впечатление
Пока, для первой бета-версии, неплохо, очень неплохо. Сыровато, не все локали есть (вот русского не нашлось), репозиториев в Сети не много. Но в целом впечатление очень приятное: хороший дистрибутив для начинающих. Всё просто, меню очень продумано, программы перечислены по функционалу (смотреть документы, броузер, почта и проч.). Всё на своём месте.
Пока что дистрибутив проходит обкатку и тестируется, но через некоторое время он может составить конкуренцию другим дистрибутивам "для начинающих".

Ссылки:
http://www.desktoplinux.com/articles/AT7106426180.html
http://www.linux.com/article.pl?sid=06/07/26/1836241
http://www.desktoplinux.com/news/NS8253027915.html
http://www.freesoftwaremagazine.com/articles/interview_kevin_carmody_freespire
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

02 Август 2006

QEMU в Linux: тонкости и настройки

Итак, эмулятор QEMU мы поставили, запустить Windows смогли, но это ещё не всё. Есть несколько тонкостей, о которых в Сети пишут мало или совсем ничего - это, вроде как, очевидно.
Дальнейшее изложение предполагает, что вы дали себе за труд хотя бы пробежать глазами man qemu (на русском - здесь), который открывает много интересного пользователю.

Тонкость №1. Как получить доступ к файлам внутри "жёсткого диска" QEMU?
Поставили Windows в эмуляторе, программы и теперь хочется иметь доступ к его файлам. Это можно. Создаём точку монтирования, даём ей нужные права и прописываем в конфиге /etc/fstab:

/opt/qemu/images/win2k.img /mnt/windows vfat rw,user,loop,noauto,offset=32256 0 0
Точки монтирования и имя образа, естественно, в вашем случае замените на те, которые существуют. Теперь можно монтировать и отмонтировать Windows диск как и любой другой.

Примечание: будьте внимательны при монтировании диска Windows при запущенном эмуляторе с Windows. Этого вообще лучше не делать, а если и делать, то монтировать диск в режиме "только-чтение". И не удивляйтесь, что некоторые свежие файлы (только что созданные Windows в эмуляторе) не будут видны даже на FAT. Партизанская система, как говорит мой хороший друг.

Тонкость №2. Графическая оболочка в Windows тормозит. Как её ускорить?
Для этого тыкаем правой кнопкой мыши по рабочему столу, заходим в Свойства экрана, поставим 16-битный цвет, тыкаем в кнопку Дополнительно, заходим в расширенные настройки и убираем все "ускоряющие" свистелки Windows: выводим бегунок "аппаратное ускорение" в крайнее левое положение и отключаем "Совмещённые записи". Linux управляет оборудованием на порядок лучше, так что умничать Windows теперь не обязательно.

И естественно, выключаем все спецэффекты: тени, затухания и прочую белиберду. Ставим классический интерфейс и по CTRL+ALT+F переключаемся в полноэкранный режим. После данных манипуляций Windows должен отзываться радикально шустрее.

Тонкость №3. Сколько ресурсов надо операционной системе Windows для приемлемой работы?
1. Обязательно работать с ускоряющим модулем kqemu - ради него, собственно, всё и затевалось (без него можно было просто поставить QEMU из дистрибутива по apt-get qemu).
2. Памяти Windows много не давать - всё равно не умеет ей пользоваться, лезет в своппинг (что под эмулятором очень медленно).
3. Объём "жёсткого диска" - вот тут чем больше, тем лучше. Разрастается Windows быстро - у меня со всеми необходимыми программами занимает 8Гб и уже тесно - приходится подключать новые "диски". Диски лучше делать в FAT - меньше проблем с чтением/записью.
4. Через bridge в сети лучше не пускать - нахватается вирусов. Правда, хост-системе (Debian, например) на это плевать, но всё-таки неприятно.
Как ни странно, но Windows XP работает в эмуляторе заметно стабильнее, чем на реальной аппаратуре. Программы вылетают только от недостатка памяти/своппинга. Так что "форточки" работают стабильно только в окне эмулятора :-)

Тонкость №4. А сколько ресурсов надо давать другим системам?
Здесь всё куда предсказуемее. Linux и FreeBSD памяти - чем больше, тем лучше. Особенно это касается LiveCD - быстрее работать будут и отзываться живее. Если хотите ставить на жёсткий диск - 3Гб максимум, 4Гб - если очень щедры. Больше не надо.

Тонкость №5. Запускаю BeOS/Haiku, Reactos, Syllable с ускоряющим kqemu, а оно виснет. Что делать?
Соответственно, не использовать kqemu :-) Делается это добавлением в строку параметров -no-kqemu
Запускается немного медленнее (особенно тормоза заметны на графической оболочке), но идёт. Лично запускал и Haiku, и ReactOS, и Syllable - идёт отлично, но без ускорения.

Тонкость №6. Хочу поставить операционную систему Windows в QEMU - какая пойдёт быстрее?
Запускал Windows с 95 по XP включительно. Опыт:
1. Windows 95 идёт быстрее всех (не удивительно - там тормозить просто нечему), но из-за низкого IQ грузит процессор на 100%. Отличилось тем, что выпадало в синий экран при простом запуске Photoshop 4.
2. Windows 98 тормозит не детским образом. Те же проблемы с IQ.
3. Windows ME я не ставил.
4. Windows 2000 идёт нормально, но в некоторых версиях эмулятора есть проблемы с его установкой. По причине IQ менее 40 процессор под завязку грузит только когда что-то делает, в простое - простаивает.
5. Windows XP - тоже самое, что и 2000, если выключить большинство его рюшечек.
Всё перечисленное выше NTёвое поделие работает с kqemu без проблем.
6. Windows Vista - пробовал по настоятельными просьбам трудящихся... Но оно не пошло. Сказало, что "ошибка 0хс0000225 Да у тебя, отец, ACPI нет? Как же ты живёшь? Иди ты к ... вендору за новым компом".

Тонкость №7. Хочу эмулировать дискетку/жёсткий диск - сколько их можно всего подсунуть?
Два флоппи-диска и четыре IDEшных харда. В man qemu это подробненько растолковано (а здесь ещё и на русском), причём прямо на первой странице. Но на всякий случай приведу цитату:
использование: qemu [опции] [образ_диска] 
disk_image
- это "сырой" образ жёсткого диска, соответствующий нулевому жёсткому IDE-диску.

Общие параметры:

`-fda файл'
`-fdb файл'

Здесь файл - образ дискеты для дисковода 0/1 соответственно. Вы можете использовать дискету системы-хозяина, указав `/dev/fd0' в качестве файла.

`-hda файл'
`-hdb файл'
`-hdc файл'
`-hdd файл'

Здесь файл - образ жёсткого диска 0, 1, 2 или 3 соответственно.

`-cdrom файл'

Здесь file - образ CD-ROM (вы не можете одновременно использовать `-hdc' и `-cdrom'). Вы можете использовать CD-ROM системы-хозяина, указав `/dev/cdrom' в качестве файла.

`-boot [a|c|d]'

Загрузка с дискеты (a), жёсткого диска (c) или CD-ROM (d). По умолчанию выполняется загрузка с жёсткого диска.


Тонкость №8. Указал в QEMU вместо сидюка ISO-образ, а надо его сменить на другой исошник. Как?
Подсвечиваем (выделяем мышкой) окно эмулятора и ударом в волшебный бубен CTRL+ALT+2 - попадаем в служебный терминал эмулятора. Дальше пишем: info block - получаем список всего, чего прикручено к эмулятору в качестве "устройств ввода-вывода". Вспоминаем, что мы в эмуляторе компьютера - пишем eject. Так наш исошник освобождается эмулятором. Далее, переходим в консольку xterm (ну, в нормальный линуксовый терминал) и как обычно монтируем исошник:
#mount -t iso9660 my.iso /mnt/loop -o loop
При этом (если ничего больше на петлю не прикручено) наш исошник закрепится за /dev/loop0 (не забываем, что у настоящих программистов отсчёт идёт с нуля, а не с единицы). Возвращаемся в служебный терминал эмулятора и пишем там: change cdrom /dev/loop0

Переключаемся в эмулятор ударом в бубен CTRL+ALT+1 - всё, теперь работаем дальше.
Добавление: как выяснилось, можно просто в терминале QEMU указывать имя и путь к ISO-образу и сразу его монтировать командой:
change cdrom /path/to/image.iso
и образ сразу становится доступным для работы.

Внимание!
Прежде, чем вы с радостным воплем побежите дальше, на вашем пути будут небольшие грабельки. Именно: если при уже примонтированном iso-шнике вы сделаете change cdrom, ваша петля прикипит - то есть ядро будет продолжать считать, что loop0 в работе и не даст его размонтировать даже после закрытия эмулятора. Очень неприятно, учитывая, что потом надо будет писать другое устройство - /dev/loop1 и далее. Их всего 8. Чтобы отодрать "прикипевшую" таким образом петлю, пишем от рута:
# losetup -d /dev/loop0
Петля с радостным звоном отлетает и на неё можно снова монтировать. Спасибо Шурику с форума

Тонкость №9. Послать сочетание клавиш в эмулируемую ОС.
Вариант: вы захотели в эмулируемом линуксе переключиться на консоль из графического режима, и по привычке нажимаете CTRL+ALT+F1 и... вываливаетесь в консоль основной системы. Чтобы этого не случалось, можно послать комбинацию клавиш, которую нажмёт за вас эмулятор. Для переключения виртуальных консолей в гостевой Linux-системе следует переключиться в монитор и использовать команды вида:

sendkey ctrl-alt-f2

Регистр важен: например, "sendkey ctrl-alt-delete" работает, а вот "sendkey CTRL-ALT-DELETE" не будет работать. Хотя в документации говорят, что должно работать оба варианта.
читать далее...

а если копируете статью - поставьте ссылку на оригинал!

SquashFS, или Зачем в Linux архиваторы?

Как скажет любая поисковая система, SquashFS - это сжатая файловая система, разработанная для удобного и компактного хранения файлов с быстрым доступом к ним из Linux. Разработанная прежде всего для создателей LiveCD (Knoppix-based LiveCD), может пригодиться и простому линуксоиду благодаря высокой степени сжатия, скорости доступа и удобству работы. В Linux работать со SquashFS очень просто и легко.


Архиватор vs SquashFS

Всем когда-нибудь требовалось архивировать свои файлы, и для этого уже давно разработаны утилиты типа gzip, bzip2, rar, arj... Одни из них быстрее, другие обладают высокой степенью сжатия, некоторые архиваторы избирательны (заточены на сжатие текста или графики), другие претендуют на универсальность. Так зачем нужены сжатые файловые системы?


Архиваторы в Linux

Так или иначе, архиваторы создают из предъявленных ему данных сжатый файл. Прекрасно, данные заархивированы и положены на хранение. Теперь нам захотелось просмотреть архив. Есть много файловых менеджеров, которые умеют входить внутрь архивов и дают возможность работать со сжатыми файлами, как с обычными. Однако чтобы перечитать архив, требуется время (попробуйте зайти внутрь архива ядра linux.*.*.tar.gz - это будет не быстро). А теперь нам надо из архива вытащить один или несколько файлов - и вот архиватору приходится распаковывать весь архив и лишь после этого получаем нужный файл.

Теперь нужно добавить в архив файлы. Вот тут без перепаковки всего архива не обойтись. Долго, муторно, неудобно. К тому же некоторые архиваторы, особенно rar, "забывают" права доступа к файлам, что в Linux совсем ни в какие рамки не лезет. Или нам хочется создать свой загрузочный диск с подборкой нужного софта. Да, можно скачать чужие LiveCD, а можно создать свой собственный. Если приблизительно подсчитать, сколько софта на том же Knoppix, можно ужаснуться: ну и как такой объём впихнул Клаус Кноппер в маленький диск?


SquashFS

Очень просто. Специальной утилитой mksquashfs создаётся файл со сжатой файловой системой SquashFS. Далее, при необходимости, этот файл прикручивается (монтируется) на петлевое устройство (loop) и в точке монтирования видим наши файлы. Быстро и удобно, что особенно ценно при разборе старых архивов.

Степень сжатия, как правило, выше, чем у tar.gz при ощутимо более высокой скорости сжатия и несравненном удобстве пользования. Это уже оценили создатели LiveCD и ушлые пользователи. Если требуется извлечь файл - без проблем, просто копируем его куда нам нужно. Скорость чуть ниже, чем при обычном копировании, больше нагрузка на процессор (всё-таки декомпрессия архива), но по сравнению с архиваторами - небо и земля. Нужно добавить файлы? Не вопрос: указываем mksquashfs целью старый архив и происходит дописывание данных в конец, безо всякой перепаковки. Просто и удобно. Единственное, чего нельзя - это переписать файлы "на лету": файловая система SquashFS только для чтения. Приходится дописывать в архив файлы.

Достоинства и недостатки
Конечно, при всех достоинствах SquashFS обладает и недостатками. Архивы нужно каждый раз примонтировать и отмонтировать, обновление - дописыванием в конец или перепаковкой; кроме того, для использования нужен патч на ядро, который есть не для всех версий ядер. Компрессия больших файлов (несколько гигабайт) отнимает большое количество памяти. Зато для маленьких файлов это ценная находка: выкачанный из интернета сайт легко и быстро сжимается в один архив, а потом его можно легко читать броузером, указав точку монтирования.


Установка SquashFS в Linux
Если вы заинтересовались возможностями SquashFS и хотите его установить, то вам потребуются исходники ядра, установленный gcc, утилита patch и скачанный с сайта http://squashfs.sourceforge.net/ архив с патчем на ядро и исходниками mksquashfs. Поддерживаются последние ядра 2.4.х и ветка 2.6 начиная с 2.6.8 Можно включить поддержку SquashFS в ядро монолитно или модулем - накладываем патч на ядро:
#patch -p1 -i squashfs-patch
и вызываем make menuconfig. Теперь в разделе "File systems", "Miscellaneous file systems", должна появиться строчка "Squashed filesystem", которую можно поставить как модуль или вкомпилировать в ядро. Надеюсь, как компилировать ядро, вы знаете, а если что-то забылось - освежить знания можно тут.
Так же следует включить поддержку "Loopback device support" в секции "Device drivers"section, "Block devices" подсекции. Для более подробной справки идём сюда. Собрав ядро и перезагрузившись, компилируем mksquashfs:
# cd /usr/src/squashfs/squashfs-tools
# make
# cp mksquashfs /usr/sbin
Для этого потребуются пакеты zlib*, которые потребуется установить. Скомпилированные однажды утилиты mksquashfs и прочие можно переносить с компьютера на компьютер - и они будут работать.
Чтобы создать архив из файлов в директории /temp потребуется ввести:
mksquashfs temp temp.sq

Расширение добавляется для удобства - оно может быть любым или вообще отсутствовать. Лишь бы вам было понятно, что это архив. Увидеть и работать с файлами можно, прикрутив на петлевое устройство архив штатными средствами любой *никс системы:
mount -t squashfs temp.sq /mnt/squash -o loop
Далее работаем с файлами, как обычно. После использования не забываем отмонтировать.

Что ещё почитать по Squashfs
http://www.linux.org/docs/ldp/howto/SquashFS-HOWTO/gettingready.html
http://tldp.org/HOWTO/SquashFS-HOWTO/mksqoverview.html
http://ldp.linux.by/HOWTO/SquashFS-HOWTO/whatis.html

читать далее...

а если копируете статью - поставьте ссылку на оригинал!

Поиск по сайту

Архивы блога

Новостная лента


Читать новости блога удобнее, подписавшись на
-ленту.
краткая лента новостей.
Блокнот интересных ссылок в Twitter
Получать на E-mail Записки дебианщика rss2email.ru

Последние новости

Все записки дебианщика

Скачать локальную версию блога "Записки дебианщика" для offline-просмотра можно здесь. Архив 7z занимает ~120Мб, в распакованном виде ~2Гб.

Постоянные читатели

Экипаж

Автор
My Photo
Михаил Конник
Инженер-физик, занимаюсь оптикой и цифровой обработкой изображений. Профиль
Главный редактор
Моя фотография
Programmaster, в полный рост

Кнопки