[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ вперед ]


Часто задаваемые вопросы о Debian GNU/Linux
Глава 4 - Проблемы совместимости


4.1 На каких архитектурах/системах работает Debian GNU/Linux?

Debian GNU/Linux содержит исходный код всех входящих в него программ, поэтому он должен работать на всех системах, которые поддерживаются ядром Linux. Подробности см. в Linux FAQ.

Текущий выпуск Debian GNU/Linux 8 содержит двоичный код для следующих архитектур:

The development of binary distributions of Debian for hurd-i386 (for GNU Hurd kernel on i386 32-bit PCs), mipsel64 (for 64 bit MIPS in little-endian mode), powerpcspe (port for the "Signal Processing Engine" hardware), sparc64 (for 64 bit SPARC processors), sh (for Hitachi SuperH processors), and x32 (for amd64/x86_64 CPUs using 32-bit pointers) is currently underway.

Поддержка архитектуры m68k была прекращена в выпуске Etch (Debian 4.0), так как она не удовлетворяла требованиям ответственных за выпуск Debian. К данной архитектуре относятся машины Amiga и ATARI с процессорами Motorola 680x0, где x>=2 означает встроенный модуль MMU. Однако, даже не будучи частью официального стабильного выпуска, данный перенос всё ещё остаётся активным и доступен для установки, и может быть возвращён в число действующих в будущих выпусках.

Поддержка hppa (машины Hewlett-Packard с архитектурой PA-RISC ) и alpha (системы Compaq/Digital с архитектурой Alpha) была прекращена в выпуске Squeeze (Debian 6.0) по схожим причинам. Также в этом выпуске прекращена поддержка архитектуры arm, вследствие перехода на поддержку armel.

Support for the 32-bit s390 port (s390) was discontinued and replaced with s390x in Jessie (Debian 8). In addition, the ports to IA-64 and Sparc had to be removed from this release due to insufficient developer support.

Подробности см. на странице переносов.

Информация о загрузке, разметке диска, включении устройств PCMCIA (PC Card) и о прочих вопросах такого рода приведена в руководстве по установке.


4.2 На каких ядрах работает Debian GNU/Linux?

Beside Linux, Debian provides a complete, binary distribution for the following operating system kernels:

Кроме этого, ведётся работа над следующими переносами:

Были попытки переноса дистрибутива на ядро NetBSD, где предоставлялись ядра netbsd-i386 (для 32-битных ПК) и netbsd-alpha (для машин Alpha), но эти переносы никогда не выпускались, и в данный момент работа над ними свёрнута.

Подробности см. на странице переносов.


4.3 Насколько Debian совместим с другими дистрибутивами Linux?

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

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

В Debian GNU/Linux есть поддержка ПО, разработанного в соответствии с Linux Standard Base. LSB — это спецификация, позволяющая использовать один двоичный пакет сразу в нескольких дистрибутивах. Выпуск Debian Etch сертифицирован по LSB Release 3.1, см. страницу Linux Foundation Certification. Обсуждение и координирование усилий по улучшению Debian в плане соблюдения требований Linux Standard Base проходит в списке рассылки debian-lsb.


4.4 Насколько исходный код Debian совместим с другими системами Unix?

Исходный код большинства приложений Linux совместим с другими системами Unix. Поддерживается почти всё, что есть в системах Unix System V, а также в свободных и коммерческих системах, происходящих от BSD. Однако, для бизнеса такое утверждение о Unix почти не имеет значения, потому что доказать это никак нельзя. В области разработки программного обеспечения необходима полная совместимость, а не совместимость «в большинстве случаев». Поэтому несколько лет тому назад назрела необходимость в стандартах, и теперь POSIX.1 (IEEE Стандарт 1003.1-1990) является одним из основных стандартов по совместимости исходного кода для Unix-подобных операционных систем.

ОС Linux ориентирована на соответствие POSIX.1, но стандарты POSIX стоят настоящих денег, а сертификация POSIX.1 (и FIPS 151-2) довольно дорога; это ещё более усложняет разработчикам Linux работу по достижению полного соответствия POSIX. Ввиду высокой стоимости сертификации маловероятно, что Debian получит официальное подтверждение о соответствии, даже если он полностью пройдёт аттестационный пакет. (Аттестационный пакет теперь свободно доступен, так что ожидается, что ещё больше людей будет работать над вопросами соответствия POSIX.1).

В Unifix GmbH (Брауншвейг, Германия) была разработана Linux-система, которая была сертифицирована как удовлетворяющая FIPS 151-2 (расширенный набор POSIX.1). Эта технология была доступна в собственном дистрибутиве Unifix, названном Unifix Linux 2.0, и в Lasermoon Linux-FT.


4.5 Можно ли использовать пакеты Debian (файлы «.deb») в системе RedHat/Slackware/… Linux? Можно ли использовать пакеты RedHat (файлы «.rpm») в системе Debian GNU/Linux?

В различных дистрибутивах Linux используются различные форматы пакетов и различные программы управления пакетами.

То, что вы, вероятно, сможете сделать

Существует программа для распаковки пакета Debian на Linux-машине, работающей под «чужим» дистрибутивом, и она, в общем, работает, в том смысле, что файлы будут распакованы. Обратный вариант скорее всего тоже будет работать, т. е. программа сможет распаковать пакет для RedHat или Slackware на машине, работающей под Debian GNU/Linux, и разместить большинство файлов по нужным каталогам. Это в значительной степени стало возможным благодаря существованию (и строгому соблюдению) стандарта иерархии файловой системы Linux. Для преобразования различных форматов пакетов друг в друга используется пакет Alien.

То, что вы, скорее всего, делать не захотите

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

Лучший способ:

Стандарт Файловой Системы Linux (а, следовательно, и Debian GNU/Linux) требует, чтобы подкаталоги в /usr/local/ полностью находились в распоряжении пользователей. Поэтому пользователи могут распаковывать «чужие» пакеты в этот каталог, а затем лично управлять их настройкой, обновлением и удалением.


4.6 Как установить не-Debian программу?

Файлы в каталоге /usr/local/ не контролируются системой управления пакетами Debian. Поэтому хорошим вариантом будет размещение исходного кода нужных вам программ в каталоге /usr/local/src/. Например, файлы из пакета «foo.tar» можно распаковать в каталог /usr/local/src/foo. После сборки поместите двоичные файлы в /usr/local/bin/, библиотеки в /usr/local/lib/, а файлы настроек в /usr/local/etc/.

Если ваша программа и/или файлы на самом деле должны находиться в каком-то другом каталоге, их всё равно можно сохранить в /usr/local/, а в нужных местах создать соответствующие символьные ссылки на файлы из /usr/local/. Можно, например, сделать так:

     ln -s /usr/local/bin/foo /usr/bin/foo

В любом случае, если вы получили пакет, авторские права на который позволяют его дальнейшее распространение, вам стоило бы подумать о создании из него пакета для Debian и отправке его в систему Debian. О том, как стать разработчиком пакета, читайте в руководстве по политике Debian (см. Какая ещё документация существует по системе Debian?, раздел 12.1).


4.7 Почему не получается собрать программы, которым нужна библиотека libtermcap?

Debian использует базу данных terminfo и библиотеку функций терминала ncurses, но не базу данных termcap и библиотеку termcap.

Низкоуровневая библиотека terminfo была отделена от общей библиотеки ncurses и вошла в новый пакет libtinfo5. libncurses скомпонована с libtinfo, поэтому пользователи, которые компилируют программы, которым требуется интерфейс терминала, должны заменить ссылки на libtermcap на ссылки на libncurses.

Для обеспечения поддержки двоичных файлов, которые уже скомпонованы с библиотекой termcap и для которых нет исходного кода, вам нужно будет самостоятельно найти исходный код и скомпилировать его. Раньше в Debian предоставлялся пакетtermcap-compat, в котором содержались и libtermcap.so.2, и /etc/termcap, но в 2005 году он был удалён из дистрибутива.


4.8 Почему не получается установить AccelX?

Для установки AccelX используется библиотека termcap. Смотрите Почему не получается собрать программы, которым нужна библиотека libtermcap?, раздел 4.7.


[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ вперед ]


Часто задаваемые вопросы о Debian GNU/Linux

версия 8.1 от 28 August 2016

Список авторов можно найти в ЧаВо о Debian: Авторы