[ назад ] [ Содержание ] [ 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 7.0 содержит двоичный код для следующих архитектур:

В настоящее время ведётся разработка дистрибутивов двоичных пакетов Debian для armhf (платы и устройства ARM с блоком вычисления чисел с плавающей запятой), arv32 (32-битные процессоры Atmel на основе архитектуры RISC), m32 (32-битные процессоры Renesas Technology на основе архитектуры RISC), s390x (64-битное пользовательское окружение для мэйнфреймов IBM System z) и sh (процессоры Hitachi SuperH).

Поддержка архитектуры 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.

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

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


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

Debian предлагает полные дистрибутивы двоичных пакетов для следующих ядер операционных систем:

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

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

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


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

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

Debian GNU/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. Пользователям, собирающим программы, требуются некоторые знания по работе с терминалом для того, чтобы преобразовать вызовы libtermcap в вызовы libncurses.

Для поддержки двоичных файлов, которые уже скомпонованы с библиотекой termcap и для которых нет исходного кода, в Debian предлагается пакет termcap-compat. В нём содержится библиотека libtermcap.so.2 и файл /etc/termcap. Если программа отказывается запускаться с сообщением об ошибке «can't load library 'libtermcap.so.2» или жалуется на отсутствие файла /etc/termcap, установите этот пакет.


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

версия 5.0.2ubuntu1 от 17 June 2013

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