Что такое репозиторий линукс

Обновлено: 06.07.2024

Что такое репозитории в Linux? Репозиторий — место для хранения и поддержки данных.

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

Какие бывают репозитории в Linux?

Существует 2 типа репозиториев: официальные и неофициальные.

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

  • Main – основное абсолютно бесплатное программное обеспечение;
  • Restricted – несвободное программное обеспечение;
  • Universe – бесплатное программное обеспечение;
  • Multiverse – несвободное программное обеспечение.

Причем, все 3 типа, кроме Multiverse, официально поддерживаются дистрибутивом, а Universe поддерживается сообществом дистрибутива.

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

Например, в Ubuntu дополнительными служат PPA-репозитории.

PPA (Personal Package Archive) – это персональное место хранения разработчика, в котором собраны пакеты их программ, которые еще не добавлены в основной.

КАК ДОБАВИТЬ РЕПОЗИТОРИЙ

Для этого приведем самый простой способ — воспользоваться утилитой mintsources. Данная утилита имеет графический интерфейс и располагается

по адресу: Меню → Система → Источники приложений. Далее подробно разберем настройку как официальных, так и посторонних репозиториев.

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

  • Репозитории исходного кода— внесение изменений в исходный код Linux Mint. Если вы не собираетесь заниматься подобным, лучше оставить значение как есть на Off.
  • Символы отладки— опция подойдет для разработчиков Линукс Минт. Если вы обычный пользователь, также оставить настройку как есть.
  • Нестабильные пакеты (romeo)— здесь доступны пока не прошедшие тестирование готовые пакеты. Обычно предназначены для бета-тестировщиков Линукс. Если вы к ним не относитесь, оставляем значение ползунка по умолчанию в состоянии Off.

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

Символы отладки

В начале список дополнительных репозиториев пустой.

— Адрес выбранной программы имеет следующий вид: ppa:danielrichter2007/grub-customizer. Вводим его в поле для ввода — и нажмём ОК.

Мы рассмотрели, как добавить новый linux репозиторий. Теперь у вас появилась возможность добавлять любые репозитории самостоятельно

Репозитории исходного кода

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

Установка приложений в Linux Mint осуществляется с помощью графического менеджера программ. Пользователи Линукс встречаются с проблемой, что обновление пакетов в официальных репозиториях происходит крайне редко.

На заметку! В случае, если вам важно получать последние обновления, советуем установить со сторонних источников, например, PPA.

  • Для установки скачиваем пакет с официального сайта
  • Появится окно, соглашаемся и сохраняем файл
  • Выбираем загруженный файл и указываем открыть папку со скачанный файлом
  • Обычно все загруженные файлы сохраняются в домашней директории пользователя в папке «Загрузки»
  • Щелкаем правой кнопкой мыши на значке и выбираем «Открыть с помощью Центр приложений»
  • Далее в открывшемся окне нажимаем «Установить»
  • Запустится процесс установки. Дожидаемся завершения
  • Для загрузки дополнительных программ нам важно получить дополнительные привилегии. Для этого вводим пароль
  • Затем нажимаем кнопку «Аутентифицировать»
  • После завершения установки вводим в поле поиска название нужной программы
  • Щелкаем по значку программы
  • Далее принимаем условия использования
  • Затем откроется окно приложения.

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

Мы сегодня рассмотрели, что такое репозитории, их виды, способы добавления репозиториев для официальных и дополнительных типов. А также пошагово разобрали, как установить программу из пакета. Надеюсь статья была Вам максимально полезна. Удачи!

Всем привет! Сегодня я расскажу о том, что такое репозитории в Linux, для чего они нужны, какие виды репозиториев бывают, а также покажу, как работать с этими репозиториями, и какие инструменты для этого используются.

Что такое репозитории в Linux

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

Углубляться в дебри мы не будем, но саму концепцию рассмотрим.

На заметку! Новичкам рекомендую почитать мою книгу «Linux для обычных пользователей» – в ней я подробно рассказываю про основы операционной системы Linux и как пользоваться этой системой без командной строки

Давайте обо всем по порядку.

Что такое пакет в Linux?

В Windows программы обычно распространяются в виде exe файлов или в каком-нибудь специально упакованном формате. В Linux программы распространяются в виде пакетов.

Пакет в Linux – это своего рода дистрибутив программы, набор необходимых файлов, которые необходимы для работы этой программы, упакованный в специальный формат.

Существуют два популярных формата пакетов:

  • DEB – формат файлов пакетов, использующихся в дистрибутиве Debian и во всех основанных на нем дистрибутивах, таких как: Ubuntu, Linux Mint и другие;
  • RPM – менеджер пакетов, использующийся в дистрибутиве Red Hat, а также во многих других популярных дистрибутивах, таких как: openSUSE, CentOS, Mageia и других.

Как устанавливаются программы в Linux?

Все программы, а точнее пакеты, устанавливаются в систему с использованием централизованного метода, т.е. из единой точки, такой точкой может быть либо инструмент с графическим интерфейсом, часто его называют «Менеджер приложений», либо традиционный для Linux способ, утилиты командной строки (терминала).

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

Ярким примером использования такой концепции представлен на всех смартфонах (ведь Android это Linux!), где для установки приложения Вы просто открываете менеджер программ (например, Play Маркет), находите нужную программу, и нажимаете установить и все!

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

Что такое репозиторий в Linux?

Если нам не нужно самостоятельно скачивать дистрибутивы программ с интернета, то как тогда они попадают на компьютер?

И чтобы сразу внести ясность, на компьютерах пакеты программ не хранятся, менеджер скачивает их автоматически во время установки.

А откуда тогда менеджер скачивает все эти пакеты? А скачивает он их со специальных серверов в интернете (поэтому для установки программ в Linux требуется интернет), которые называются – репозиториями.

Репозитории – это сервера в интернете, на которых хранятся файлы пакетов приложений Linux и другая сопутствующая информация.

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

Официальный репозиторий дистрибутива по умолчанию подключен, и когда Вы пытаетесь найти и установить программу, «Менеджер приложений» считывает информацию о доступных пакетах в репозитории и выдает ее Вам.

Таким образом, когда открываете менеджер приложений, он обращается к репозитоирию, узнает, какие пакеты есть, и выдает этот список Вам, а Вы, соответственно, выбираете и нажимаете кнопку установить, а все остальное делает менеджер.

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

Какие бывают репозитории в Linux?

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

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

  • Main – здесь расположено основное, полностью бесплатное программное обеспечение;
  • Restricted – проприетарное программное обеспечение, официально поддерживаемое дистрибутивом;
  • Universe – бесплатное программное обеспечение, официально поддерживаемое сообществом дистрибутива;
  • Multiverse – проприетарное программное обеспечение, не поддерживаемое дистрибутивом.

Если программы, которую Вы искали, нет в официальном репозитории, то Вы можете подключить дополнительный, в котором есть нужная Вам программа.

Например, дополнительные репозитории в Ubuntu и основанных на нем дистрибутивах называются PPA-репозитории.

PPA (Personal Package Archive) – это персональный репозиторий разработчика конкретной программы, где он хранит пакеты своих программ, которые еще не включены в основной репозиторий дистрибутива.

Как работать с репозиториями в Linux?

Если репозиторий – это некий сервер в интернете, на котором хранятся программы, то, чтобы к нему обратиться за необходимой нам программой, мы должны знать адрес этого сервера. Один из самых удобных способов обращения к ресурсам в интернете – это использовать веб протоколы взаимодействия, таким образом, по факту адрес репозитория выглядит, как обычный URL-адрес сайта.

Для того чтобы система знала и помнила, куда обращаться за пакетами (программами), она хранит все адреса репозиториев в специальном файле sources.list, который расположен в каталоге в /etc/apt. И вся работа с репозиториями в Linux заключается в добавлении и удалении адресов репозиториев.

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

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

