Шпаргалка по менеджеру пакетов YUM в CentOS и RHEL

17 января 2020 Мэтт Миллс Как записаться 0

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

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

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

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

Различные типы репозиториев в Ubuntu

Когда мы устанавливаем Ubuntu, дистрибутив устанавливает серию репозиториев, принадлежащих разным каналам:

  • Главный: репозиторий установлен по умолчанию. Он состоит из бесплатного программного обеспечения FOSS, которое можно распространять свободно и без ограничений.
  • Вселенная: включает бесплатное программное обеспечение с открытым исходным кодом, но не может гарантировать регулярные обновления безопасности.
  • Мультивселенная: включает в себя программное обеспечение от FOSS. Это должен быть пользователь, который анализирует лицензии и решает, использовать эти программы на законных основаниях или нет.
  • Ограничение: в этом канале мы можем найти программное обеспечение с закрытым исходным кодом. Он используется, например, для распространения драйверов NVIDIA, среди многих других.
  • Партнеры: включает в себя проприетарное программное обеспечение, которое было упаковано Canonical.

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

Шаги, которые мы увидим далее, были сделаны в Ubuntu, но они должны быть одинаковыми для любого дистрибутива на основе Debian.

Устанавливаем Java JRE / JDK в Linux

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

Читайте также:  iPhone X(s/r)/8/7/6 не прошивается ошибки

Сначала рекомендуется проверить обновления системных хранилищ и узнать текущую версию Java, если она вообще присутствует в ОС. Делается это все через стандартную консоль:

Способ 1: Официальные репозитории

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

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

Способ 2: Репозиторий Webupd8

Существует пользовательское хранилище под названием Webupd8, в котором имеется скрипт, сравнивающий текущую версию Java с той, что находится на сайте Oracle. Такой метод инсталляции пригодится тем, кто желает установить сброку новее 8 (последней доступной в репозитории Oracle).

По окончании процесса вам будет доступна команда для инсталляции абсолютно любых версий — sudo apt-get install oracle-java7-installer, где java7 — версия Java. Например, вы можете прописать java9 или java11.

Избавиться от ненужных инсталляторов поможет команда sudo apt-get remove oracle-java8-installer, где java8 — версия Java.

Способ 3: Обновление с помощью Webupd8

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

  1. Повторите первые пять шагов из предыдущей инструкции, если вы еще не сделали эти действия.
  2. Впишите команду sudo update-java, а затем нажмите на Enter.
  3. Используйте команду sudo apt-get install update-java для установки обновлений в случае их нахождения.

Способ 4: Ручная установка

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

  1. Через веб-обозреватель перейдите на официальную страницу Oracle для загрузки Джава, где нажмите на «Download» или выберите любую другую необходимую версию.
  2. Ниже находится несколько пакетов с библиотеками. Мы советуем скачать архив формата
  3. Перейдите в папку с архивом, щелкните по нему ПКМ и выберите «Свойства».
  4. Запомните расположение пакета, поскольку вам придется перейти к нему через консоль.
  5. Запустите «Терминал» и выполните команду cd /home/user/folder, где user — имя пользователя, а folder — название папки хранения архива.
  6. Создайте папку для распаковки архива. Обычно все компоненты помещаются в jvm. Создание директории происходит путем ввода sudo mkdir -p /usr/lib/jvm.
  7. Распакуйте в созданную папку имеющийся архив sudo tar -xf jdk-11.0.2_linux-x64_ -C /usr/lib/jvm, где jdk-11.0.2_linux-x64_ — название архива.
  8. Для добавления системных путей вам потребуется последовательно ввести следующие команды:

    sudo update-alternatives —install /usr/bin/java java /usr/lib/jvm/jdk1.8.0/bin/java 1 sudo update-alternatives —install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0/bin/javac 1 sudo update-alternatives —install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.8.0/bin/javaws 1

    Один из альтернативных путей может не существовать, что зависит от выбранной версии Java.

  9. Осталось только провести конфигурацию каждого пути. Сначала выполните sudo update-alternatives —config java, отыщите подходящую версию Java, сверьте ее цифру и впишите в консоль.
  10. Повторите то же действие с sudo update-alternatives —config javac.
  11. Затем настройте последний путь через sudo update-alternatives —config javaws.
  12. Проверьте успешность проведенных изменений, узнав активную версию Джава (java -version).

Установка CentOS 8

Создания USB носителя для установки

Существует множество программ для записи iso образа на устройство. Например, у меня два варианта для создания носителя для установки:

  1. Rufus — использую эту программа для создание загрузочных USB-дисков в системе Windows;
  2. ROSA ImageWriter — использую эту программу для любой системы Linux.

Варианты установки

Рассмотрим два самых популярных варианта установки СentOS 8.

Образы iso CentOS 8

Установка CentOS 8

Образы можно скачать c зеркала Yandex по ссылке Download CentOS. Существует два варианта:

  1. CentOS-8-x86_ — полный образ 7G;
  2. CentOS-8-x86_  — загрузочный образ 550M.

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

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

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

Указывать надо путь к той папке, где лежит каталог repodata. Например, _64/os/.

В выборе программ выбираем базовое окружение «Минимальная установка» а в дополнительных параметрах «Гостевые агенты» и «Стандарт».

Шаблоны

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

Вот моменты почему я советую использовать установку на VDS систем с iso образа:

  • Разбивка диска порой не учитывает конфигурацию тарифа или требований вашей системы — например, на одном хостинге при 2 G оперативной памяти был создал SWAP раздел в 512 М в результате пришлось переустанавливать систему дабы не терять место на и так небольшом диске;
  • Локализация как правило Английская — мне приятней работать на своем родном языке хотя и на английском если надо всё настрою;
  • Присутствие в шаблоне каких-то изменений отличающихся от стандартных минимальных параметров установки — порой не понимаешь откуда взялись какие то настройки которых раньше не видел. Кроме того, можно потратить кучу времени не понимая почему не работает то что всегда работало как часы. В итоге выясняется что в шаблоне установки нет пакета который всегда ставился в стандартном минимальном образе.

Все компании предоставляющие услуги VDS могут предоставить возможность установки системы с ISO образа системы. При установке надо правильно указать сетевые параметры исходя из предоставленных сетевых параметров настроек выбранного тарифа!

Установка CentOS 8

Разбивка диска для установки

Вариантов разбивки диска для CentOS 8 может быть множество исходя из пожеланий и предпочтений. Например, мне нравиться придерживаться таких параметров:

  • Размер диска под систему Linux 50 G — этого мне хватает с запасом;
  • Создаю раздел boot размером 1 G — так я гарантирую что при заполнении диска система загрузится однозначно;
  • Создаю SWAP — согласно требованиям системы.

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

SWAP

Тема организации SWAP на сервере очень важная и поэтому я описал все основные моменты использования в статье SWAP для Linux

Использование yum через прокси

Yum для работы с репозиториями программ использует протокол HTTP/1.1. Если ваш Linux сервер имеет доступ в интернет только через HTTP прокси сервер, вы можете указать имя прокси сервера в конфигурационном файле /etc/ в секции [main]:

proxy=http://proxyservername:3128

Если прокси-сервер требует авторизацию, добавьте строки:

proxy_proxy_username=userproxy_password=pass

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

Использование yum через прокси

yum clean all && yum search nginx

Для проверки я указал публичный прокси сервер с Германии и при установке, сработал плагин fastestmirror, нашел зеркала с которых скорость будет выше:

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

Итак, в этой статье мы рассмотрели базовые возможности менеджера rpm пакета yum в Linux CentOS/ RHEL. В следующей статье мы более подробно поговорим об управлении репозиториями в Yum. Знакомьтесь, пробуйте и используйте yum в своей работе.

Зависимость в пакетах

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

  • Спецификация — это отдельный объект.
  • Тело пакета зависит от спецификации.
  • Тело пакета может быть составлено отдельно. Всякий раз, когда спецификация компилируется, тело должно быть перекомпилировано, так как оно станет недействительным.
  • Подпрограмма в теле пакета, которая зависит от частного элемента, должна быть определена только после объявления частного элемента.
  • Объекты базы данных, на которые есть ссылка в спецификации и теле, должны быть в действительном состоянии во время компиляции пакета.