Добавление и удаление репозиториев в Убунту

Сценарии закачек Synaptic

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

Synaptic автоматически создаёт простые bash-скрипты, которые позволят скачивать и пакеты, и зависимости. Чтобы сгенерировать их, вам нужно всего лишь отметить пакеты, которые хотите установить, и выбрать пункт меню, который создаст сценарий. Этот способ хорош тем, что предоставляет пользователю графическую оболочку для выбора необходимых пакетов и гарантирует скачивание именно тех зависимостей, которые нужны.

Этот вариант хорошо подойдёт пользователям с перебоями интернета: они смогут без проблем использовать дополнительные репозитории и делать всё почти так же, как если бы подключение у них было стабильным. Однако, чтобы всё работало правильно, на автономной машине должны быть обновлённые списки пакетов. Synaptic и APT используют их, чтобы определять, какие зависимости нужно скачивать, и какие версии программ доступны. Если вы когда-нибудь запускали apt-get update, вы должны были видеть, как загружаются файлы. Это и есть списки пакетов. Конечно, вы можете скачивать их вручную по ссылкам, которые не удалось загрузить во время обновления, но это очень неудобно.

Скачивать пакеты, используя скрипты на подключённом к интернету компьютере, просто. Если там Linux, на котором есть установленный wget (обычно он уже установлен) — запустите скрипт с USB-устройства. В Windows вы можете использовать Firefox с плагином DownloadThemAll, чтобы получить файлы так же легко. Таким образом, вы скачаете пакеты на свою флешку, с которой можете установить их через GDebi или скопировать в /var/cache/apt/archives/, чтобы установить как обычно в aptitude или Synaptic.
APTonCD

Задача APTonCD — обеспечить резервное копирование уже скачаных пакетов и хранить их на CD- или DVD-диске. Это крайне удобный инструмент и для простых пользователей, и для системных администраторов. С APTonCD копирование производится через графический интерфейс. Когда процесс завершён, пользователь получает диск, с которым APT работает, как с локальным репозиторием.

Чтобы использовать APTonCD, вам нужен подключенный к интернету компьютер с той же версией Ubuntu, что и на автономном компьютере. Если у вас нет доступа к такой же версии Ubuntu, но есть компьютер с двумя CD-приводами, можете загрузить LiveCD нужной версии, или, если их нет, использовать Unetbootin для создания загрузочной флешки. В любом случае, вам нужна та же версия Ubuntu и чистый CD-ROM, чтобы записать диск APTonCD. APTonCD находится в репозитории Ubuntu Universe, поэтому, если он доступен, вы можете установить APTonCD с помощью Synaptic или aptitude.

После того, как вы установили APTonCD, использовать его — проще некуда. Любой из существующих пакетов, скачанных в этой системе, может быть записан на CD. Просто установите нужные пакеты в запущенной системе и запишите их на CD для установки на автономный компьютер. Когда вы вернётесь к нему, просто вставьте диск в привод, и он будет распознан как репозиторий APT. Теперь вы можете установить программы с диска с помощью Synaptic или aptitude как обычно. Используя APTonCD, вы заодно получите резервную копию ваших пакетов, и вам не придётся скачивать их заново, если что-нибудь произойдёт с установленной у вас системой — они уже есть у вас на диске.

Различные способы сделать то же самое

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

заменяет обновить список репозиториев

В некоторых руководствах используется другой способ добавления репозиториев. Возьмем, к примеру, браузер Brave. На его веб-сайте рекомендуется следующий метод.

С первой строчкойНекоторые программы скачиваютсяЯ знаю, что нам понадобится для установки

На второй строчкеКлюч подтверждения загружен и сохраненномер подлинности репозитория.

Нас интересует третий

В этом случае репозиторий не сохраняется в sources.list. создается другой файл называется short-browser-release.list, и в нем написан репозиторий, который сообщит диспетчеру пакетов, откуда выполнять установку.

Последние две строки обновляют список репозиториев и устанавливают программу.

Основные репозитории для Ubuntu, Mint и им подобных

Данный репозиторий могут использовать не только пользователи Ubuntu, но так же и пользователи Kubuntu, Xubuntu, Lubuntu и других систем, таких как LinuxMint, Runtu и д.р.

Центральный репозиторий Ubuntu

Выполнить в командной строке для добавления репозитория: 

sudo add-apt-repository “deb http://archive.canonical.com/ $(lsb_release -sc) partner”

!!! Внимание! С PlayDeb и GetDeb какая-то фигня происходит !!!

Похоже, PlayDeb переехал на GitHub

Ubuntu games

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

sudo add-apt-repository ppa:ubuntugames/games

Добавление репозиториев с add-apt-repository

Основной синтаксис команды add-apt-repository следующий:

add-apt-repository  repository

Где repository может быть либо обычная запись репозитория, которую можно добавить к файлу sources.list наподобие, deb http://repo.tld/ubuntu distro component либо репозиторий PPA в формате ppa:<user>/<ppa-name>.

Чтобы увидеть все доступные опции типа команды add-apt-repository man add-apt-repository в вашем терминале.

По умолчанию в Ubuntu 18.04 и новее add-apt-repository, он также обновляет индекс пакета, если импортирован открытый ключ репозитория.

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

Допустим, вы хотите установить MongoDB из своих официальных репозиториев.
Сначала импортируйте открытый ключ репозитория:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

Добавьте репозиторий MongoDB, используя команду ниже.

sudo add-apt-repository 'deb  https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Репозиторий будет добавлен в файл sources.list.

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

sudo apt install mongodb-org

Если по каким-либо причинам вы хотите удалить ранее включенный репозиторий, используйте параметр –remove:

sudo add-apt-repository --remove 'deb  https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

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

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

При добавлении репозитория PPA, команда add-apt-repository создает новый файл в каталоге /etc/apt/sources.list.d/.

Например, чтобы добавить PPA Jonathon F, который предоставляет FFmpeg версии 4.x, вы должны выполнить:

sudo add-apt-repository ppa:jonathonf/ffmpeg-4

При появлении запроса нажмите Enter, репозиторий будет включен.

Press  to continue or Ctrl-c to cancel adding it.

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

После добавления PPA в вашу систему вы можете установить пакеты репозитория:

sudo apt install ffmpeg

Команда apt установит пакет и все его зависимости.

Как подключить?

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

Сразу стоит отметить тот факт, что в некоторых репозиториях, помимо тех пакетов, которые вам нужны, могут находиться также всевозможные экспериментальные сборки разного программного обеспечения, включая также ядра, которые содержат в себе Linux-репозитории. Так как версия таких пакетов в преимущественном большинстве случаев выше по сравнению с теми, которые используете вы, “Менеджер обновлений” может попробовать самостоятельно обновить систему. Он сделает это через бесплатные репозитории, что может нанести повреждения вашей системе. Именно по этой причине вам нужно в любом случае внимательно читать описания подключаемого хранилища, а также ту информацию, которая находится в “Менеджере обновлений”.

Возможные ошибки

Рассмотрим наиболее популярные ошибки, которые возникают при добавлении и обновлении репозиториев.

Репозиторий не содержит файла Release

Текст ошибки, по идее, дает готовый ответ. В репозитории нет обязательного файла Release. Но суть в том, что он скорее всего есть. Дело тут чаще всего в том, что вы добавили к себе репозиторий, который не содержит указанной вами ветки. К примеру, вы добавили репозиторий в дистрибутив Buster, а в репозитории нет поддержки этого дистрибутива. Предыдущие есть, а этого нет.

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

Секции

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

  • Main – абсолютно свободное программное обеспечение, которое поддерживается компанией Canonical.
  • Restricter – проприетарное программное обеспечение, которое включает в себя в основном различные драйверы устройств. Все утилиты также поддерживаются компанией Canonical.
  • Universe – также свободное программное обеспечение, которое официально не поддерживается Canonical, но при этом контролируется сообществом пользователей операционной системы.
  • Multiverse – проприетарное ПО, не имеющее поддержки компании Canonical.

Прочие

Wine

sudo add-apt-repository ppa:ubuntu-wine/ppa

HandBrake

sudo add-apt-repository ppa:stebbins/handbrake-releases 

WinUsb

sudo add-apt-repository ppa:colingille/freshlight

NodeJS

sudo add-apt-repository ppa:chris-lea/node.js

Dockysudo add-apt-repository ppa:docky-core/ppa

Javasudo add-apt-repository ppa:webupd8team/java

SVNsudo add-apt-repository ppa:svn/ppa

AdobeAir

sudo add-apt-repository ppa:dajhorn/adobeair

Это репозиторий Adobe Air 64 битная версия. Устанавливать репозиторий через Synaptic.

Burg 

sudo add-apt-repository ppa:bean123ch/burg

Это репозиторий украшателя загрузчика GRUB — Burg

Haguichi 

sudo add-apt-repository ppa:webupd8team/haguichi

Репозиторий пакета haguichi, который служит для создания частных виртуальных сетей.

PPA Manager 

sudo add-apt-repository ppa:webupd8team/y-ppa-manager

Это репозиторий PPA Manager — графический способ поиска нужного пакета в PPA-репозиториях.

Wine 

sudo add-apt-repository ppa:ubuntu-wine/ppa

Репозиторий Wine, который служит для запуска приложений Windows в среде Linux.

Zip

sudo add-apt-repository ppa:frol/zip-i18n

Репозиторий архиватора ZIP.

Recoll 

sudo add-apt-repository ppa:recoll-backports/ppa

Репозиторий программы Recoll, которая предназначена для полнотекстового поиска на компьютере.

Autoswitcher 

sudo add-apt-repository ppa:hughescih/ppa

Это репозиторий приложения Autoswitcher, компьютер сам будет переключаться на монитори\проектор при подключении.

Nautilus Elementary

sudo add-apt-repository ppa:elementaryart/elementary-dev

Это репозиторий Nautilus Elementary — дополнение к Nautilus, которое преображает его вид и делает работу с ним более удобной и быстрой.

SteadyFlow 

sudo add-apt-repository ppa:sikon/steadyflow

Это репозиторий менеджера закачек Steadyflow

Gxeneur 

sudo add-apt-repository ppa:andrew-crew-kuznetsov/xneur-stable

Репозиторий программы автоматической смены раскладки клавиатуры Gxneur, аналог Punto Swischer в Windows.

Zram

sudo add-apt-repository ppa:shnatsel/zram

Это репозиторий скрипта zram, который перемещает файл подкачки swap в оперативную память. Как оптимизировать файл подкачки?

Tox — альтернатива Skype (ну почти, для переписки и видеозвонка один-на-один достаточно)

Как исправить Репозиторий не содержит файла release Ubuntu?

Файл Release – один из самых важных файлов для работы репозитория в Ubuntu. Когда утилита apt обновляет список пакетов, она открывает адрес репозитория и пытается прочитать файл Release. В нем содержится основная информация о репозитории, а также адреса файлов packages.gz, в которых находятся списки пакетов, ссылки где их можно найти и контрольные суммы. Если этого файла нет, то репозиторий подключить невозможно.

Причин этому может быть несколько. Либо репозиторий заброшен и больше не развивается, либо вы его неправильно настроили. В терминале эти ошибки обычно не мешают, а вот при попытке обновления через графический интерфейс могут возникнуть проблемы.

1. Нет ветки репозитория для вашей версии Ubuntu

Сначала убедитесь, что вы используете правильные репозитории для своего дистрибутива. Например, утилита apt-add-repository при добавлении PPA репозитория добавляет к его адресу кодовое имя дистрибутива. У репозитория нет отдельной ветки для вашей системы, то он не сможет быть добавлен. Нужно вручную указать то, кодовое имя, для которого есть ветка.

Например, если вы пытаетесь добавить репозиторий ubuntu-audio-dev стандартным способом в Ubuntu, то получите ошибку:

Зайдите на страницу этого PPA репозитория на Launchpad и проверьте есть ли версия для вашего дистрибутива. Как видите, здесь версии для Ubuntu 18.04 Bionic нет, есть только для Ubuntu 13.04 Raring:

Конечно, такое использование репозиториев не очень безопасно, но если вам очень нужно его добавить, то можно найти файл репозитория в /etc/apt/sources.list.d/ и заменить в нем bionic на raring:

Теперь, репозиторий загружается нормально

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

2. Вы используете старую версию системы

Также подобную ошибку вы можете получать если используете старую, уже не поддерживаемую версию Ubuntu. Дело в том, что после завершения срока поддержки, текущие репозитории пакетов переносятся на другой сервер – old-releases.ubuntu.com. Чтобы устанавливать программное обеспечение в этих дистрибутивах нужно добавить заменить все адреса archive.ubuntu.com и security.ubuntu.com на old-releases.ubuntu.com/ubuntu в файле /etc/apt/sources.list:

Только тогда нужные пакеты будут доступны. Это все касается не только Ubuntu, но и других дистрибутивов, только кодовые имена там будут другими.

3. Удаление не работающих репозиториев

Если таким способом ошибку устранить не удалось, остается только удалить проблемный репозиторий, чтобы он не выводил каждый раз ошибки и не мешал обновлению через графический интерфейс. Отключить репозиторий можно через графический интерфейс. Для этого откройте окно “Программы и обновления”:

Затем перейдите на вкладку “Другое ПО”:

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

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

Например:

Или еще можно удалить файл настроек репозитория из /etc/apt/sources.list.d/, но этот вариант не такой надежный, так, как в системе все еще останется ключ репозитория.

Где скачать программу?

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

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

Добавить новый repository в debian

Теперь от теории перейдем к практике. Давайте вручную добавим новый репозиторий в Debian. К примеру, нам нужно установить на сервер стабильную версию MariaDB. Для этого добавим ее репозиторий. Это можно сделать либо в файле sources.list, но лучше создать отдельный в sources.list.d. Назовем его MariaDB.list.

deb  http://mirror.mephi.ru/mariadb/repo/10.6/debian bullseye main
deb-src http://mirror.mephi.ru/mariadb/repo/10.6/debian bullseye main

После подключения репозитория, надо добавить его gpg ключ.

# curl -LsSO https://mariadb.org/mariadb_release_signing_key.asc
# chmod -c 644 mariadb_release_signing_key.asc
# mv -vi mariadb_release_signing_key.asc /etc/apt/trusted.gpg.d/

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

# apt update

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

# apt search mariadb-server

Как я уже говорил, для настройки нового репозитория, вы могли просто добавить эти же 2 строки с параметрами в sources.list напрямую. Разницы никакой нет.

Добавление репозиториев вручную

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

Для демонстрации мы включим репозиторий CouchDB и установим программное обеспечение. CouchDB — это бесплатная отказоустойчивая база данных NoSQL с открытым исходным кодом, поддерживаемая Apache Software Foundation.

Чтобы добавить репозиторий, откройте файл текстовом редакторе :

Добавьте строку репозитория в конец файла:

/etc/apt/sources.list

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

выведет кодовое имя Ubuntu. Например, если у вас Ubuntu версии 18.04, команда напечатает .

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

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

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

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

После обновления индекса пакетов вы можете устанавливать пакеты из только что добавленного репозитория:

Sublime Text 3

Sublime Text – кроссплатформенный текстовый редактор кода.

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

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

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

Sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install

Концепция установки программного обеспечения в Linux очень сильно отличается от Windows. Здесь тоже можно скачать программу на просторах интернета и просто запустить, ничего не устанавливая, но никто так не делает. Программы устанавливаются из надежных источников – официальных репозиториев поддерживаемых и обновляемых разработчиками дистрибутива или сообществом пользователей. Если в двух словах, то репозитории – это такие большие сборники программ, в котором они хранятся в специальном формате и могут быть автоматически скачены и установлены менеджером пакетов.

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

В основном репозитории Ubuntu можно поделить на два типа – официальные и репозитории сторонних разработчиков. В официальных репозиториях находятся только стабильные программы, причем их версии не будут обновляться, они могут получать только обновления безопасности. Сторонние репозитории ubuntu могут создаваться кем угодно и их автор может обновлять и добавлять программное обеспечение в репозиторий когда нужно. PPA репозитории Ubuntu созданы с целью упростить процесс создания сторонних репозиториев.

Каждый репозиторий поддерживает несколько веток. Первая группа веток – это версия дистрибутива. Для каждой версии дистрибутива – отдельное программное обеспечение.

Вторая группа веток более интересная. Дело в том что в Ubuntu есть несколько веток для различного рода программного обеспечения:

  • Main
    – основная ветка – стабильное официально поддерживаемое Canonical ПО
  • Restricted
    – официально поддерживаемое ПО распространяемое не под лицензией GPL
  • Universe
    – программы, поддерживаемые сообществом Ubuntu
  • Multiverse
    – ветка проприетарного программного обеспечения

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

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

Репозиторий и ПО

Пользователи операционных систем Windows или Mac OS привыкли к тому, что программное обеспечение поставляется в виде установочных файлов. Но 18 04 представляют собой пакеты.deb, содержащие программы и необходимые библиотеки. Они хранятся в репозиториях, к которым подключается пользователь перед установкой.

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

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

Заключение

Напоминаю, что данная статья является частью единого цикла статьей про сервер Debian.

Онлайн курс “DevOps практики и инструменты”

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

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

Поделитесь в социальных сетях:FacebookXВКонтакте
Напишите комментарий