В любом случае весь процесс работы с репозиториями сводится к редактированию файла sources.list (а также созданию дополнительных подобных файлов), который, кстати, Вы можете отредактировать и обычными утилитами для работы с текстовыми файлами.

Обычно компонент с графическим интерфейсом для работы с репозиториями называется «Источники приложений», он доступен из основного меню операционной системы.

Например, в Linux Mint он выглядит следующим образом

Скриншот 1

Для управления репозиториями в терминале используется команда add-apt-repository, так, например, для добавления PPA-репозитория команда будет выглядеть следующим образом.

где, ppa:atareao/telegram – это PPA-репозиторий для установки программы Telegram.

Более подробно про то, как добавлять и удалять репозитории в Linux, я расскажу в следующих материалах. Поэтому следите за выходом новых статей в моих группах в социальных сетях: ВКонтакте, Facebook, Одноклассники, Twitter и Tumblr. Подписывайтесь, и Вы не пропустите выход нового материала!

На сегодня это все, надеюсь, материал был Вам полезен и интересен, удачи Вам, пока!

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

Уже огромное количество проектов активно использует этот сервис, в будущем оно непременно возрастёт. Однако на данный момент весь сервис доступен только на английском языке, что не очень удобно для пользователей, плохо с ним знакомых. Кроме того, для грамотного добавления ppa в систему надо выполнить ряд нетривиальных действий.

Поиск нужного PPA и его описания


Добавление PPA в систему

Способ для Ubuntu 9.10 и более новых версий


Начиная с версии 9.10 в Ubuntu была улучшена интеграция с Launchpad. Теперь на страницах всех репозиториев есть короткая инструкция по быстрому добавлению источника приложений в систему. В этой инструкции интересует часть выделенная жирным шрифтом. Скопируйте эту часть и воспользуйтесь одним из ниже приведенных способов добавления репозитория.

Графический способ

GNOME: Откройте Центр приложений Ubuntu. Откройте пункт меню Правка→Источники приложений… . Перейдите на вкладку Другое ПО и нажмите Добавить… .

KDE: Откройте Управление программами→Настройки→Редактировать источники программ, перейдите на вкладку со списком подключенных репозиториев и нажмите Добавить.

В появившееся окно вставьте скопированную с сайта строку. После этого обновите список пакетов.

Консольный способ

В Ubuntu 9.10 и выше описания репозитариев не добавляются в общий файл /etc/apt/sources.list, а хранятся отдельными файлами в каталоге /etc/apt/sources.list.d/

Универсальный метод добавления

Для корректного добавления PPA в систему необходимо выполнить два действия:

Добавить ссылку на репозиторий в системный список источников пакетов.

Второй пункт нужен для того, чтоб система установки пакетов не ругалась на наличие ненадёжных источников и именно для него нам нужно было попасть на страницу с описанием PPA.

Нажмите на Technical details about this PPA для того, чтобы увидить детальную информацию о PPA:


Launchpad автоматически определяет вашу версию Ubuntu. Если этого не случилось, выбирите свою версию в выпадающем списке.

Две строчки рамке - это две строчки с описанием репозиториев (первая для бинарных пакетов, вторая для исходных кодов), которые надо добавить к списку источников программного обеспечения в вашей системе. О том, как это делать см. в статье про репозитории. Если вашей версии Ubuntu нет в списке, значит, данный PPA её не поддерживает по каким-то причинам. Возможно, ваша версия Ubuntu слишком старая, тогда вам необходимо обновиться до более свежей версии, либо наоборот - вы используете нестабильную версию, ещё официально не вышедшую. Кроме того, разработчик по каким-то причинам может прекратить поддержку своего PPA и больше не добавлять туда свежие пакеты. В любом случае, все вопросы по содержанию PPA отправляйте той команде или тому человеку, кто поддерживает данный PPA.

Однако для корректной работы с подключённым PPA необходимо импортировать его ключ в систему. Ключ - это часть строчки «Signing key» после слеша. Рядом есть ссылка «What is this?», при нажатии на которую появиться краткая справка о том, что такое подпись репозитория и как импортировать ключ в систему. К сожалению она на английском, однако в импортировании ключа нет ничего сложного: вам всего лишь надо выполнить в консоли команду

заменив «12345678» той строчкой, которая написана после «/» в строке «Signing key». Подробнее про подпись репозиториев см. в общей статье про репозитории.

Теперь можно обновить список пакетов и устанавливать программы из подключённого PPA.

Теперь я чуть-чуть поподробней расскажу про то, что же такое на самом деле репозитории и как ими пользоваться. Репозитории - это архивы программ для Ubuntu, то есть deb-пакетов. Каждый репозиторий содержит список пакетов, в нём хранящихся, с указанием версий, зависимостей и прочей необходимой информации. Система, подключая репозиторий, скачивает это список (часто называемый, как вы уже знаете, индексом) и сохраняет в специальном месте. В дальнейшем, когда вы, к примеру, просите систему установить какую-нибудь программу, она просматривает все сохранённые списки и ищет, откуда можно загрузить самую актуальную версию программы и все её зависимости. Периодически система автоматически просматривает все прописанные в ней репозитории и скачивает новые индексы.

Механизм весьма простой. Он имеет несколько основных преимуществ: во-первых, вы можете добавить сколько угодно репозиториев, т.е. источников программного обеспечения, система автоматически всё просмотрит и учтёт, вам же надо будет просто указать, какую программу вы хотите поставить и всё, дальше система всё сделает за вас. Во-вторых, система автоматически обновляет индексы, благодаря этому при выходе новой версии установленной у вас программы система сообщит вам об этом и предложит скачать и установить её. Ну и в-третьих, кроме удобства в использовании, механизм репозиториев позволяет вам обезопасить себя от различного вредоносного программного обеспечения. Если вы добавляете в систему только репозитории, которым доверяете, и не устанавливаете deb пакеты напрямую, скачивая их с сомнительных сайтов, а пользуетесь только внутренней системой установки программ Ubuntu, то вы гарантированно не получите никакой вредоносной программы, поскольку все пакеты будут получены из доверяемых источников.

Управление репозиториями

Для управления репозиториями предназначена программа «Источники приложений», находящаяся в меню Система→Администрирование. Для запуска этого приложения вам естественно понадобятся административные привилегии 1) . Кстати, в это же приложение можно попасть из Synaptic, выбрав пункт «Репозитории» меню «Настройки», а так же из Центра приложений, выбрав пункт «Источники приложений…» меню «Правка».

Первая вкладка, «Программное обеспечение Ubuntu», позволяет управлять основными системными репозиториями 2) . Тут всё должно быть расставлено как на скриншоте:


Каждое поле позволяет подключить один из основных репозиториев для вашей версии Ubuntu. Если вы хотите иметь доступ ко всему программному обеспечению, вам нужно поставить все галочки, кроме исходного кода (конечно, если только он вам зачем-то вдруг не понадобился).

Следующая вкладка, «Другое ПО», позволяет подключать к системе дополнительные репозитории:


Она-то и является, пожалуй, самой интересной для пользователя. Итак, для подключения к системе дополнительного источника приложений просто нажмите кнопку «Добавить» и в открывшемся окне введите нужную APT-строку 3) , которую можно узнать на странице описания репозитория:


Все внесённые за время работы в программе изменения в источники приложений можно легко отменить, нажав на кнопку «Восстановить» внизу окна:


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


Если у вас есть соединение с интернетом, то лучше всегда соглашайтесь. Без индексных файлов система не будет корректно работать с репозиториями, а значит вы не будете получать информацию об обновлениях и не сможете устанавливать новые приложения. После нажатия на кнопку «Обновить» запустится процесс обновления индексов:


Ну а после его завершения вы сможете воспользоваться вашим любимым инструментом управления пакетами для установки новых приложений из только что добавленного репозитория. Вообще не забывайте про индексные файлы. Всегда, когда вы вносите какие-то изменения в списки подключённых репозиториев, сразу же обновляйте индексы. Иначе пакетная система Ubuntu просто не увидит ваших правок и будет считать, что всё осталось так, как было 4) .

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

Безопасность репозиториев и управление ключами

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

Поэтому при добавлении репозитория всегда так же импортируйте в систему его ключ. Ключ репозитория - это простой текстовый файл специального вида, обычно найти его можно на странице описания репозитория. Для добавления ключа в систему воспользуйтесь вкладкой «Аутентификация», на ней есть кнопка «Импортировать файл ключа…», она-то вам и нужна:


Однако скачивать файл ключа с сайта с описанием репозитория и потом его вручную добавлять в систему очень неудобно, поэтому есть более простой механизм, предполагающий ввод всего одной команды в терминале 5) . Команды бывают самыми различными, однако самый простой и технически верный способ выглядит так:

Эта команда запросит ключ 12345678 с сервера ключей 6) Ubuntu и добавит его в систему. Собственно, имя ключа всегда выглядит как 8 буквенно-цифровых символов, поэтому если вам дано только оно, то для импортирования ключа вы вполне можете использовать эту команду, изменив 12345678 на нужное значение.

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

Добавление репозитория Medibuntu

Есть такой очень популярный репозиторий для Ubuntu, который называется Medibuntu. Он содержит различные мультимедия-компоненты, которые по каким-либо причинам не могут быть включены в официальные репозитории. Например, в нём есть бесплатные, но тем не менее защищённые достаточно строгими лицензиями, Google Earth и Adobe Reader 7) .


Естественно, именно это она и делает 8) . Вот так. Вы спросите, какое же всё это имеет отношение к описанному выше? На самом деле самое непосредственное, хотя это с первого взгляда и не видно. Я привёл этот пример лишь затем, чтобы показать вам, что способов добавления репозитория в систему бесчисленное множество 9) . Поэтому если на сайте репозитория приведена инструкция по добавлению его в систему, то просто следуйте ей, а если же даны только APT-строка и ключ, то можете воспользоваться описанной мной в предыдущем разделе последовательностью действий.

Напоследок хочется обратить ваше внимание на вкладку «Обновления» приложения управления источниками программного обеспечения:


На ней содержатся различные настройки автоматического отслеживания и установки обновлений. Всё, что я хочу сказать про это вкладку, так это то, что не стоит включать proposed и backports обновления, если вы не понимаете, что это такое и для чего они нужны 10) .

Репозитории на компакт-дисках

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

Поэтому существует способ создания репозитория не в интернете, а на локальных источниках данных, например, на CD и DVD дисках 12) . Фактически, что такое репозиторий? Это сборник пакетов с индексом, имеющий некоторый адрес. Поэтому если вы соберёте нужные пакеты где-то на вашем компьютере, создадите индекс и в качестве пути будете использовать путь до основной папки с вашими пакетами, то это тоже будет репозиторий. И самое замечательное в этом то, что Ubuntu сможет работать с вашим репозиторием с помощью штатных средств управления пакетами. Это немного упрощённая схема, но, надеюсь, общая концепция понятна.

Поэтому если у вас нет интернета, то самым разумным решением проблемы с установкой новых программ для вас являются, пожалуй, так называемые срезы репозиториев. Фактически это содержимое стандартных интернет-репозиториев Ubuntu, записанное на диски и оформленное так же в виде репозитория. К сожалению, централизованного источника распространения срезов нет, однако вы можете поискать их на торрент-трекерах или же у друзей.

Пожалуй, на этом знакомство с механизмом подключения дополнительных источников программного обеспечения можно закончить. Теперь же я немного расскажу про самое популярное место размещения сторонних репозиториев и, соответственно, программ для Ubuntu:

Читайте также: