Андрей Смирнов
Время чтения: ~14 мин.
Просмотров: 40

Список репозиториев для Ubuntu. Как добавить репозиторий в Ubuntu

После того как мы установили соединение с интернетом — мы получаем один из мощнейших инструментов решения проблем в Убунту — Гугл. Им придется пользоваться часто, так как далеко не все проблемы в Убунту решаются тривиально. В Убунту существует пакетная система. Каждый пакет — это часть определенного программного обеспечения. Устанавливая пакеты — мы устанавливаем новые программы, библиотеки, документацию и другие ресурсы. Репозитории — это хранилища пакетов. Так как мы настроили интернет — теперь мы можем скачивать все необходимое оттуда. Выберем внешние репозитории и параметры обновления. Открываем Источники приложений (Система->Администрирование->Источники приложений). Выбираем все основные репозитории. Кстати, занятно что он решил, что мой диск с Ubuntu 7.10 — это диск с Ubuntu 5.10. Если у вас не лимитированный трафик, лучше снять галочку с диска, чтобы постоянно не доставать его.d17e82a20a7ce2bae28a2249d0d93440.png Выбираем все сторонние репозитории.2d3346923c25f0a19a5f3248f9535425.png Настраиваем обновления так как вам удобнее.44e28059806e765d9a3d629a9f004c01.png Закрываем приложение. Открываем Локализации (Система->Администрирование->Локализации). Ставим галочку напротив Russian и выбираем аналогичный Основной язык. Нажимаем ОК.82455e40962085079513885c86afcb38.png Открываем Настройки клавиатуры (Система->Параметры->Клавиатура). Скорее всего, у вас обычная клавиатура Windows. 6e8f0adb383abd757aec4a2d35cf4932.png Если в открывшемся списке раскладок есть «Россия Клавиатура Windows», то все в порядке. Если стоит не та русская — удаляем и добавляем новую:16306afeacbcf3d5fc4e8527dfcb812a.png Дальше настроим сочетание клавиш для смены раскладки:1cf380de9c10226b382d54b7a9dee194.png Я рекомендую выбирать Alt+Shift. После пяти лет использования Ctrl+Shift мне пришлось перейти на Alt+Shift. Почему? В Ubuntu и Windows разные реакции на нажатие клавиш при переключении раскладки. В Ubuntu раскладка переключается, когда мы нажимаем на клавишу, а в Windows — когда мы отпускаем клавишу. Получается, что при использовании Ctrl+Shift, мы теряем возможность использования комбинации Ctrl+Shift+Вправо/Влево (Выделение по словам). Если вы не используете сочетания клавиш начинающихся на Ctrl+Shift, то проблем нет. Чтобы программы могли отображать дату, валюту и многое другое на русском — им нужны русские локали. По умолчанию устанавливается локаль ru_RU.utf8. Для многого она подойдет, но не для всего (например, wine в некоторых конфигурациях, cedega). Открываем Терминал и пишем: Список всех установленных локалей можно получить командой:locale -a Запустить приложение в определенной локали можно командой:env LC_ALL=ru_RU.CP1251 (приложение) Запустить приложение в «обычной» английской локали можно командой:env LC_ALL=C (приложение) Если вы перебрались на Ubuntu с Windows, то, возможно, вы захватили с собой определенные документы, часть из которых может быть в текстовом формате. Текстовый редактор по умолчанию в Ubuntu — это gedit. Он может некорректно открывать текстовые файлы, сохраненные в Windows. Попробуем исправить положение. Запускаем (под запуском подразумевается выполнение команды в Терминале, либо через интерфейс выполнение, о котором мы поговорим в будущих статьях) программу gconf-editor:09032c176018e513168618958455ae45.png Открываем ветку /apps/gedit-2/preferences/encodings.532e4405b0024d8d44aff7e32ca7fe87.png Двойным щелчком по ключу auto_detected открываем его редактор. Если в списке нету WINDOWS-1251, то добавляем его. Выстраиваем кодировки в порядке: UTF-8, WINDOWS-1251,… (дальше не важно).44238f29f10e172f22ecbf09ce2087d1.png Если какое-то приложения некорректно работает с текстом — скорее всего для него можно выбрать кодировку. Поищите инструменты настроек и укажите им соответствующую. Помните, что кодировка Windows имеет два различных написания: WINDOWS-1251 либо CP1251.Не думал, что столько материала про локализацию вспомню, но, мне кажется, лучше сразу все настроить, чем потом ловить грабли. Если у вас есть дополнения — я с радостью улучшу статью. Руководство: Шагнуть назад, Шагнуть вперед, Содержание

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

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

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

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

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

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

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

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

Настройки репозиториев Ubuntu находятся в нескольких файлах в каталоге /etc/apt.

Все официальные репозитории записываются в файл репозиториев Ubuntu — /etc/apt/sources.list. Для каждого PPA репозитория создается отдельный файл в каталоге /etc/apt/sources.list.d/*

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

Управление репозиториями можно осуществлять с помощью утилиты настроек системы. Запустите Настройки системы, затем откройте Программы и обновления или сразу же запустите Программы и обновления из меню Dash:

ubuntu.png

На первой вкладке вы можете включить или отключить ветки официальных репозиториев (main, restricted …), а также выбрать ближайшее к вам зеркало:

ubuntu1.png

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

ubuntu2.png

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

Для добавления репозитория Ubuntu нажмите кнопку Добавить:

ubuntu3.png

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

ubuntu6.png

Apt строка репозитория имеет такой синтаксис:

debhttp://адрес_репозиторияверсия_дистрибутиваветки

Например:

deb http://ua.archive.ubuntu.com/ubuntu/ xenial main restricted

deb https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main

Первая строка — официальный репозиторий, вторая — PPA репозиторий ubuntu. Как видите, выглядят они одинаково. С версией дистрибутива все понятно, это кодовое имя, с веткой тоже — это main. А вот где брать адрес? Это уже ваше дело, вы можете искать репозитории где угодно, на форумах, в поисковых системах или в нашей статье, где собран список лучших репозиториев.

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

Для сторонних репозиториев необходимо импортировать GPG ключ для правильной работы в системе, если ключ не добавить, то во время обновления репозиториев Ubuntu apt выдаст ошибку проверки подписи. Это делается, чтобы никто не мог подменить пакеты и вы не установили вирусов. Перейдите на вкладку Аутентификация, затем выберите импортировать ключ из файла:

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

Удалять ключи также можно кнопкой удалить:

Если вы запутались и не знаете как вернуть состояние по умолчанию можно просто нажать кнопку восстановить чтобы восстановить репозитории Ubuntu:

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

PPA репозитории Ubuntu находятся на сайте, созданном Canonical — launchpad.net. Ubuntu способна автоматически различать, находить apt строку и скачивать GPG ключи для таких репозиториев. Достаточно указать адрес ppa вместо apt сроки при добавлении репозитория в Ubuntu, например:

ppa:shutter/ppa

На самом деле PPA репозитории такие, же как и обычные репозитории. Если вы хотите добавить репозиторий вручную, вы можете узнать apt строку и ключ, раскрыв спойлер Technical details about this PPA на странице описания репозитория:

Теперь его можно добавить в систему, так же как описано выше.

Во многих инструкциях мы видим команды для подключения репозитория в Ubuntu через терминал. Действительно, это немного удобнее чем запускать утилиту, загружать ключи и делать все мышкой. Чтобы добавить репозиторий Ubuntu через терминал используйте команду: apt-add-repository:

В кавычках указана apt строка репозитория. Также можно просто добавить строчку в /etc/apt/sources.list:

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

Добавить репозиторий в Ubuntu через терминал намного проще чем в графическом интерфейсе.

Удалить репозиторий Ubuntu через терминал можно той же командой с опцией remove:

Или же просто закомментировать deb строку в файле /etc/apt/sources.list или в одном из файлов /etc/apt/sources.list.d/*.

Добавить репозиторий PPA в Ubuntu можно той же командой. Как я уже говорил система автоматически распознает репозиторий и скачает нужные ключи. Формат записи такой:

Например:

Удалить репозиторий в Ubuntu можно такой же командой, как и в предыдущем примере:

Полностью удалить PPA из системы можно командой:

Возможно, утилиту ppa-pure необходимо будет установить командой:

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

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

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

Содержание

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

Разработчики для поддержки своих дистрибутивов и комфортной работы пользователей снабжают системы управления пакетами (СУП) специальными ссылками. Они указывают на удалённые сервера, на которых хранятся самые актуальные и протестированные разработчиками пакеты ПО для данного дистрибутива. Благодаря этим ссылкам СУП «знает» когда и откуда загрузить и установить обновления пакетов. Эти ссылки могут указывать как на удалённый ресурс, так и на локальный. Во втором случае это может быть как другой компьютер в локальной сети, так и локальный накопитель и/или даже, если постараться — оптический привод.

Сами эти ссылки хранятся в файле sources.list, который в Ubuntu расположен по адресу /etc/apt/sources.list. Сама ссылка (для Ubuntu) выглядит примерно так:

deb http://ru.archive.ubuntu.com/ubuntu/ bionic universe

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

deb https://repos.codelite.org/ubuntu/ bionic universe

Это репозиторий, созданный разработчиком среды разработки CodeLite, специально для Ubuntu. И эта ссылка была добавлена в файл sources.list уже вручную самим пользователем-администратором компьютера. После чего становится возможной автоматическая установка актуальных и стабильных версий пакетов CodeLite, а также их обновление. А вот так может выглядеть ссылка на репозиторий, хранимый на оптическом носителе:

deb cdrom:[Kubuntu 18.04.1 LTS _Bionic Beaver_ - Release amd64 (20180725)]/ bionic main multiverse restricted universe

Использование прокси для организации локального репозитория

Данный метод подразумевает доступ к репозиториям через кеш на прокси-компьютере, который имеет прямое подключение в Интернет. Механизм работы такого локального репозитория заключается в следующем:

  • на какой-либо клиентской машине в обычном порядке запрашивается какой-либо пакет для установки/обновления через компьютер-сервер;
  • запрошенный пакет скачивается сервером, сохраняется в специально отведённом хранилище-кеше и далее становится доступным всем остальным клиентам;
  • в качестве распространителя пакетов клиентам выступает веб-сервер Apache, поэтому его установка обязательна.

Итак, для начала необходимо установить всё необходимое, т. е. веб-сервер и саму утилиту кеширования пакетов:

$ sudo apt-get install apache2 apt-cacher

При установке apt-cacher будет показан диалог настройки, в котором можно настроить нужное поведение утилиты, например задать автозапуск и работу в режиме демона. Также эти и некоторые другие важные настройки можно сделать (например с помощью редактора nano) в конфигурационном файле /etc/default/apt-cacher. Для включения автозапуска apt-cacher нужно установить параметр AUTOSTART в значение «1»:

$ sudo nano /etc/default/apt-cacher  . . .  # Set to 1 to run apt-cacher as a standalone daemon, set to 0 if you are going  # to run apt-cacher from /etc/inetd or in CGI mode (deprecated). Alternatively,  # invoking "dpkg-reconfigure apt-cacher" should do the work for you.  #  AUTOSTART=1  . . .

Далее, необходимо определить, какие клиенты должны иметь доступ к кешу репозитория, отредактировав конфигурационный файл /etc/apt-cacher/apt-cacher.conf:

$ sudo nano /etc/apt-cacher/apt-cacher.conf  . . .  ## Uncomment and set the IP range ##  allowed_hosts = 192.168.1.105 - 192.168.1.125  #denied_hosts =  . . .

Как можно видеть, просто указывается диапазон нужных IP-адресов. После сохранения сделанных настроек необходимо перезапустить веб-сервер Apache:

$ sudo service apache2 restart

Или:

$ sudo systemctl restart apache2

Теперь необходимо указать клиентам, куда им нужно обращаться для установки пакетов и обновлений. Для этого на клиентских машинах нужно создать файл /etc/apt/apt.conf.d/01proxy с помощью того же редактора nano:

$ sudo nano /etc/apt/apt.conf.d/01proxy

И добавить в него строку со следующей инструкцией:

Acquire::http::Proxy "http://192.168.1.100:3142";

Здесь в качестве адреса сервера, на котором установлен и работает apt-cacher указывается 192.168.1.100. Конечно, это может быть любой другой адрес, настроенный для этого сервера.

Теперь можно проверить работу локального репозитория (а точнее удалённого, но доступного через прокси), выполнив команду обновления данных о доступных пакетах:

$ sudo apt-get update

APT-MIRROR – полноценный локальный репозиторий

Данный способ является более «продвинутым» по сравнению с использованием apt-cache. Поскольку предполагает наличие полноценного хранилища пакетов прямо на локальном компьютере/сервере или в локальной сети. Но сначала такое хранилище необходимо создать, загрузив в него все необходимые пакеты. Как и в случае с apt-cache, в качестве распространителя пакетов выступает веб-сервер Apache. Порядок настройки локального репозитория при помощи утилиты apt-mirror следующий:

  1. установка необходимых пакетов: apt-mirror и apache2;
  2. создание локального хранилища и настройка источников для загрузки, загрузка пакетов в хранилище;
  3. открытие доступа к готовому хранилищу для клиентов;
  4. настройка клиентов для использования локального репозитория.

Итак, установка необходимых утилит и пакетов:

$ sudo apt-get install apache2 apt-mirror

Далее, нужно создать локальное хранилище пакетов, пусть это будет каталог /localrepo:

$ sudo mkdir /localrepo

Теперь в конфигурационном файле /etc/apt/mirror.list нужно отредактировать строку с инструкцией «set base_path». Указав в ней только что созданный каталог для хранилища:

$ sudo nano /etc/apt/mirror.list  ############ config ##################  #  set base_path /localrepo

Далее, в этом же файле можно добавить необходимые репозитории, с которых будут загружены пакеты. Можно скопировать все стандартный репозитории из /etc/apt/sources.list. Сохранив настройки можно запустить загрузку пакетов командой:

$ sudo apt-mirror

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

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

$ ls /localmirror  mirror skel var

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

$ cd /localrepo  $ sudo ln -s /localrepo/mirror/us.archive.ubuntu.com/ubuntu/ ubuntu

Теперь ссылка ubuntu будет использоваться для задания репозиториев на стороне клиентов с помощью редатирования файла /etc/apt/sources.list: Открыв этот файл (с использованием команды sudo) с помощью редактора nano, нужно теперь добавить в него следующие репозитории:

. . .  deb http://192.168.1.100/ubuntu trusty universe  deb http://192.168.1.100/ubuntu trusty main restricted  deb http://192.168.1.100/ubuntu trusty-updates main restricted  . . .
$ sudo apt-get update  $ sudo apt-get install имя_пакета

Заключение

В заключение следует напомнить, что способы организации локальных репозиториев, описанные выше подходят для систем на базе формата debian-пакетов. Для систем, основанных на RPM следует использовать другие инструменты.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Используемые источники:

  • https://habr.com/post/19217/
  • https://losst.ru/nastrojka-repozitoriev-v-ubuntu
  • https://itproffi.ru/nastrojka-lokalnyh-repozitoriev-v-linux/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации