Ничто так не отличает дистрибутив Debian от других дистрибутивов, как его система пакетов и репозиториев. Изначально репозитории были разделены на три ветки: testing, stable и unstable. Но на протяжении многих лет были добавлены дополнительные ответвления. На данный момент требуется намного больше знаний, чтобы использовать систему эффективно и безопасно.
В этой небольшой статье мы рассмотрим какие бывают репозитории Debian 9, зачем они нужны, а также как их правильно использовать. Рассмотрим также несколько сторонних репозиториев, которые вы можете добавить к своей системе.
Содержание статьи
Официальные репозитории Debian
Официальные репозитории Debian разделены на несколько веток. Основная ветка, которая включается в каждый дистрибутив - это main. Здесь содержится только свободное программное обеспечение. Но вы можете отредактировать /etc/apt.sources.list и добавить ветку contrib, которая содержит программы, зависящие от несвободных программ. Также можно добавить ветку non-free, в которой содержаться сами несвободные программы.
Три основных репозитория были названы в честь персонажей фильма "История игрушек". Нестабильный репозиторий принято называть "Sid", а имена репозиториев Testing и Stable постоянно меняются. После выхода новой версии Debian, репозиторий Testing становится Stable и создается новый репозиторий Testing для следующей версии. Имена используются при настройке зеркал репозиториев, а также они помогут вам запомнить что есть что. Рассмотрим подробнее особенности каждого из них. Но сначала наглядная схема:
1. Стабильный
Репозиторий Stable содержит самую последнюю стабильную версию Debian. Эта самая проверенная, самая стабильная версия Linux из всех доступных. По этой причине Debian используется на серверах и для систем, где важна высокая безопасность.
Цена, которую пользователи платят за надежность заключается в том, что сюда попадают программы через несколько лет после релиза. Пользователи, которые хотят более свежих версий используют Testing или Sid. Несмотря на то что такая тактика может вызвать проблемы, она используется довольно часто.
Актуальность Stable зависит от цикла выпуска Debian. Например, в течение первых 6-12 месяцев после релиза пакеты в нем все еще актуальны, но до финальной заморозки следующего выпуска они безнадежно устаревают. Но если вы ограничитесь программным обеспечением из Stable, то, скорее всего, избежите многих проблем.
2. Testing
Testing - это среда для тестирования пакетов, которые будут включены в следующий выпуск. Когда пакет переходит из Unstable в Testing, он уже прошел тщательную проверку и подготовку. Многие отмечают, что пакеты из Testing надежнее чем из официальных репозиториев некоторых дистрибутивов. Дистрибутив Ubuntu берет многие пакеты из Testing. Для подключения этого репозитория нужно добавить несколько строк в конец файла. Репозиторий testing тоже имеет ветки main, non-free и contrib:
3. Unstable или Sid
Новые пакеты обычно попадают в репозиторий Sid, этот репозиторий позволяет вам использовать самые новые версии пакетов в Debian. Большинство программ можно уже использовать, но пакеты могут содержать еще много ошибок. Здесь могут быть конфликтующие или сломанные пакеты, которые не дадут вам удалять или устанавливать программы.
Для этого репозитория лучше использовать параметр simulate во время обновления. Репозиторий sid можно использовать для получения новых версий пакетов, которые не относятся к системным. Программы могут быть по-прежнему нестабильны, но они не причинят вреда вашей системе. Особенно небезопасно использовать Unstable в первые месяцы после обновления, разработчики ждали релиза чтобы добавить новые пакеты, и в этот период можно поймать больше всего ошибок.
Для добавления этой ветки используется ключевое слово sid. Нужно добавить в конец файла такие строки:
4. Experimental
Если репозиторий Unstable может вызвать иногда проблемы, то этот репозиторий будет вызывать их всегда. Здесь находятся новые и настолько нестабильные пакеты, что они не подходят даже для Unstable. Разработчики предупреждают, что пользователям не нужно использовать пакеты отсюда, они могут быть небезопасными даже для опытных пользователей.
5. Старый stable
Когда выпущена новая версия Debian, ее репозиторий Testing становиться stable. А предыдущий стабильный репозиторий получает статус old-stable. Его нужно поддерживать, потому что многим пользователям нужно время для обновления, а другие и вовсе не спешат обновлять систему.
6. Security
Репозиторий Security содержит обновления безопасности для пакетов из репозитория stable и old-stable. Он добавляется во время установки и должен оставаться активным.
7. StableUpdates
Также как и security, этот репозиторий добавляется автоматически. В его адресе используется текущее кодовое имя дистрибутива, например, stretch-updates. Он помогает компенсировать медленный цикл развития Debian, добавляет новые пакеты для важных программ, например, антивирусов.
8. Backports
Репозиторий Debian backports содержит пакеты из Testing, иногда из Unstable, которые перекомпилируются для запуска в stable с зависимостью от минимума библиотек. С точки зрения надежности, он находится где-то посредине между Testing и Stable. Вы можете использовать Backports только для некоторых пакетов и не обновлять из него всю систему. Однако использование этого репозитория более безопасно чем смешивание Testing, Stable и Unstable.
Сторонние репозитории
Многие проекты имеют собственные репозитории Deb пакетов. Это драйвера с закрытым кодом, репозитории окружений рабочего стола, и так далее. Многие из таких проектов выгружают последние версии в собственные репозитории. Теоретически, такие репозитории Debian 9 могут быть даже более сырые, чем unstable или experimental. Многие из них предназначены только для разработчиков.
1. Deb-multimedia
Из сторонних репозиториев обычным пользователям нужно не так много. Добавьте репозиторий с различными кодеками и программами для работы с мультимедиа:
Для работы сторонних репозиториев нужно добавить набор их ключей в систему:
sudo apt update
$ sudo apt install deb-multimedia-keyring
2. Dotdeb
Этот репозиторий Debian 9 содержит новые версии стека LAMP, MySQL и PHP. Для добавления используйте:
3. Репозитории Google
Компания Google размещает новые версии своих проектов, таких как Google Chrome, Google Earth в собственных репозиториях. Вот основные из них:
Для работы репозитория нужно добавить ключ:
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
4. Репозитории Oracle
Компания Oracle имеет собственные репозитории Debian 9 для своих продуктов. Для добавления репозитория используйте такую строку:
Также можно отдельно добавить репозиторий для VirtualBox:
Не забудьте загрузить ключи:
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
$ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
Выводы
В этой статье мы рассмотрели основные репозитории Debian 9 stretch. Теперь вы понимаете как обращаться с программным обеспечением, зачем нужны те или иные ветки, а также какие пакеты откуда ставить. Также здесь есть несколько сторонних репозиториев, из которых вы сможете взять нужные вам программы.
Видео по теме, настройка репозиториев Debian:
https://youtu.be/1iTJLe0PC8M
Поправьте путь на /etc/apt/sources.list , а то у вас точка вместо слэша.
Для полноты картинки надо добавить расшифровку main, contrib, non-free.
main : бесплатное программное обеспечение, официально поддерживаемое Debian.
contrib : бесплатное программное обеспечение, которое следует за DFSG, но зависит от программного обеспечения в non-free .
non-free : все виды несвободного программного обеспечения, которые не соответствуют DFSG.
Можно ли сделать так, что бы при установке пакета он автоматически тянулся из нестабильно репозитория?
К примеру: у меня stretch, а я хочу взять php из sid, одну софтину не сложно установить, а что если мне нужно взять из сида 15 пекетов?
Яркий пример: хочу поставить панель управления хостингом веста, но хочу что бы php, vsftpd, mariadb и nginx потянулись из sid. как это организовать?
ну nginx и mariadb можно взять и официальный реп, а что на счёт другого софта..?? надеясь мой вопрос понятен.
Vesta nginx ставит с другого репозитория, про остальные, я б не спешил - скрипты управления для разных версий могут отличаться. В результате поимеете проблемы.
Знатоки Линукса и разработчики оных программ считаются (непонятно кем правда) прямо гуру программирования, но вот сделать одну единственную программу для установки программ без всей этой головной боли в линуксе никто не в состоянии. Это как понимать? Установка любой ерунды выливается в танцы с бубнами. Учитесь у мелкомягких.
НОРМАЛЬНО ТАМ ВСЁ
->Кенкеге
Поскольку речь о Дебиан, то головные боли от битья головой в бубен мучают тех малосведущих граждан, которые не знают о существовании Synaptic