При установке пакетов с помощью Ubuntu Software Center или таких утилит командной строки, как пакеты apt или apt-get загружаются из одного или нескольких репозиториев apt. Хранилище APT — это сетевой сервер или локальный каталог, содержащий пакеты deb и файлы метаданных, которые доступны для чтения инструментам APT.
Хотя в репозиториях Ubuntu по умолчанию доступны тысячи приложений, иногда вам может потребоваться установить программное обеспечение из стороннего репозитория.
В этой статье мы покажем вам два способа добавления репозитория apt в системы Ubuntu и Debian. Первый способ — использование команды add-apt-repository, а второй — ручное добавление хранилища в текстовом редакторе.
В Ubuntu и всех других дистрибутивах на основе Debian программные репозитории apt определяются в файле /etc/apt/sources.list или в отдельных файлах в каталоге /etc/apt/sources.list.d/.
Имена файлов репозитория внутри каталога /etc/apt/sources.list.d/ должны заканчиваться на .list.
Общий синтаксис файла /etc/apt/sources.list принимает следующий формат:
deb http://repo.tld/ubuntu distro component...
Формат файлов в каталоге /etc/apt/sources.list.d/ такой же, как и для обычного файла sources.list.
Большинство репозиториев предоставляют открытый ключ для аутентификации загруженных пакетов, которые необходимо загрузить и импортировать.
Чтобы иметь возможность добавить или удалить хранилище, вы должны войти в систему как пользователь с доступом sudo или root.
Обычно инструкции о том, как включить определенный репозиторий, включены в документацию программного обеспечения.
add-apt-repositoryскрипт Python, который позволяет вам добавить репозиторий APT /etc/apt/sources.list в отдельный файл в каталоге /etc/apt/sources.list.d. Команду также можно использовать для удаления уже существующего хранилища.
Если эта опция add-apt-repository недоступна в вашей системе, вы получите сообщение об ошибке «add-apt-repository command not found».
Утилита add-apt-repository входит в комплект software-properties-common. Для его установки выполните следующие команды:
sudo apt updatesudo apt install software-properties-common
Основной синтаксис команды add-apt-repository следующий:
add-apt-repository [options] 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 [arch=amd64] 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 [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Персональные архивы пакетов (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 [ENTER] to continue or Ctrl-c to cancel adding it.
Открытый ключ репозитория PPA будет автоматически загружен и зарегистрирован.
После добавления PPA в вашу систему вы можете установить пакеты репозитория:
sudo apt install ffmpeg
Команда apt установит пакет и все его зависимости.
Если вы хотите лучше контролировать организацию ваших источников, вы можете вручную отредактировать файл /etc/apt/sources.list и добавить в него строку хранилища apt.
Для демонстрации мы включим репозиторий CouchDB и установим программное обеспечение. CouchDB — это бесплатная отказоустойчивая база данных NoSQL с открытым исходным кодом, поддерживаемая Apache Software Foundation.
Чтобы добавить репозиторий, откройте файл sources.list в текстовом редакторе :
sudo nano /etc/apt/sources.list
Добавьте строку хранилища в конец файла:
deb https://apache.bintray.com/couchdb-deb bionic main
Вместо того, чтобы редактировать файл в текстовом редакторе, вы можете использовать следующую команду для добавления строки репозитория к файлу sources.list:
echo "deb https://apache.bintray.com/couchdb-deb $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list
$(lsb_release -cs) напечатает кодовое имя Ubuntu. Например, если у вас Ubuntu версии 18.04, команда напечатает bionic.
Другой вариант — создать новый файл репозитория в каталоге /etc/apt/sources.list.d/.
При ручной настройке хранилища вам также необходимо вручную импортировать открытый ключ хранилища в вашу систему. Для этого можно использовать либо wget или curl:
curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -
Команда выше должна вывести OK, что означает, что ключ GPG был успешно импортирован, и пакеты из этого хранилища будут считаться доверенными.
Перед установкой пакетов из недавно добавленного репозитория вы должны обновить индекс пакетов:
sudo apt update
После обновления индекса пакета вы можете установить пакеты из недавно добавленного репозитория:
sudo apt install couchdb
Мы показали вам, как добавить подходящие репозитории в Ubuntu. Те же инструкции применимы к любому дистрибутиву на основе Debian, включая Kubuntu, Linux Mint и Elementary OS.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.
при установке убунту твик терминал выдает ошибки,ни как не установить и 4 пакета не обновляются поможешь?в линуксе не шарю