Debian standard что это
Перейти к содержимому

Debian standard что это

  • автор:

Глава 1. Определения и краткий обзор

Здесь собраны вопросы (с ответами!) о дистрибутиве Debian (Debian GNU/Linux и других) и о проекте Debian. Там, где есть другая документация по определённому вопросу, даётся ссылка: мы не хотим цитировать здесь большие части сторонней документации. В ряде ответов предполагается наличие некоторых знаний по Unix-подобным операционным системам. Однако допуская, что знаний у читателя может быть совсем немного, мы постараемся отвечать на общие вопросы новичков как можно проще.

1.2. Что такое Debian GNU/Linux?

Debian GNU/Linux — это один из дистрибутивов операционной системы Linux с большим количеством пакетов.

  • самодостаточен : сейчас в Debian входит более 59100 пакетов программ. Пользователи могут выбирать нужные пакеты для установки; для этого в Debian есть специальный инструмент. Список и описания входящих в Debian пакетов можно найти на любом из серверов-зеркал Debian.
  • свободен для использования и дальнейшего распространения : для участия в его распространении и разработке не требуется членства или оплаты. Все пакеты, которые формально являются частью Debian GNU/Linux, свободны для дальнейшего распространения обычно на условиях универсальной общественной лицензии GNU (GNU General Public License). The Debian archives also carry approximately 1000 software packages (in the non-free and contrib sections), which are distributable under specific terms included with each package.
  • dynamic : With about 1012 volunteers constantly contributing new and improved code, Debian is evolving rapidly. The archives are updated twice every day.

Большинство пользователей Linux работают с одним из дистрибутивов Linux, таким же как и Debian GNU/Linux. В принципе, пользователь может взять ядро Linux из Интернет или ещё откуда-нибудь и собрать его сам. Таким же образом он может найти исходный код многих приложений, собрать программы и установить их на своей системе. В случае сложных приложений это не только может отнять много времени, но и чревато ошибками. Чтобы избежать этого, пользователи часто используют операционную систему и пакеты приложений, предлагаемые одним из распространителей Linux. Разные распространители (дистрибьюторы) Linux предлагают разный набор программного обеспечения (ПО), протоколы и методы упаковки, установки и сопровождения пакетов приложений в пользовательских системах, включая инструментарий для установки и управления, документацию и другие вещи.

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

В Debian термин свободное используется в значении GNU (см. Критерии Debian по определению Свободного ПО). Когда мы говорим о свободном ПО, мы имеем в виду свободу, а не цену. Свободное ПО предполагает, что у вас имеется свобода распространять копии свободного ПО, что вы получаете не только двоичные файлы, но и исходный код, либо можете получить его, если вам это нужно, что вы можете изменять ПО или использовать части этого ПО в новых свободных программах; и что вы знаете, что можете всё это делать.

Проект Debian был создан Иэном Мёрдоком (Ian Murdock) в 1993 году при спонсорском участии проекта GNU Free Software Foundation. Сегодня, разработчики Debian считают его прямым наследником проекта GNU.

Хотя Debian GNU/Linux и сам по себе является свободным ПО, на его основе можно строить и другие дистрибутивы Linux. Предлагая надёжную, самодостаточную основу системы, Debian предоставляет пользователям Linux улучшенную совместимость, и позволяет создателям дистрибутивов Linux избежать двойной работы и сфокусироваться на вещах, отличающих их собственные дистрибутивы от прочих. Подробности об этом см. в Раздел 14.3, «Я делаю специальный дистрибутив Linux для «вертикального маркетинга». Могу я использовать Debian GNU/Linux как основу этой системы и добавлять мои собственные приложения поверх него?».

1.3. Я понял, что такое Debian, а что такое Linux?!

В двух словах, Linux — это ядро Unix-подобной операционной системы. Исходно оно разрабатывалось для машин с процессорами 386 (и более новых), а сейчас может работать и на десятке других архитектур. Ядро Linux было написано Линусом Торвальдсом (Linus Torvalds) и многими компьютерщиками со всего мира.

Кроме ядра, в «Linux»-систему обычно входит:

  • файловая система, соответствующая стандарту иерархии файловой системы Linux (Linux Filesystem Hierarchy Standard), https://www.pathname.com/fhs.
  • разнообразные Unix-утилиты, многие из которых были разработаны проектом GNU и Free Software Foundation.

Ядро Linux, файловая система, утилиты GNU, FSF и другие разрабатываются в соответствии со стандартом POSIX (IEEE 1003.1), см. Раздел 4.4, «Насколько исходный код Debian совместим с другими системами Unix?».

Более подробную информацию о том, Что такое Linux, см. на сайте Linux Online.

1.4. Debian работает только с GNU/Linux?

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

Первой попыткой переноса является Debian GNU/Hurd.

Hurd — это набор серверов, запущенных поверх микроядра GNU Mach. Эта комбинация составляет основу операционной системы GNU.

Дополнительную информацию о GNU/Hurd вообще можно найти на https://www.gnu.org/software/hurd, а о Debian GNU/Hurd — на https://www.debian.org/ports/hurd/.

A second effort is the port to a BSD kernel. People are working with the FreeBSD kernel.

Подробности о не-linux переносах см. на странице https://www.debian.org/ports/#nonlinux.

1.5. Чем Debian GNU/Linux отличается от других дистрибутивов Linux? Почему я должен отдать предпочтение Debian, а не какому-то другому дистрибутиву?

Вот ключевые возможности, отличающие Debian от других дистрибутивов Linux:

Как заявлено в общественном договоре, Debian всегда будет свободным на 100%. В Debian распространяется только действительно свободное программное обеспечение. Такое ПО должно отвечать критериям Debian по определению свободного ПО.

Система управления пакетами Debian

Система в целом или любая её часть может быть обновлена без переформатирования, без потери пользовательских настроек и (в большинстве случаев) без перезагрузки системы. В большинстве современных дистрибутивов Linux тоже есть свои системы управления пакетами; система управления пакетами Debian уникальна и хорошо продумана (см. Глава 7, Основы системы управления пакетами Debian).

Открытая модель разработки

Многие дистрибутивы Linux разрабатываются индивидами, небольшими закрытыми группами, либо коммерческими компаниями. Debian же представляет собой крупный дистрибутив Linux, который разрабатывается объединением индивидов, общей целью которых является создание свободной операционной системы в духе Linux и другого свободного ПО.

Более 1012 сопровождающих, действующих по собственной инициативе, работают над более чем 59100 пакетами и улучшением Debian GNU/Linux. В большинстве случаев разработчики Debian помогают проекту не написанием новых приложений, а пакетированием существующего ПО в соответствии со стандартами проекта, отправкой сообщений о найденных ошибках разработчикам программ и предоставлением поддержки пользователям. О том, как стать таким сотрудником, см. Глава 13, Помощь проекту Debian.

Универсальная операционная система

Debian поставляется с более чем 59100 пакетами и работает на 9 архитектурах. Это намного больше, чем доступно в любом другом дистрибутиве GNU/Linux. Обзор поставляемого ПО см. в Раздел 5.1, «Какие виды приложений и средств разработки программ доступны в Debian GNU/Linux?», а описание поддерживаемых платформ см. в Раздел 4.1, «На каких архитектурах/системах работает Debian GNU/Linux?».

Система отслеживания ошибок

В связи с территориальной рассредоточенностью разработчиков Debian для ускорения разработки системы и быстрого исправления ошибок им требуется подходящий инструментарий. Пользователи присылают сообщения об обнаруженных ошибках в специальном формате, которые становятся доступны через WWW-архивы и электронную почту. Для дополнительной информации о ведении журнала ошибок см. Раздел 12.4, «Существуют ли журналы известных ошибок?».

В Debian есть всестороннее описание стандартов качества — политика Debian (Debian Policy). Этот документ определяет качества и стандарты, согласно которым мы разрабатываем пакеты Debian.

Дополнительную информацию об этом можно найти на странице причин выбора Debian.

1.6. Как соотносятся проект Debian и проект GNU Free Software Foundation?

Система Debian строится на основе идеалов свободного ПО, которые были предложены Фондом свободного ПО и в частности Ричардом Столлманом. Мощные инструменты системной разработки, утилиты и приложения Фонда свободного ПО являются ключевой частью системы Debian.

Проект Debian не является частью FSF, однако мы регулярно общаемся и совместно работаем над различными проектами. FSF попросила, чтобы мы называли нашу систему «Debian GNU/Linux», и мы счастливы были выполнить их просьбу.

Давняя цель FSF — разработка новой операционной системы, называемой GNU, на основе ядра Hurd. Debian работает вместе с FSF над этой системой, называемой Debian GNU/Hurd.

1.7. Как произносится слово Debian и что оно означает?

Имя проекта произносится как Дебиан, с коротким е и ударением на первом слоге. Это слово образовано из имён Debra и Ian Murdock, которые основали проект. (Кажется, словари дают несколько двусмысленную транскрипцию слова Ian (!), но Иэн предпочитает транскрипцию ee’-en.)

Пред. След.
Часто задаваемые вопросы о Debian GNU/Linux Начало Глава 2. Получение и установка Debian GNU/Linux

Глава 7. Основы системы управления пакетами Debian

В этой главе вкратце рассматривается внутренняя низкоуровневая организация системы управления пакетами Debian. Если вас главным образом интересует вопрос о том, как использовать соответствующие утилиты, переходите сразу к Глава 8, Инструменты управления пакетами Debian или Глава 9, Поддержание обновлений системы Debian.

7.1. Что такое пакет Debian?

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

  • Binary packages , which contain executables, configuration files, man/info pages, copyright information, and other documentation. These packages are distributed in a Debian-specific archive format (see Раздел 7.2, «Какой формат у двоичных пакетов Debian?»); they are usually characterized by having a ‘.deb’ file extension. Binary packages can be unpacked using the Debian utility dpkg (possibly via a frontend like aptitude ); details are given in its manual page.
  • Source packages , which consist of a .dsc file describing the source package (including the names of the following files), a .orig.tar.gz file that contains the original unmodified source in gzip-compressed tar format and usually a .diff.gz file that contains the Debian-specific changes to the original source. The utility dpkg-source packs and unpacks Debian source archives; details are provided in its manual page. (The program apt-get can be used as a frontend for dpkg-source .)

Installation of software by the package system uses «dependencies» which are carefully designed by the package maintainers. These dependencies are documented in the control file associated with each package. For example, the package containing the GNU C compiler ( gcc ) «depends» on the package binutils which includes the linker and assembler. If a user attempts to install gcc without having first installed binutils , the package management system (dpkg) will send an error message that it also needs binutils , and stop installing gcc . (However, this facility can be overridden by the insistent user, see dpkg (8) .) See more in Раздел 7.9, «Что имеется в виду, когда говорят, что пакет Рекомендует (Recommends), Предлагает (Suggests), Заменяет (Replaces), Ломает (Breaks) или Предоставляет (Provides) другой пакет, Зависит (Depends) от него или Конфликтует (Conflicts) с ним?» below.

Инструменты управления пакетами Debian могут использоваться для:

  • манипулирования и управления пакетами или их частями;
  • управления локальными заменами файлов пакета;
  • помощи разработчикам в сборке пакетов;
  • aid users in the installation of packages which reside on a remote archive site.

7.2. Какой формат у двоичных пакетов Debian?

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

The internals of this Debian binary packages format are described in the deb (5) manual page. This internal format is subject to change (between major releases of Debian GNU/Linux), therefore please always use dpkg-deb (1) if you need to do lowlevel manipulations on .deb files.

7.3. Почему имена файлов пакетов Debian такие длинные?

Для именования файлов двоичных пакетов Debian используется следующее соглашение: _-_.deb

Note that foo is supposed to be the package name. Checking the package name associated with a particular Debian archive file (.deb file) can be done in one of these ways:

  • inspect the «Packages» file in the directory where it was stored at a Debian archive site. This file contains a stanza describing each package; the first field in each stanza is the formal package name.
  • воспользоваться командой dpkg —info foo_VVV-RRR_AAA.deb (где VVV, RRR и AAA — это, соответственно, версия, ревизия и архитектура пакета в запросе). В результате, помимо прочего, будет указано имя пакета, соответствующее распаковываемому файлу-архиву.

Компонент VVV определяет номер версии, установленный разработчиком программы. Его формат не стандартизован, поэтому номер версии может быть любым, например «19990513» или «1.3.8pre1».

The RRR component is the Debian revision number, and is specified by the Debian developer (or a user who chooses to rebuild the package locally). This number corresponds to the revision level of the Debian package, thus, a new revision level usually signifies changes in the Debian Makefile ( debian/rules ), the Debian control file ( debian/control ), the installation or removal scripts ( debian/p* ), or in the configuration files used with the package.

The AAA component identifies the processor for which the package was built. This is commonly amd64 , which refers to AMD64, Intel 64 or VIA Nano chips. For other possibilities review Debian’s archive directory structure at Раздел 6.7, «What are all those directories at the Debian archives?». For details, see the description of «Debian architecture» in the manual page dpkg-architecture (1) .

7.4. Зачем нужен файл control?

Содержимое файла control подробно рассматривается в разделе 5 «Руководства по политике Debian» (Debian Policy Manual) (см. Раздел 12.1, «Какая ещё документация существует по системе Debian?»).

Краткий пример файла control для пакета Debian hello приведён ниже:

Package: hello Version: 2.9-2+deb8u1 Architecture: amd64 Maintainer: Santiago Vila Installed-Size: 145 Depends: libc6 (>= 2.14) Conflicts: hello-traditional Breaks: hello-debhelper (

Поле Package содержит имя пакета. Это имя, по которому инструменты управления пакетами будут его опознавать. Обычно (но не обязательно) оно совпадает с первым компонентом имени файла архива Debian.

Поле Version содержит номер версии программы, установленный её разработчиками, и (в последнем компоненте) номер ревизии пакета этой программы в Debian, см. Раздел 7.3, «Почему имена файлов пакетов Debian такие длинные?».

Поле Architecture определяет тип процессора, для которого были скомпилированы двоичные файлы в данном пакете.

Поле Depends содержит список пакетов, которые должны быть установлены для успешной установки данного пакета.

Installed-Size отражает размер дискового пространства, который будет занят пакетом после установки. Этот параметр может использоваться программами установки для проверки достаточности дискового пространства перед установкой пакета.

The Section line gives the "section" where this Debian package is stored at the Debian archive sites.

В поле Maintainer указан адрес электронной почты человека, ответственного за поддержку данного пакета.

В поле Description приводится краткое описание функциональности пакета.

Более подробную информацию о всех возможных полях управляющего файла пакета см. в разделе 5 («Управляющие файлы и их поля») «Руководства по политике Debian» (Debian Policy Manual), см. Раздел 12.1, «Какая ещё документация существует по системе Debian?».

7.5. Зачем нужен файл conffile?

Conffile содержит список файлов настроек (обычно помещаемых в /etc ), которые при обновлении пакета не будут перезаписываться системой управления пакетами. Это гарантирует, что содержимое файлов настроек будет сохранено, и позволяет обновлять пакеты, не прерывая работу системы.

Чтобы точно определить, какие файлы сохраняются при обновлении, запустите:

dpkg --status пакет

и взгляните на строку «Conffiles:».

7.6. Зачем нужны сценарии preinst, postinst, prerm и postrm?

Это исполняемые сценарии, автоматически запускаемые до или после установки или удаления пакета. Вместе с файлом control эти файлы являются частью «управляющего» раздела архивного файла Debian.

This script is executed before the package it belongs to is unpacked from its Debian archive (".deb") file. Many 'preinst' scripts stop services for packages which are being upgraded until their installation or upgrade is completed (following the successful execution of the 'postinst' script).

This script typically completes any required configuration of the package foo once foo has been unpacked from its Debian archive (".deb") file. Often, 'postinst' scripts ask users for input, and/or warn them that if they accept default values, they should remember to go back and re-configure that package as needed. Many 'postinst' scripts then execute any commands necessary to start or restart a service once a new package has been installed or upgraded.

Этот сценарий обычно служит для остановки всех связанных с пакетом служб. Он выполняется перед удалением файлов данного пакета.

Этот сценарий обычно служит для изменения ссылок или других файлов, связанных с foo , и/или удаления файлов, созданных пакетом. (См. также Раздел 7.8, «Что такое виртуальный пакет?».)

Currently all of the control files can be found in the directory /var/lib/dpkg/info . The files relevant to package foo begin with the name "foo" and have file extensions of "preinst", "postinst", etc., as appropriate. The file foo.list in that directory lists all of the files that were installed with the package foo . (Note that the location of these files is a dpkg internal; you should not rely on it.)

7.7. Что такое Пакет первой необходимости ( Essential ), Необходимый ( Required ), Важный ( Important ), Стандартный ( Standard ), Необязательный ( Optional ) или Дополнительный ( Extra ) пакет?

Для поддержки системы управления пакетами каждому пакету в Debian сопровождающими дистрибутива назначается приоритет . Возможные приоритеты:

  • Необходимые (Required) — пакеты, необходимые для правильного функционирования системы. Сюда входят все инструменты, необходимые для устранения неполадок в системе. Вам не следует удалять эти пакеты, иначе ваша система может перестать работать, и не исключено, что вы даже не сможете использовать dpkg для того, чтобы вернуть всё назад. Функциональность системы, в которой установлены только Необходимые пакеты, не слишком высока, но достаточна для того, чтобы позволить системному администратору загрузить её и установить больше программного обеспечения.
  • Важные (Important) — пакеты, которые должны быть в любой Unix-системе. Other packages which the system will not run well or be usable without will be here. This does NOT include Emacs or X or TeX or any other large application. These packages only constitute the bare infrastructure.
  • Standard packages are standard on any Linux system, including a reasonably small but not too limited character-mode system. Tools are included to be able to send e-mail (with mutt) and download files from archive servers. This is what will be installed by default if users do not select anything else. It does not include many large applications, but it does include the Python interpreter and some server software like OpenSSH (for remote administration) and Exim (for mail delivery, although it can be configured for local delivery only). It also includes some common generic documentation that most users will find helpful.
  • Optional packages include all those that you might reasonably want to install if you do not know what they are, or that do not have specialized requirements. Сюда входят X, полный дистрибутив TeX и множество других приложений.
  • Дополнительные (Extra) — пакеты, либо конфликтующие с другими пакетами, имеющими более высокий приоритет, полезные, скорее всего, только в том случае, когда вы уже знаете, что это такое, либо имеющие специфические требования, из-за которых им нельзя дать приоритет «Необязательный».

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

Кроме того, некоторые пакеты классифицированы как Пакеты первой необходимости (Essential), так как они абсолютно необходимы для правильной работы системы. Инструменты управления пакетами не допустят их удаления.

7.8. Что такое виртуальный пакет?

A virtual package is a generic name that applies to any one of a group of packages, all of which provide similar basic functionality. For example, both the konqueror and firefox-esr programs are web browsers, and should therefore satisfy any dependency of a program that requires a web browser on a system, in order to work or to be useful. They are therefore both said to provide the "virtual package" called www-browser .

Similarly, exim4 and sendmail both provide the functionality of a mail transport agent. They are therefore said to provide the virtual package "mail-transport-agent". If either one is installed, then any program depending on the installation of a mail-transport-agent will be satisfied by the presence of this virtual package.

Кроме того, в Debian есть механизм, позволяющий системному администратору в том случае, когда в системе установлено несколько пакетов, предоставляющих определённый виртуальный пакет, выбрать предпочтительный. Для этого служит команда update-alternatives , см. Раздел 11.11, «Некоторым пользователям нравится mawk, другим gawk; некоторым vim, другим elvis; некоторым trn, другим tin. Как осуществляется поддержка предпочтений в Debian?».

7.9. Что имеется в виду, когда говорят, что пакет Рекомендует (Recommends), Предлагает (Suggests), Заменяет (Replaces), Ломает (Breaks) или Предоставляет (Provides) другой пакет, Зависит (Depends) от него или Конфликтует (Conflicts) с ним?

В системе пакетов Debian есть несколько типов «зависимостей» пакетов друг от друга, задуманных для определения (в одной переменной) степени независимости одной программы (например, А) от наличия в данной системе другой (Б).

  • Пакет A зависит от пакета Б, если Б абсолютно необходим для работы A. В некоторых случаях A не просто зависит от Б, но дополнительно требует определённую версию Б. В этом случае обычно накладывается требование, чтобы версия Б была не ниже заданной.
  • Пакет A рекомендует пакет Б, если сопровождающий пакета считает, что большинство пользователей не захотят пользоваться A, не имея функциональности, предоставляемой пакетом Б.
  • Пакет A предлагает пакет Б, если Б содержит файлы, имеющие отношение к функциональности пакета A (и обычно её расширяющие).
  • Пакет A конфликтует с пакетом Б, когда A не может работать, если установлен пакет Б. Наиболее часто конфликты возникают, когда A содержит усовершенствованные версии файлов, содержащихся в Б. «Конфликтует» часто задаётся вместе с «заменяет».
  • Пакет A заменяет пакет Б, когда файлы, установленные из пакета Б, удаляются и (в некоторых случаях) замещаются файлами из A.
  • Пакет А ломает пакет Б, когда нельзя одновременно настроить оба пакета в системе. Система управления пакетами предотвратит установку одного, если в системе уже установлен и настроен другой.
  • Пакет A предоставляет пакет Б, когда все файлы и функциональность Б имеются в A. Этот механизм позволяет пользователям с ограниченным дисковым пространством получить только ту часть пакета А, которая действительно им нужна.

More detailed information on the use of each of these terms can be found in the Debian Policy manual, section 7.2, "Binary Dependencies", see Раздел 12.1, «Какая ещё документация существует по системе Debian?».

7.10. Что значит Пред-зависит (Pre-Depends)?

"Pre-Depends" is a special dependency. In the case of most packages, dpkg will unpack the archive file of a package (i.e., its .deb file) independently of whether or not the files on which it depends exist on the system. Simplistically, unpacking means that dpkg will extract the files from the archive file that were meant to be installed on your file system, and put them in place. If those packages depend on the existence of some other packages on your system, dpkg will refuse to complete the installation (by executing its "configure" action) until the other packages are installed.

Однако, некоторые пакеты dpkg даже не будет распаковывать, пока не будут разрешены некоторые зависимости. Про такие пакеты говорят, что они имеют «предварительную зависимость» от наличия некоторых других пакетов. Этот механизм предоставляется в Debian для поддержки безопасного перехода систем с формата a.out на ELF , когда критична очерёдность распаковки пакетов. Существуют и другие варианты больших обновлений, где этот приём также полезен, например для пакетов с приоритетом «необходимый», когда они зависят от LibC.

Опять же, более подробную информацию об этом можно найти в руководстве по политике.

7.11. Что означают слова неизвестно ( unknown ), установить ( install ), удалить ( remove ), вычистить ( purge ), зафиксировать ( hold ) в строке состояния пакета?

Эти флаги определяют, что пользователь «хочет» сделать с пакетом (что определяется вызовами dpkg / apt / aptitude ).

  • неизвестно (unknown) — пользователь никоим образом не отметил, нужен ли ему этот пакет.
  • установить (install) — пользователь хочет установить или обновить пакет;
  • remove - the user wants the package removed, but does not want to remove any existing configuration file.
  • вычистить (purge) — пользователь хочет удалить пакет полностью, включая его файлы настроек;
  • зафиксировать (hold) — пользователь хочет, чтобы над пакетом не совершалось никаких действий, т. е. он хочет сохранить текущую версию пакета, в каком бы состоянии она ни была.

7.12. Как зафиксировать (hold) пакет?

Есть три способа перевода пакета в зафиксированное состояние: с помощью dpkg, apt или aptitude.

При использовании dpkg вам нужно экспортировать список состояний отметки пакетов:

dpkg --get-selections \* > selections.txt

Затем отредактировать полученный файл selections.txt , заменив строку с именем пакета, который нужно зафиксировать, например libc6 , с:

libc6 install
libc6 hold

Сохранить файл и загрузить его в базу данных dpkg:

dpkg --set-selections < selections.txt

С помощью apt пакет можно зафиксировать командой

apt-mark hold имя_пакета

а снять фиксацию с помощью

apt-mark unhold имя_пакета

При использовании aptitude пакет можно зафиксировать командой

aptitude hold имя_пакета

а снять фиксацию с помощью

aptitude unhold имя_пакета

7.13. Как установить пакет исходного кода?

Пакеты исходного кода Debian на самом деле нельзя «установить», они просто распаковываются в любой указанный вами каталог для сборки двоичного пакета.

Source packages are distributed on most of the same mirrors where you can obtain the binary packages. If you set up your APT's sources.list (5) to include the appropriate "deb-src" lines, you'll be able to easily download any source package by running

apt-get source имя_пакета

To help you in actually building the source package, Debian source packages provide the so-called build-dependencies mechanism. This means that the source package maintainer keeps a list of other packages that are required to build their package. To see how this is useful, run

apt-get build-dep имя_пакета

перед сборкой пакета.

7.14. Как собрать двоичный пакет из пакета исходного кода?

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

Сначала добудьте пакет с исходным кодом:

apt-get source имя_пакета

и перейдите в дерево исходников:

cd имя_пакета-*

Затем установите необходимые сборочные зависимости (при их наличии):

sudo apt-get build-dep имя_пакета

После этого создайте отдельную версию своей сборки (для того, чтобы позже не удивляться, когда в Debian тоже выйдет новая версия):

dch -l local 'Blah blah blah'

И, наконец, соберите пакет:

debuild -us -uc

Если всё прошло успешно, то вы сможете установить свой пакет, запустив

sudo dpkg -i ../*.deb

Если вы предпочитаете делать всё вручную и не хотите использовать devscripts , то делайте так:

Для компиляции исходного кода вам понадобятся файлы имя_пакета_*.dsc, имя_пакета_*.tar.gz и имя_пакета_*.diff.gz (учтите, что для некоторых родных пакетов Debian файла .diff.gz нет).

Если у вас есть эти файлы (см. Раздел 7.13, «Как установить пакет исходного кода?») и установлен пакет dpkg-dev , то следующая команда:

dpkg-source -x имя_пакета_версия-ревизия.dsc

извлечёт пакет в каталог с именем имя_пакета-версия .

If you just want to compile the package, you may cd into the foo-version directory and issue the command

dpkg-buildpackage -rfakeroot -b

для сборки пакета (обратите внимание, что для этого также понадобится пакет fakeroot ), а затем

dpkg -i ../имя_пакета_версия-ревизия_архитектура.deb

для установки только что собранного пакета.

7.15. Как самому создать пакет Debian?

For a more detailed description on this, read the New Maintainers' Guide, available in the maint-guide package or at https://www.debian.org/doc/devel-manuals#maint-guide, or the Guide for Debian Maintainers, available in the debmake-doc package or at https://www.debian.org/doc/devel-manuals#debmake-doc.

Пред. След.
Глава 6. The Debian archives Начало Глава 8. Инструменты управления пакетами Debian

Что такое Debian

Дебиан — операционная система (ОС), которая состоит из свободного программного обеспечения с открытым исходным кодом. Распространяется абсолютно бесплатно для конечных пользователей. Разработка Debian началась еще в августе тысяча девятьсот девяносто третьего года Ианом Мердоком. Название «Debian» получилось из букв имен создателя проекта и его супруги. Дистрибутив используется в качестве ОС как для веб-серверов, так и для домашних и рабочих компьютеров. Например, Дебиан применяют в качестве ОС на выделенных серверах (Dedicated Server) и VPS/VDS (виртуальных выделенных серверах).

В «Евробайт» вы можете купить VPS с Debian от 158 рублей в месяц с учетом скидки при оплате за год. Акции, которые мы предлагаем: скидки при оплате за длительный период, бесплатный перенос сайтов от других хостинг-провайдеров, тестовый период 30 дней. Условия уточняйте в службе поддержки или на странице с акциями.

Особенности операционной системы Debian

Характерными особенностями Дебиан являются:

  • система управления пакетами Advanced Packaging Tool (APT), которая сильно упрощает процесс установки программ в командном режиме;
  • строгая политика по отношению к пакетам;
  • большое количество репозиториев;
  • является единственным дистрибутивом со смешанной системой обновлений.

Также разработаны особые наборы программ, которые предназначены для использования отдельными категориями пользователей с разным практическим опытом и кругозором: например, Debian Junior для детей, Debian Edu для школьных учреждений, Debian Science для научных целей и другие.

Преимущества Дебиан

  • Большое количество возможностей. В настоящую стабильную версию входит более 59 000 пакетов программ для 10 архитектур на основе ядра Линукс.
  • Выпускаемые версии отличаются высоким качеством. Разработка Debian построена на стремлении создать дистрибутив, который будет не только открытым и свободным, но и в то же время надежным и стабильным.
  • Простое обновление между версиями.
  • При стандартной установке дистрибутива применяется среда рабочего стола GNOME, куда входит набор известных и нужных для работы программ (например, LibreOffice, Firefox, проигрыватели аудио и видеофайлов и другие).
  • Логичная и структурированная конфигурация — каталоги системы имеют прозрачную и понятную структуру.
  • Дружественный интерфейс установки и администрирования, что привлекает владельцев выделенных серверов.
  • Свободна для распространения и использования.
  • Полная и понятная документация.

Недостатки Дебиан

  • Использовать Debian можно только в ее составе программ с открытым исходным кодом. С одной стороны, к вашей компании никогда не будет претензий от правообладателей, а с другой — ограничение на используемое ПО может сузить возможности и снизить производительность работы.
  • Дебиан изначально создавалась для опытных пользователей, поэтому у новичков может возникнуть вопросы и затруднения в работе.

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

Заключение

Таким образом, Debian является отличным решением для VPS/VDS и выделенных серверов. Например, ВПС/ВДС серверы в Евробайт отличаются следующим:

  • шаблоны с установленной Debian 9 и 10;
  • шаблоны с другими дистрибутивами Linux (Ubuntu и CentOS);
  • шаблоны с панелями управления — ispmanager и Vesta;
  • возможность выбрать дата-центр при регистрации — в России или в Европе;
  • тестовый период в размере 30 дней (подробности уточняйте на странице VPS с пробным периодом);
  • виртуализации — KVM.

Аренда выделенных серверов начинается от 4167 рублей в месяц (с учетом скидки). Все тарифные планы включают неограниченный трафик и надежные серверы от известного мирового бренда SuperMicro.

Серверы под управлением Debian характеризуются высоким уровнем надежности, стабильности и безопасности. Дистрибутив продолжает стремительно развиваться, над обновлениями, устранением недочетов и расширением функционала работают специалисты по всему миру. Мы рекомендуем использовать Дебиан и надеемся, вы не разочаруетесь в ней. Если у вас остались вопросы, задавайте их в комментариях. Мы постараемся ответить в ближайшее время. Спасибо, что дочитали!

Linux Standard Base

Linux Standard Base, LSB — совместный проект семейства операционных систем, основанных на Linux (т.е. дистрибутивов Linux), при организации Linux Foundation, целью которого является стандартизация их внутренней структуры. LSB опирается на существующие спецификации, такие как POSIX, Single UNIX Specification, и другие открытые стандарты, при этом расширяя и дополняя их.

Цель LSB — разработать и продвигать набор стандартов, который увеличит совместимость различных дистрибутивов Linux и даст возможность запускать приложения на любой совместимой системе. Кроме того, LSB поможет скоординировать усилия в привлечении разработчиков к написанию и портированию приложений под Linux.

Чтобы сертифицировать программный продукт на совместимость со стандартом LSB, нужно пройти сертификационную процедуру, которая проводится The Open Group сотрудничающей с Free Standards Group.

LSB специфицирует: стандартные библиотеки, несколько команд и утилит в дополнение к стандарту POSIX, структуру иерархии файловой системы, уровни запуска и различные расширения системы X Window System.

Критика

Стандарт LSB критикуют за то, что он не принимает предложения проектов, в особенности Debian, находящихся за пределами круга его членов.

К примеру, LSB предписывает поставлять программные пакеты (packages) в формате RPM, который был разработан гораздо позже формата deb, однако разработчики Debian не собираются менять свой формат, так как считают его лучше RPM.

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

Так как в Debian присутствует опциональная поддержка LSB (версии 1.1 в woody, 2.0 в sarge, а позднее 3.1 в etch и 3.2 в lenny), проблема исчезает при более близком рассмотрении (то есть пользователь всего лишь должен использовать утилиту alien для преобразования и установки сторонних пакетов). Таким образом, на практике Debian совместим с LSB.

Известный в сообществе открытого программного обеспечения программист Ulrich Drepper (известен как лидер проекта Glibc) критиковал LSB за плохое качество тестирования [1] , которое может привести к несовместимости между сертифицированными дистрибутивами.

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

В остальных областях LSB менее противоречив и нашёл большее признание.

История версий

  • 1.0: Первый релиз, июнь 2001.
  • 1.1: Январь 2002. Добавлены аппаратные спецификации (IA-32).
  • 1.2: Июнь 2002. Добавлены аппаратные спецификации (PowerPC 32-bit). Июль 2002: начата сертификация.
  • 1.2.1:Октябрь 2002. Добавлена архитектура Itanium.
  • 1.3: Декабрь 2002. Добавлены аппаратные спецификации (Itanium, Enterprise System Architecture/390, z/Architecture).
  • 2.0: Сентябрь 2004. LSB разделено на LSB-Core, LSB-CXX, LSB-Graphics, LSB-I18n (не выпущено). Добавлены аппаратные спецификации (PowerPC 64-bit, AMD64). LSB синхронизовано с Single UNIX Specification (SUS) version 3.
  • 2.0.1: ISO-версия LSB 2.0, включающая спецификации для всех архитектур (кроме LSB-Graphics, для которого доступна только начальная версия).
  • 2.1: Выпущен в 2004.
  • 3.0: 1 июля 2005. Наряду с другими изменениями в библиотеках, C++ ABI изменено на используемое в gcc 3.4. Спецификация ядра обновлена до ISO POSIX (2003), Техническое Исправление 1: 2005.
  • 3.1: 31 октября 2005. Эта версия представлена как ISO/IEC 23360.
  • 3.2: 19 января 2008.
  • 4.0: 11 ноября 2008. Эта версия содержит следующие свойства:
    • glibc 2.4;
    • двоичная совместимость с LSB 3.x;
    • более простой SDK;
    • поддержка новых версий графических библиотек GTK и Cairo;
    • Java;
    • более простые способы создания LSB-совместимых пакетов RPMp;
    • Crypto API (через библиотеку Network Secure Sockets).
    • Удалена Java

    Стандарт ISO

    LSB зарегистрирован в качестве официального стандарта ISO. Его основные части [2] :

    ISO/IEC 23360-1:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 1: Generic specification // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 1. Общие технические условия
    ISO/IEC 23360-2:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 2: Specification for IA32 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 2. Спецификация архитектуры IA32
    ISO/IEC 23360-3:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 3: Specification for IA64 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 3. Спецификация архитектуры IA64
    ISO/IEC 23360-4:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 4: Specification for AMD64 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 4. Спецификация архитектуры AMD64
    ISO/IEC 23360-5:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 5: Specification for PPC32 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 5. Спецификация архитектуры PPC32
    ISO/IEC 23360-6:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 6: Specification for PPC64 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 6. Спецификация архитектуры PPC64
    ISO/IEC 23360-7:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 7: Specification for S390 architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 7. Спецификация архитектуры S390
    ISO/IEC 23360-8:2006 Linux Standard Base (LSB) core specification 3.1 -- Part 8: Specification for S390X architecture // Основная спецификация 3.1 стандартной базы Linux (LSB). Часть 8. Спецификация архитектуры S390X

    Примечания

    1. Ulrich Drepper.Do you still think the LSB has some value? (англ.) (17 сентября 2005). Архивировано из первоисточника 21 января 2012.Проверено 22 февраля 2010.
    2. контекстный поиск - БелГИСС

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *