Игорь Тетюев
2 ноября 2002
Оригинал: linux.perm.ru
Этот FAQ является дальнейшим развитием FAQ по Debian GNU/Linux, созданного Виктором Вислобоковым В данный FAQ не вошли вопросы, связанные с предыдущей стабильной версией Debian GNU/Linux, 2.2 (Potato) по причине того, что они рассмотрены в отдельном документе.
В настоящее время автором является Игорь Тетюев, все вопросы, замечания и дополнения как в этот FAQ так и в FAQ по предыдущим версиям Debian должны направлятся ему.
Также автора можно встретить на #debian-russian
Самую свежую версию этого FAQ можно найти здесь, а также на сайте Пермской Группы Пользователей Linux.
Это документ доступен в следующих форматах:
Этот документ распостраняется в соответствии с лицензией GNU Free Documentation License (GFDL).
Информация с сайта Debian:
Debian -- это свободная операционная система (ОС) и набор прикладных программ для вашего компьютера. В Debian используется ядро Linux, но большинство утилит ОС разработано в рамках проекта GNU; поэтому полное название проекта -- Debian GNU/Linux.
Как уже было отмечено выше, Debian -- это не только операционная система. В его состав входит более 8710 пакетов заранее скомпилированного программного обеспечения, которые легко могут быть установлены.
Debian поддерживает рекордное количество аппаратных платформ -- 11.
Также существуют версии Debian для других ядер: GNU Hurd, NetBSD, FreeBSD и даже win32/Cygnus.
Более подробную информацию (в том числе и на русском языке) можно найти на сайте Debian .
В данном FAQ рассматривается исключительно Debian GNU/Linux 3.0 Woody. Если есть необходимость в создании FAQ по Debian Hurd, или другим - они будут созданы.
Форматом пакетов и программой которая обслуживает данные пакеты, процедурой инсталляции. Кроме того есть отличия и в структуре каталогов, и в месте расположения конфигурационных файлов. Кроме того в Debian 'е сделана попытка подогнать все под UNIX'овый стандарт System V. Можно также заметить, что Debian является рекордсменом по количеству пакетов, которые идут в составе дистрибутива.
Самое мощные отличия - это конечно система управления пакетами и сами пакеты.
Система управления apt, используемая в Debian , является для многих дистрибутивов недостижимым идеалом. apt позволяет устанавливать, удалять и обновлять пакеты с полным соблюдением зависимостей, прозрачным образом объединяя получение пакетов из разных источников (http, ftp, CD, локальное зеркало).
Сами пакеты также являются достаточно гибким и мощным средством. В них включается контрольная информация зависимости одних пакетов от других, комментарии к пакету, информация о сервисе, который предоставляет пакет. Кроме того в пакете имеются сценарии, что позволяют произвести настройку пакета сразу после установки и кроме того произвести обновление старой версии пакета на новую при сохранении конфигурационных файлов.
Не лишне также отметить, что Debian на данный момент является рекордсменом по количеству пакетов, идущих в дистрибутиве.
Также вы можете создать .deb пакет из уже установленного и дополнительно настроенного пакета.
Несколькими способами:
В конце июля 2002 года был официально выпущен Debian 3.0r0, который имеет название Woody. Хотя версия считается стабильной, дальнейшая работа по выявлению и устранению ошибок продолжается.
Также идет работа над следующей версией с названием Sarge. В данный момент эта версия пока еще в начальном этапе разработки.
Начиная с версии 3.0, Debian перешел от поставки всех локалей сразу к генерации локалей по требованию. По умолчанию есть только одна локаль, C. Для установки остальных локалей нужен пакет locales.
Локали можно добавлять двумя способами:
ru_RU.KOI8-R KOI8-R
и исполнив команду locale-gen.
В предыдущих версиях Debian этот пункт был весьма обширным. Теперь достаточно установить пакет console-cyrillic и выбрать в нем желаемые кодировку, шрифт, переключатель и локаль по умолчанию. Желательно выполнить его установку и настройку после пакета locales.
Для включения поддержки русского языка надо в программе tasksel выбрать Russian Environment и Cyrillic Environment.
К сожалению, из за ошибки в инсталляторе Debian 3.0r0 не изменятеся файл /etc/locale.gen, что приводит к осутствию русских локалей. Для исправления этой ошибки вы должны по окончании установки выполнить две команды:
dpkg-reconfigure locales
dpkg-reconfigure console-cyrillic
и внести те же изменения что и в пунктах 3.1 и 3.2.
Для включения поддержки русского в bash надо отредактировать файл ~/.bashrc и добавить в него строки:
export LANG=ru_RU.KOI8-R export LC_ALL=ru_RU.KOI8-R
Желательно не включать пользователю root русский язык по нескольким причинам:
В случае, если вы установили Russian Environment и Cyrillic Environment, шрифты должны быть уже настроены. Остается только настроить клавиатуру. Вы должны привести1 настройки клавиатуры к определенному виду в секции InputDevice файла XF86Config-4. Вот как выглядит эта секция у меня:
Section "InputDevice" Identifier "Acer" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "ru" Option "XkbOptions" "grp:toggle" EndSection
В данном примере используется стандартная раскладка, переключение по Right Alt.
Воспользуйтесь командой iconv(1):
iconv входнойФайл -f изКодировки -t вКодировку -o выходнойФайл
Например:
iconv test.txt -f koi8-r -t windows-1251 -o test.win
В случае, если у вас уже настроена русская локаль, при перекодировании из текущей кодировки в другую параметр со своей кодировкой можно опустить, например:
iconv test.txt -t windows-1251 -o test.win
Так как список кодировок поддерживаемых iconv огромен, вот названия кодировок которые наиболее вероятно могут понадобится русскоязычному пользователю: koi8-r windows-1251 866
Сначала нужно включить работу с восемью битами. Для этого нажмите F9 затем выберите Option, далее Display bits и наконец Full 8 bit. Там же проставьте Full 8 bit input. Не забудьте потом сохранить эту конфигурацию.
Дело опять таки в русификации. Известный мне способ это победить таков:
CHARSET=koi8-r
Самое первое, что надлежит сделать - это настроить локаль и Xkb. Без этого настройка клавиш mc в xterm представляется сущим мучением.
После этих действий, у вас в mc заработают все клавиши. Однако это далеко не все. Кроме этого, в mc у вас не работают сочетания клавиш Alt+клавиша. Так что необходим шаг номер два:
Правите файл /usr/X11R6/lib/X11/app-defaults/XTerm. В конец этого файла нужно добавить кусок:
*VT100*translations: #override \ aReturn: string(0x1b) string(0x0d) \n\ aTab: string(0x1b) string(0x09) \n\ aspace: string(0x1b) string(" ") \n\ aa: string(0x1b) string("a") \n\ ab: string(0x1b) string("b") \n\ ac: string(0x1b) string("c") \n\ ad: string(0x1b) string("d") \n\ ae: string(0x1b) string("e") \n\ af: string(0x1b) string("f") \n\ ag: string(0x1b) string("g") \n\ ah: string(0x1b) string("h") \n\ ai: string(0x1b) string("i") \n\ aj: string(0x1b) string("j") \n\ ak: string(0x1b) string("k") \n\ al: string(0x1b) string("l") \n\ am: string(0x1b) string("m") \n\ an: string(0x1b) string("n") \n\ ao: string(0x1b) string("o") \n\ ap: string(0x1b) string("p") \n\ aq: string(0x1b) string("q") \n\ ar: string(0x1b) string("r") \n\ as: string(0x1b) string("s") \n\ at: string(0x1b) string("t") \n\ au: string(0x1b) string("u") \n\ av: string(0x1b) string("v") \n\ aw: string(0x1b) string("w") \n\ ax: string(0x1b) string("x") \n\ ay: string(0x1b) string("y") \n\ az: string(0x1b) string("z")
Если вы хотите грузить операционную систему с винта отличного от Master на первом IDE порту, то вам необходимо определить так называемый chain загрузчик для этого винта. В lilo версии 20 и выше этот загрузчик встроен прямо в код lilo. Вот пример файла /etc/lilo.conf, в котором прописана загрузка Linux с Master винта, а DOS со Slave.
# устройство откуда берется LILO boot=/dev/hda # раздел, где находится главная(корневая) файловай система root=/dev/hda1 # спецификация compact работает не везде compact # определяет нормальный текстовый режим 80x25 # можно задать слово ask, чтобы при загрузке спрашивало # номер видеорежима. Можно просто подставить цифру # видеорежима vga=normal # при prompt выдается приглашение boot: и ожидается # ввод метки для выбора операционной системы на # загрузку или Enter для загрузки первой по порядку. # Можно определить delay , где n десятые # секунды, которые LILO будет ждать, после чего произведет # загрузку первой по порядку операционной системы. # Во время ожидания можно нажать Ctrl и перейти в режим # prompt prompt # ------------- секция загрузки Linux ------------- # образ ядра Linux image=/vmlinuz # метка, вводимая на приглашение boot: label=Linux read-only # -------------- секция загрузки DOS -------------- # DOS раздел other=/dev/hdb1 # инициализация chain загрузчик map-drive = 0x80 to = 0x81 map-drive = 0x81 to = 0x80 # метка, вводимая на приглашение boot: label=dos
Действительно вполне можно загружать Linux из DOS'а, хотя такой метод и не пользуется популярностью, так как из-за ненадежности файловой системы FAT у DOS'а и подверженности ее влиянию вирусов вы можете испортить файлы, необходимые для загрузки.
Для загрузки из DOS'а вам понадобятся только два файла:
rdev vmlinuz /dev/hda1
чтобы ядро после загрузки знало, где ваша корневая (главная) файловая система (/), затем
rdev -R vmlinuz 1
что установит флаг первоначального монтирования файловой системы как read-only, что необходимо программе fsck для проверки файловой системы, затем можно (но не обязательно)
rdev -v vmlinuz
для установки текстового видеорежима, отличного от стандартного 80x25, где n - это номер режима.
После выполнения данных действий положите файл vmlinuz вместе с loadlin.exe куда-нибудь на диск DOS. Для загрузки, в DOS'е достаточно переместится в тот каталог, где находятся эти два файла и ввести команду:
loadlin vmlinuz
Однако можно обойтись и без обработки ядра командой rdev. Можно просто указать loadlin, в каком месте находится главная файловая система. Например:
loadlin vmlinuz root=/dev/hda1
Вам нужно воспользоваться механизмом альтернатив. Введите команду:
update-alternatives -display x-window-manager
и вы получите список установленных в системе менеджеров окон. Введите команду:
update-alternatives -config x-window-manager
и вам выдаст диалог, в котором вы сможете выбрать нужный менеджер окон, который будет и запускаться при старте X Window.
Для начала, если ядро у вас собрано без поддержки протоколов PPP и SLIP вам нужно собрать его заново с поддержкой этих протоколов. Как собирать ядро описано в этом же FAQ. См. список вопросов.
Еще недавно я бы сказал, что готовой программы нет, но теперь готовая программа есть прямо в дистрибутиве Debian . Она называется pppconfig(8). Все что вам нужно сделать - это честно и правдиво ответить на все вопросы, которые задаст вам эта программа.
Соединение осуществляется командой pon, а завершение соединения с провайдером осуществляется вызовом команды poff, которая убивает демон, отвечающий за связь и заставляет его положить ``трубку'' модема.
Как вы уже поняли - это решение далеко не самое красивое. Например, можно воспользоваться diald - о чем ниже. Однако это очень простое решение, Установление соединения при помощи демона diald
Прежде всего хочу заметить, что данные здесь конфигурационные файлы могут для вас не подойти, хотя у меня они работают. Все описанное ниже дает скорее понятие о том как все это настраивать, чем конкретное готовое решение. В любом случае очень рекомендую тщательно изучить страницы руководства man по pppd(8) и diald, а также PPP-HOWTO.
Пакет diald входит в состав дистрибутива Debian , да и по моему в другие дистрибутивы тоже. Ну а если у вас все-таки его не оказалось, вы всегда можете выкачать его из Internet.
После того как вы установите пакет, например, командой
dpkg -i diald-0.16.4-1.deb
или
apt-get install diald
В каталоге /etc/diald у вас появятся его конфигурационные файлы. Вам понадбится править только два из них. В файле с именем diald.options хранится конфигурация diald, а в файле с именем connect находится сценарий, который устанавливает модемное соединение, набирая номер и выполняя функции идентификации пользователя.
Начнем с файла diald.options. Ниже дан в качестве примера мой:
mode ppp connect "chat -f /etc/ppp/pppscript" device /dev/ttyS1 speed 19200 modem lock crtscts local 192.168.0.1 remote 192.168.0.2 netmask 255.255.255.0 impulse 120,60 dynamic defaultroute pppd-options noipdefault name "victor_v" asyncmap 0 include /etc/diald/standard.filter
Данная конфигурация расчитана на использование diald с протоколом PPP с аутентификацией пользователя по протоколу PAP. Адреса local и remote даны ``от балды''. Так как далее используется ключ dynamic, а в параметре ppp-options задано значение noipdefault, то при установлении связи адреса удаленной машины-сервера и адреса вашей машины будут изменены на те, которые сообщит удаленная машина.
Параметр device установлен в значение /dev/ttyS1, что соотвествует второму последовательному порту COM2. Вы же можете изменить это значение, если ваш модем использует другой порт. (Для COM1 будет /dev/ttyS0 и т.п.). Параметр speed установлен в значение 19200 и означает портовую скорость. Скорость вы также должны задать ориентируясь на модем, которым вы пользуетесь. Возможные значения: 2400, 9600, 19200, 34800, 57600 и т.д.
Параметр impulse установлен в значение 120,60. Это говорит о том, что diald будет проверять простаивает ли линия через каждые 2 минуты (120 сек) и будет разрывать соединение (класть ``трубку'' модема), если в течении 1 минуты (60 сек) линия будет продолжать простаивать. Простой линии выражается в отсутствии приема или передачи пакетов через модем. Таким образом вы экономите деньги на повременной оплате за телефон и за Internet. Излишне говорить, что вы можете настроить эти параметры под себя.
Особо нужно отметить параметр connect. В данном примере он установлен в значение chat -f /etc/ppp/pppscript. Ниже приводится содержимое файла pppscript
ABORT ERROR ABORT BUSY ABORT "NO CARRIER" ABORT "NO DIALTONE" REPORT "CARRIER" REPORT "CONNECT" TIMEOUT 90 "" AT&F1 "OK" ATDT900020 "CONNECT"
Мне было удобнее пользоваться таким файлом, чем поставляемым с пакетом diald файлом connect. Это потому, что мой провайдер использует аутентификацию пользователей по протоколу PAP. Если же сервер у вашего провайдера настроен на ввод имени и пароля по приглашениям Login: и Password:, то вам лучше воспользоваться файлом connect. Тогда строчка с параметром connect в файле diald.options будет выглядеть так:
connect "/etc/diald/connect"
Файл connect хорошо задокументирован внутри и проблем с его использованием быть не должно. Вам нужно будет только поменять параметры MODEM_INIT на строку инициализации вашего модема, PHONE_NUMBER на номер телефона вашего провайдера, USER_CHAT_SEQ на строку-приглашение, которую вы получаете для ввода имени, USER_NAME на ваше регистрационное имя у провайдера, PASSWD_CHAT_SEQ на строку-приглашение, которую вы получаете для ввода пароля, PASSWORD на ваш пароль у провайдера и наконец PROMPT на строку, которую вы получаете в случае успешного ввода имени и пароля.
Возможно вам придется поэкспериментировать пока у вас все получится. Для этой цели могу рекомендовать терминальную программу minicom, где вы всегда сможете установить соединение в ручную и посмотреть все строки приглашения.
Следующий этап - это файл /etc/ppp/options. Ниже дан в качестве примера мой:
lock defaultroute crtscts noipdefault modem asyncmap 0 debug 19200 /dev/ttyS1 name "victor_v"
Здесь вроде все должно быть понятно, тем более, что часть параметров перекрывается конфигурационным файлом для diald. Замечу только, что строка name ``victor_v'' нужна только в случае использования протокола PAP.
Для тех, у кого провайдер использует как и у меня аутентификацию пользователей по протоколу PAP будет нужен еще файл /etc/ppp/pap-secrets. Вот пример моего:
# Secrets for authentication using PAP... # client server secret IP addresses "victor_v" * "password"
Вместо password должен стоять ваш пароль, а вместо victor_v ваше регистрационное имя у провайдера. Кроме того, оно же прописывается как вы можете заметить и в файл /etc/ppp/options и в файл /etc/diald/diald.options. Естественно, что для тех у кого провайдер не поддерживает PAP, эти параметры в данных файлах не нужны.
Далее вам необходимо настроить свою систему для использования DNS провайдера. У вас должен быть адрес DNS-сервера провайдера. Его нужно поместить в файл /etc/resolv.conf. Вот пример моего файла:
nameserver 194.84.131.242 search permonline.ru
где параметр nameserver задает адрес DNS-сервера провайдера, а параметр search имя домена провайдера.
Ну вот теперь кажется все. После окончания всех настроек перезапустите diald командой
/etc/init.d/diald restart
Теперь, когда вы в Netscape или в Lynx или в mc обратитесь на адрес, который неизвестен вашей системе, diald попытается установить соединение с вашим провайдером и если это получится, то вы попадете туда куда обратились.
Если у вас не получилось. Что же мне жаль. Причин может быть множество. Здесь я могу только посоветовать вам подробно изучить документацию.
Игорь Тетюев
2 ноября 2002
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Это направления работы над Debian .
Раньше была ротация кодовых имен: например, Woody сперва был unstable, затем testing и теперь stable. Теперь эта ротация имеет место только в стабильном и тестируемом дистрибутивах. Принято решение нестабильный дистрибутив всегда называть Sid.
Debian поддерживает предыдущий и текущий стабильный дистрибутивы. Более старые дистрибутивы попадают в архив. Над ними не осуществляется работа по исправлению ошибок.
Это часть архива Debian , не входящая в официальный дистрибутив. В experimental находятся кандидаты на вхождение в Sid, которые не проходят по критериям качества или имеют серьезные конфликты зависимостей с другими пакетами.
Debian это проект по созданию дистрибутива GNU/Linux, состоящего из свободного программного обеспечения. Требования к лицензии, по которым тот или иной продукт может считаться свободным, описаны в документе Debian Free Software Guides (DFSG).
Программное обеспечение, которое не является свободным, не может входить в официальную поставку Debian , и не является частью дистрибутива.
Тем не менее, проект Debian с целью избежания конфликта интересов с пользователями (которые не всегда ценят свою свободу), предоставляет свои ресурсы: файл-серверы, зеркала, система отслеживания ошибок, списки рассылки некоторым пакетам с несвободным ПО. Данные пакеты размещаются в части дистрибутива, имеющей название non-free. При сборке дистрибутива на CD принято non-free выделять в отдельный диск или не включать в дистрибутив вовсе.
Также существет свободное программное обеспечение, которое требует для своей работы несвободные библиотеки или программы. Это программное обеспечение считается частью дистрибутива, и размещается в разделе contrib.
Раньше архив дистрибутива представлял из себя дерево каталогов, где пакеты были отсортированы по назначанию. Затем было принято решение для нестабильного и тестируемого дистрибутива использовать структуру типа pool/main/буква или libбуква/пакет.deb . Эта система оказалась очень удобной и гибкой. Поэтому теперь Debian будет иметь структуру этого класса для всех дистрибутивов.
Существуют два способа указания пути к архиву пакетов Debian .
В случае если вам нужно указать путь к архиву пакетов Debian , построенному в виде стандартной структуры (например, официальное зеркало), надо в файл /etc/apt/sources.list добавить строку вида:
deb protocol://host branch sections
deb-src protocol://host branch sections
где:
deb http://debian.psu.ru stable main contrib non-free
deb-src http://debian.psu.ru stable main contrib non-free
Если же вам нужно указать путь к каталогу с пакетами (например программа, не являющаяся частью Debian ), то следует внести в файл /etc/apt/sources.list следующие строки:
deb protocol://host/path path-to-archive/ deb-src protocol://host/path path-to-archive/
где:
deb ftp://people.debian.org/~schoepf/kde3/woody ./
deb-src ftp://people.debian.org/~schoepf/kde3/woody ./
Строка deb-src не обязательна, и нужна только в случае, если вы собираетесь самостоятельно перекомпилировать какой либо пакет.
Более подробную информацию вы можете найти в документации на apt и в списках рассылки Debian , посвященных созданию ``вспомогательных'' депозитариев Debian .
Вы наверное забыли после этого выполнить команду apt-get update. Если эта команда выдает сообщения об ошибках, читайте документацию на apt(8), и проверяйте.
Если компакт диск создан стандартными средствами и имеет стандартную структуру каталогов Debian (например, любой из дисков созданных debian-cd или jigdo), достаточно ввести команду
apt-cdrom add
и ``познакомить'' apt с новым диском.
Можно скачать ISO9660 образы дисков на любом из зеркал, которое вы найдете на сайте Debian, но готовы ли вы к тому, что после скачивания образа в 650 мегабайт, его md5 сумма будет неправильной? :)
Существуют два более приятных способа заполучить образы дисков Debian :
Если же вы решили скачать образы Debian , настоятельно рекомендую воспользоваться программой jigdo. Она есть как под практически любой *NIX, так и под Windows. Ее принцип работы заключается в том, что вы должны скачать ``заготовку'' диска в ~50 мегабайт, и указать зеркало с которого скачать файлы дистрибутива. jigdo самостоятельно скачает файлы, сложит их определенном месте для дальнейшего использования, а затем соберет из них диск идентичный тому, с которого делалась заготовка, что и подтвердит затем, проверив md5 сумму.
Используя jigdo и имея поблизости хорошее зеркало Debian вы сможете иметь всегда диски со свежим testing или диски с той или иной альтернативной комплектацией.
Если вы правильно указали источники пакетов в /etc/sources.list и выполнили команду apt-get update , достаточно выполнить команду apt-get dist-upgrade.
Выполните команду
apt-get install имя_пакета
При установке пакета всегда проверяются зависимости, и если становка пакета требует установки или удаления других пакетов, вам будет предложено ознакомиться с возможными последствиями.
В случае, если вы имеете просто файл пакета, и уверены, что все зависимости удовлетворены, можно установить пакет командой
dpkg -i имя_пакета.deb
Выполните команду
apt-get remove имя_пакета
если вы хотите оставить файлы настроек, или
apt-get remove -purge имя_пакета
если вы хотите удалить пакет так, будто он у вас и не был установлен.
При удалении пакета всегда проверяются зависимости, и если удаление пакета требует установки или удаления других пакетов, вам будет предложено ознакомиться с возможными последствиями. Пример:
root@moria:~# apt-get remove tetex* Reading Package Lists... Done Building Dependency Tree... Done Note, selecting tetex-extra instead of tetex-nonfree Note, selecting libkpathsea3 instead of tetex-lib The following packages will be REMOVED: dvi2dvi dvi2ps latex2rtf libkpathsea3 tetex-base tetex-bin tetex-extra texmacs 0 packages upgraded, 0 newly installed, 8 to remove and 0 not upgraded. Need to get 0B of archives. After unpacking 98.2MB will be freed. Do you want to continue? [Y/n]
Я рассмотрю здесь простой способ, основанный на ручной сборке пакета, без использования специфических утилит типа deb-make и других.
Для начала, вы должны иметь, то что вам нужно установить с помощью собираемого вами пакета. Путь это будет какая-либо утилита, расширяющие возможности системы. (С тем же успехом - это могут быть дополнительные файлы шрифтов или еще что-нибудь). Пусть эта утилита называется probe. Положим, что к этой утилите вы написали страничку руководства man с названием probe.1 и кроме того положим, что есть какой-либо файл, где разобран пример работы с данной утилитой с именем example. Путь файл с примером и страничка руководства называются сопровождающими файлами.
Важно, чтобы вы представляли, где должна быть размещена эта утилита и сопровождающие ее файлы. Обычно исполняемые файлы размещают в /usr/bin. Странички руководства man размещают в /usr/man/man.1, а всякие примеры в /usr/lib/имя_утилиты. Пусть так будет и в нашем случае.
Итак, выполняем следующие шаги:
Создаем в этом каталоге подкаталоги, в которые нужно поместить утилиту и сопровождающие файлы. При этом каталоги создаются так, как будто DEB является корневым каталогом. Таким образом, в нашем случае, файлы должны быть размещены следующим образом:
DEB/usr/bin/probe
DEB/usr/man/man1/probe.1
DEB/usr/lib/probe/example
Вот для чего они нужны:
control | Служебная |
---|---|
conffiles | Список конфигурационных файлов |
preinst | Скрипт, выполняемый перед началом установки пакета |
postinst | Скрипт, выполняемый после установки пакета |
prerm | Скрипт, выполняемый перед удалением пакета |
postrm | Скрипт, выполняемый после удаления пакета |
Нелишним будет напомнить, что скрипты должны иметь права на выполнение, иначе ничего выполняется у вас не будет.
Я рассмотрю здесь простой способ, основанный на ручной сборке пакета, без использования специфических утилит типа deb-make и других.
Эту информацию впоследствии будет использовать менеджер пакетов dpkg и программа dselect. Информацию можно занести в любом текстовом редакторе. Для нашего случая я привожу уже готовый файл:
Package: probe Version: 1.0 Architecture: i386 Maintainer: Ivan Ivanov <ivan@perm.ru> Description: My probe utility This is my utility
Обратите внимание: перед фразой This is my utility пробел. Он указывает, что данная фраза является продолжением описания.
Если его не поставить, то при сборке пакета вы получите сообщение об ошибке.
dpkg -b имя_каталога имя_пакета.deb
В нашем случае эта команда будет выглядеть так:
dpkg -b DEB probe-1.0.deb
Если вы правильно выполнили все описанные выше инструкции, то вы получите файл probe-1.0.deb, который вы можете теперь установить через команду
dpkg -i probe-1.0.deb.
Если эта программа не входит в Debian , обратитесь к списку рассылки и сайту ее разработчиков.
Если же программу еще никто не собрал (или не разместил в собранном виде в Internet), попробуйте сами! Если у вас получится - разместите готовые пакеты, исходные тексты и патчи в виде депозитария Debian , и сообщите с соответствующий список рассылки об этом.
В случае, если программа является не входит в Debian , ее лицензия не противоречит DFSG, и у вас есть желание, возможность и время поддерживать ее для всех платформ, поддерживаемых Debian , попробуйте стать2 Debian Developer - войдите в сообщество разработчиков Debian !
Для этого вы должны привести файл XF86Config-4 к следующему виду:
Section "InputDevice" Identifier "Netscroll" Driver "mouse" Option "CorePointer" Option "Device" "/dev/psaux" Option "Protocol" "IMPS/2" Option "ZAxisMapping" "4 5" EndSection
Это можно сделать вручную или с помощью deb-conf, если вы поручили ему ведение этого файла. В этом случае достаточно корректно ответить на вопрос о типе мыши.
02.11.2002 ! Исправление ошибок ! Изменен (незначительно) процесс генерации html (Anseis <Anseis1 at ezmail.ru>) ! Изменил иконки навигации. ! Добавлена подсекция ~ О данном документе ~ Благодарности ! Изменён вопрос: ~ Управление пакетами ~ Как добавить http или ftp зеркало Debian ? ("Dimitry N. Naldaev" <dima at tic.perm.ru>) 31.10.2002 ! Исправление ошибок ! Добавлен changelog ! Изменён вопрос: ~ Управление пакетами ~ Как поставить пакет? 30.10.2002 ! Исправление ошибок ! Добавлены вопросы: ~ Управление пакетами + Мне нужна программа foo, а она не входит в стабильный дистрибутив bar/не является частью архива Debian. Что мне делать? + Система X Window + Как заставить работать PS/2 мышь с "колёсиком"? (+) - Новые 28.10.2002 ! Миграция с \LyX на \LaTeX ! Приведение в порядок внешнего вида ! HTML вариант разбит на несколько файлов ! Исправление ошибок ! Официальный выпуск в свет (объявлено в debian-russian@lists.debian.org, http://linux.perm.ru) ! Добавлены вопросы: + Русификация + Русские локали + Русская консоль + Включение русского при установке * Включение поддержки русского в bash для обычных пользователей + А как насчет русского в консоли root? + Поддержка русского языка в X Window + Захотел прочитать текстовый файл на русском языке, который я сделал в DOS'е, а там русских букв нет, вместо них почему-то псевдографика. Каким образом можно прочитать текстовые файлы из DOS'а? * 3.8 Как сделать так, чтобы в моем mc (Midnight Commander) были видны русские буквы и чтобы я мог их там набирать, а то лезет всякая ерунда? * Почему у меня программа для работы с электронной почтой elm говорит Unknown charset, когда я пишу письма на русском языке? Как с этим бороться? ~ Настройка приложений * Когда работаю в mc (Midnight Commander) в эмуляторе терминала xterm в X Window, то возникают проблемы с клавишами. Понять не могу, что за ерунда. Как это вылечить? * У меня на первом винте стоит Linux но есть и второй винт, на котором стоит DOS, как мне добится чтобы lilo грузил мне DOS? * Говорят, что якобы можно грузить Linux напрямую из DOS'а не пользуясь LILO. Это действительно так? Если да, то как это сделать? * У меня стоят три менеждера окон к X Window. Куда мне прописать чтобы по умолчанию командой startx грузился fvwm95? * Как соединятся с провайдером для выхода в Internet через модем, по протоколу PPP? + Управление пакетами + Что такое stable, testing, unstable ветки Debian ? + Что становится с предыдущими стабильными дистрибутивами? + Что такое experimental? + Что такое non-free и contrib? + Что такое система pools? + Как добавить http или ftp зеркало Debian ? + Я добавил новую строку в /etc/apt/sources.list но пакеты не ставятся! + Как добавить компакт-диск с депозитарием? + Как получить образы компакт-дисков Debian ? + Как обновить программное обеспечение? + Как поставить пакет? + Как удалить пакет? * Как мне сделать собственный .deb пакет? (+) - Новые (*) - из FAQ Виктора Вислобокова 25.10.2002 ! Первый релиз ! Миграция с HTML на \LyX ! HTML вариант в виде одного файла ! Вопросы: + О данном документе + История документа и авторы + Доступные форматы + Лицензия + Общие вопросы по дистрибутиву + Что такое Debian ? * Чем отличается Debian от других дистрибутивов? * Какими способами можно установить Debian? * Какая версия Debian на сегодня самая свежая? + Настройка приложений * Как мне сделать собственный .deb пакет? (+) - Новые (*) - из FAQ Виктора Вислобокова 23.10.2002 - Начата работа над FAQ
This document was generated using the LaTeX2HTML translator Version 2K.1beta (1.48)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split +1 -no_subdir -iso_language RU.RU -local_icons -show_section_numbers -html_version 3.2,koi8-r DebianFAQ.tex
The translation was initiated by Igor A. Tetuev on 2002-11-02