Как установить rpm suse
Linux для пользователя
Этот блог для тех, кто делает первые шаги в освоении Linux.
Страницы
вторник, 3 января 2012 г.
Как быстро из консоли установить программу в openSUSE
# cnf mc
Программу ‘mc’ можно найти в следующем пакете:
* mc [ путь: /usr/bin/mc, репозиторий: zypp (openSUSE-12.1-12.1-1.4) ]
Try installing with:
zypper install mc
как видим, в выводе есть не только название пакета, но и как этот пакет установить.
поэтому следуем инструкциям только что выполненной команды и вводим:
zypper install mc
после чего получаем:
# zypper install mc
Загрузка данных о репозиториях.
Чтение установленных пакетов.
Разрешение зависимостей пакетов.
Будет установлен следующий НОВЫЙ пакет:
mc
Следующий рекомендованный пакет не будет установлен:
bundle-lang-common-ar
1 новый пакет для установки.
Полный размер загрузки: 575,0 KiB. После этой операции будет использовано дополнительно 1,9 MiB.
Продолжить? [y/n/?] (y):
cnf locate
Программу ‘locate’ можно найти в следующем пакете:
* findutils-locate [ путь: /usr/bin/locate, репозиторий: zypp (openSUSE-12.1-12.1-1.4) ]
Try installing with:
zypper install findutils-locate
вводим в строке zypper se locate и получаем
Как установить rpm suse
Из готового тарбола (если он учитывает все нужные патчи) можно получить исполняемые программы с помощью следующих команд:
1 разархивировать тарбол:
Создаем папку, куда будем разархивировать тарбол,
Копируем туда тарбол
Непосредственно разархивируем в папку:
— разархивация архивов типа tar.gz и tgz
— разархивация архивов типа tar.bz и tbz
Переходим в папку с разархивированным тарболом
2 конфигурим пакет
3 Создаем пакет:
4 Устанавливаем пакет
7.2 Установка программ из сорца (.src.rpm)
В дистрибутивах Red Hat, Mandrake, Suse, AltLinux, ASP Linux и некоторых других, программы (состоящие, как правило, из нескольких файлов) распространяются объединенными в пакеты формата RPM (RedHat Packet Manager). С помощью программы rpm можно легко устанавливать, модифицировать, удалять и создавать пакеты программного обеспечения, а также получать о них разнообразную информацию. Все эти дистрибутивы (кроме программы начальной установки) состоят из таких пакетов. Каждый пакет определяется именем программы, номером ее версии и номером версии релиза этой программы дистрибутива, а также архитектурой пакета. Например, bash-2.0.5-alt2.i586.rpm: в этом пакете
Далее приводятся возможные параметры.
Установка пакета.
Обновление пакета.
Удаление пакета.
то есть, например, для пакета klyx:
Если в процессе удаления пакета произойдет нарушение зависимостей, программа rpm сообщит об этом.
Информация о пакете.
Если надо установить два или более пакетов, зависящих друг от друга, то установите их одновременно:
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Вам пакет нужен? Нет, я со своим.
Есть несколько способов откуда можно взять пакеты RPM: CD/DVD с программным обеспечением, CentOS Mirror, RedHat (нужен аккаунт) или любые открытые сайты репозитория.
В RPM используется несколько основных режимов команд: Install (используется для установки любого пакета RPM), Remove (используется для удаления, стирания или деинсталляции пакета), Upgrade (используется для обновления существующего пакета), Query (используется для запроса пакета) и Verify (используется для проверки пакетов RPM).
Рассмотрим это на примере. У нас есть пакет, и теперь посмотрим, что мы можем с ним делать.
Установка
Как узнать информацию о пакете RPM без установки?
После того, как мы скачали пакет мы хотим узнать информацию о пакете перед установкой. Мы можем использовать -qipoption (запрос информации о пакете), чтобы вывести информацию о пакете.
Как установить RPM пакет?
Мы можем использовать параметр -ivh для установки определенного пакета, как показано ниже.
Как проверить установленный пакет RPM?
Мы можем использовать параметр -q с именем пакета, и он покажет, установлен ли пакет или нет.
Как вывести список всех файлов для определенного установленного пакета RPM?
Мы можем перечислить все файлы установленных пакетов rpm, используя опцию -ql с командой rpm.
Как вывести список недавно установленных пакетов RPM?
Мы можем использовать параметр -qa с параметром —last, в котором будут перечислены все недавно установленные пакеты rpm.
Как установить RPM пакет без зависимостей?
Мы можем использовать параметры -ivh с параметром —nodeps для проверки отсутствия зависимостей, чтобы установить конкретный пакет без зависимостей, как показано ниже.
Как заменить установленный пакет RPM?
Мы можем использовать параметры -ivh –replacepkgs для замены установленного пакета.
Удаление
Как удалить пакет RPM?
Мы можем использовать параметр -e для удаления определенного пакета, установленного без зависимостей. Обратите внимание, что удаление определенного пакета может нарушить работу других приложений.
Обновление
Как обновить установленный пакет RPM?
Для обновления пакета мы используем параметры -Uvh
Запрос
Как запросить все установленные пакеты?
Мы можем использовать параметры -a вместе с q для запроса всех установленных пакетов на сервере.
Как запросить конкретный пакет?
Мы можем использовать команду grep, чтобы узнать, установлен ли конкретный пакет или нет.
Как запросить файл, который принадлежит пакету RPM?
Чтобы узнать к какому пакету RPM относится файл /usr/lib64/libGeoIP.so.1.5.0. используем следующую команду.
Проверка
Как получить информацию для конкретного пакета?
Мы можем использовать параметры -i вместе с q, чтобы получить информацию для конкретного пакета, как показано ниже.
Как проверить RPM пакет?
Мы можем проверить пакет, сравнив информацию об установленных файлах пакета с базой данных rpm, используя опцию -Vp.
Как проверить все пакеты RPM?
Мы можем проверить все установленные пакеты rpm, используя опцию -Va
Полезно?
Почему?
😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.
😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.
Сборка rpm пакетов и настройка своего репозитория
В данной статье будет подробно описан процесс создание rpm пакетов и организация репозитория. Прошу всех, кому интересна данная тема, пройти под кат.
Я взялся писать крайне подробно, так что Вы можете пролистать очевидные для Вас вещи.
Оглавление
Установка системы
Наш сервис начинается с момента установки на него операционной системы. Естественно, что для сборки rpm пакетов мы выбираем rhel дистрибутив. В данном случае, был выбран CentOS 7.
Скачать CentOS
Создадим директорию, где будет лежать образ и перейдем в нее:
Далее можно непосредственно скачать образ и необходимые для проверки файлы:
или посредством torrent`а с помощью программы aria2, которую для начала установим:
Проверить образ
Скачать образ мало, нужно проверить его целостность и достоверность, что мы и сделаем.
Скачаем ключ для CentOS 7:
Посмотрим на ключ и импортируем его:
Проверим подпись файла, с контрольной суммой образа:
Как мы видим — все отлично и теперь можем проверить сам образ на целостность:
Запись образа на носитель
После того как мы убедились в целостности образа и его достоверности, неплохо было бы его уже записать и установить! Так сделаем это, но вначале определимся, на что записывать будем.
Запись образа на диск
Для записи данного образа, нам понадобится двухсторонний DVD. Допустим мы его нашли и записываем, установив предварительно wodim:
Запись образа на флешку
Двухсторонний DVD это как то архаично, так что возьмем флешку на 16 гб и запишем образ на нее, но прежде /dev/sda тут — это флешка, а у Вас она может быть другой. Смотри команду fdisk:
Если status=progress не поддерживается, то по старинке:
а можно воспользоваться pv:
Установка
Как поставить Centos 7, решать Вам, тут и за RAID подумать можно и за LVM и много чего еще,
я ставил минимальный пакет.
Процесс установки можно посмотреть в этом ролике.
Преднастройка
После установки системы, нам необходимо настроить наш сервер.
Обновление и установка пакетов
В начале мы обновим все установленные пакеты, далее установим репозиторий epel, в котором есть много что полезного для нас:
Следующим шагом установим группу пакетов, которые понадобятся нам для сборки, а так же ряд пакетов необходимые для развёртывания репозитория.
Для того чтобы комфортно и безопасно управлять сервером настроим SSH.
Безопаснее пользоваться ключами, по этому мы и создадим себе ключи для доступа к серверу на своем рабочем компьютере:
и добавим ключ на сервер:
Необходимо еще закрутить гайки в самой службе. Создадим копию файла конфигурации и приступим к редактированию:
В файле стоит добавить/изменить/раскомментировать следующие строки:
Межсетевой экран
Важно ограничить доступ к нашему серверу. По этой причине настроим межсетевой экран:
Тут мы добавили наши службы http https ftp для доступности извне и ssh, но только для сети 192.168.0.0/28.
Подготовка площадки сборки
Подготовим саму площадку для сборки. Стоит отметить, что вернее всего сборку производить на отдельном виртуальном хосте, активно используя технологию snapshot’ов, но тут я опишу все в едином целом. Так же для сборки нужно выделить отдельного пользователя, не являющемся администратором (т.е. sudo ему недоступно).
Создание директорий
Создаем необходимые директории:
Настройка PGP подписи
Наши пакеты, которые мы соберем, необходимо подписать, что будет обеспечивать целостность и достоверность.
Ключ будем использовать свой или если его нет, то создадим. Создавать ключ стоит на своем рабочем компьютере.
Создадим ключ, если его у нас нет:
Нас попросят ответить на ряд вопросов:
тип ключа, выбираем (1) RSA and RSA (default), размер ключа: 4096, срок действия: 6m, наше имя: Alexander F. Mikhaylov, Email: chelaxe@gmail.com, комментарий, тут можно указать для чего нам ключ: repo и ждем.
Сохраняем наш приватный ключ:
Создадим ключ для отзыва:
Экспорт открытого ключа на keyserver:
Теперь ключ можно и импортировать на наш сервер:
Смотрим где находится gpg утилита:
и настроем файл для подписи пакетов:
Создаем репозиторий
Теперь организуем сам репозиторий.
Создадим директорию, где будем хранить пакеты:
Экспортируем ключ в репозиторий:
Создаем сам репозиторий и подписываем метаданные:
Пакет для репозитория
Собираем пакет для автоматической установки репозитория в систему.
Файл репозитория для yum:
Экспортируем ключ для пакета:
Собираем все в архив:
Создаем SPECS файл для пакета:
На этом этапе нас спросят пароль от нашего PGP ключа.
Копируем созданный пакет в репозиторий и обновляем его:
Не забываем подписать метаданные:
Теперь установим наш репозиторий в систему:
После установки должен появиться репозиторий chelaxe и PGP ключ:
Самое важное тут это SPEC файлы, расписывать о них не стану, но предоставлю ряд ссылок:
и одна полезная команда:
она отобразит готовые макросы для сборки.
Собираем Tmux
Теперь соберем, для примера, что нибудь полезное. Собирать будем tmux — терминальный мультиплексор, без которого работать мне не комфортно. Стоит отметить tmux есть в base репозитории CentOS 7, но версия там 1.8, а мы соберем 2.7. Так же у пакета из base репозитория есть зависимость libevent, мы же соберем tmux со статическими библиотеками последних версий.
Готовим исходники
Скачиваем исходники tmux и необходимых библиотек:
Экспортируем GPG ключи для проверки исходников:
Подготовим файл конфигурации tmux:
Готовим SPEC файл
Этот файл будет интереснее предыдущего SPEC файла:
Сборка
Собираем пакет и добавляем его в репозиторий:
Не забываем подписать метаданные:
Смотри что и как получилось:
Установка и запуск
Устанавливаем наш пакет:
Запускаем tmux и радуемся:
Собираем fbida
Собирать будем fbida — комплект приложений для просмотра изображений в консоли. Данный пакет не нашел под Centos 7.
Готовим исходники
Скачиваем исходники fbida:
Экспортируем GPG ключи для проверки исходников:
Готовим SPEC файл
В этом SPEC файле будет больше зависимостей:
Сборка
Собираем пакет и добавляем его в репозиторий:
Не забываем подписать метаданные:
Установка и запуск
Устанавливаем наш пакет:
Настройка доступа по http/https
Теперь обеспечим доступ к нашему репозиторию по http/https.
Настройка
Первым делом настроем наш Apache:
Далее необходимо добавить/изменить/раскомментировать следующие строки:
Запускаем службу и прописываем ее в автозапуск:
Настраиваем наш репозиторий:
Т.к. в Centos 7 у нас Apache 2.4.6, а не 2.4.8, то параметры Диффи-Хеллмана необходимо вшить в сертификат:
По этой же причине с HTTP/2 у нас ничего не получится, но теперь вы можете собрать сами свежий Apache и воспользоваться HTTP/2.
Проверим конфигурацию и перечитаем конфигурацию:
Сертификат от Let’s Encrypt
Пока у нас свой сертификат и это не красиво, так что получим сертификат от Let’s Encrypt:
При ответе на вопросы, выбираем использование rewrite для перенаправления всех на https. В результате в файле изменяться строки у VirtualHost для http:
и у VirtualHost для https:
Строку Include /etc/letsencrypt/options-ssl-apache.conf закомментируем.
Тут стоит напомнить о необходимости добавить файл с параметрами Диффи-Хеллмана в конец сертификата:
И изменить заголовок HKPK (HTTP Public Key Pinning):
И изменим соответственно строку в конфигурации:
Проверим конфигурацию и перечитаем конфигурацию:
Есть еще одна проблема. Для обновления сертификата добавим запись в крон:
Но этого не достаточно, нужно еще дописать автоматическое добавление файла с параметрами Диффи-Хеллмана и параметры HKPK (HTTP Public Key Pinning).
для исключения в отображении на сайте.
Для vsftpd можно использовать опции:
Тут можно используя модуль mod_autoindex Apache настроить внешний вид. Завернуть в noscript тег и используя html5, css3, javascript, jquery, bootstrap, backbone, awesome сделать конфетку, как это сделал я:
Вот что будет при использовании в браузере без поддержки javascript или с отключенным:
Настроить внешний вид листинга через mod_autoindex или в nginx:
Настройка доступа по ftp
Запускаем службу и прописываем ее в автозапуск:
Заключение
Собственно на этом все. Надеюсь, данный мануал будет Вам полезен.
🏋️♀️ Как установить / удалить / запросить / обновить RPM пакеты в Linux (Шпаргалка)
RPM – это мощный менеджер программного обеспечения, который можно использовать для создания, установки, запроса, проверки, обновления и удаления отдельных пакетов программного обеспечения.
Пакет RPM состоит из архива файлов и информации о пакете, такой как имя, версия, описание и информация о зависимостях от других пакетов RPM.
RPM – это больше, чем инструмент для Red Hat
Многие другие современные дистрибутивы, такие как Ubuntu и SuSE, также используют RPM.
Преимущества использования RPM включают в себя:
RPM хранит информацию об установленных пакетах в каталоге «/var/lib/rpm».
Компоненты инструмента RPM:
Типы RPM-пакетов
RPM-пакеты делятся на две категории: исходные и бинарные.
Исходный RPM всегда можно распознать, поскольку имя файла заканчивается строкой “.src.rpm”.
В исходном RPM находятся не только исходные файлы исходного кода программы, но и скрипты, которые позволяют автоматически перекомпилировать код, автоматически устанавливать его и удалять автоматически.
В исходном RPM нет исполняемых файлов конечного пользователя. Обычно только разработчики заинтересованы в RPM с исходным кодом.
Двоичный RPM содержит компоновки конечного пользователя RPM. Имена двоичных файлов RPM идентифицируют архитектуру хоста для содержимого.
Например, двоичный файл RPM:
Он содержит файлы, которые можно использовать только на 64-битном процессоре Intel X86.
Другие общие значения архитектуры включают «i386» для 32-разрядных хостов Intel.
Некоторые двоичные RPM-пакеты могут быть установлены на любой архитектуре процессора, потому что их файлы будут работать на любом хосте;
Примером этих пакетов «.noarch.rpm» является RPM «tzdata», который содержит информацию о мировых часовых поясах.
Чтобы обновить вашу систему до последней версии пакета, вам потребуется самая последняя двоичная RPM-версия.
Схема именования RPM
Каждый пакет RPM содержится в одном файле.
Имя файла имеет несколько полей, чтобы полностью идентифицировать содержимое пакета.
Хотя сами инструменты RPM не полагаются на само имя файла, вы должны понимать соглашение об имени файла, чтобы помочь вам определить или загрузить соответствующий пакет. Вот пример имени файла RPM:
Этот RPM предназначен для оболочки BASH («/bin/bash»).
Имя файла состоит из нескольких частей:
Примечание:[version] контролируется первоначальным автором, а [release] контролируется тем, кто создал RPM.
Понимание версий RPM
Поля RPM [version] и [release] не всегда строго числовые и могут содержать другие символы, кроме обычных цифр.
Обычно можно увидеть как версию «10», так и версию «10а» в одном и том же пакете.
Иногда выбрать самую последнюю версию может быть сложно.
Вот как сам RPM сравнивает номера версий и выпусков внутри себя:
2. Сравнивайте оставшиеся строки посимвольно слева направо, пока не встретите цифру.
Если символы отличаются, какой бы символ не появился позже в последовательности сопоставления, это более поздние варианты.
3. При обнаружении цифры преобразуйте всю последовательность цифр в одно двоичное число. В нашем примере два символа «16» объединяются в значение шестнадцать (16). Полученные двоичные значения сравниваются, и чем больше значение, тем выше новизна.
Таким образом, RPM с [версией] «0010» является более новым, чем RPM с «версией» «9».
Шаги 2 и 3 повторяются по мере необходимости, пока не произойдет различие.
Установка и удаление файлов
Примечание. Обычно только один или несколько RPM-пакетов могут быть установлены одновременно.
Более поздние версии обычно устанавливаются с использованием функции RPM «-U» (обновление) вместо функции «-i» RPM.
Распространенными исключениями из единственного правила RPM являются RPM ядра.
В системе обычно установлено несколько версий ядер; У RPM есть список, у которых может быть установлено несколько версий.
Чтобы удалить одну версию, когда установлено несколько, необходимо полностью указать имя и версию пакета.
В архитектуре x86_64 обычно устанавливаются как 32-разрядные пакеты «.i386», так и 64-разрядные пакеты «.x86_64», поддерживающие как 32-разрядные, так и 64-разрядные приложения.
Обычно RPM не отображает архитектуру пакета в запросе, но вы можете отобразить его вручную.
Установка и удаление
Подсказка: никогда, никогда не используйте опцию «-U» для установки нового RPM ядра. Функция обновления «-U» сначала удаляет текущий RPM из системы, а затем пытается установить новый RPM. Любая проблема, которая препятствует установке нового RPM, приведет к тому, что система не будет загружаться. Это не то, что вам нужно, поэтому всегда используйте ключ «-i» для установки RPM ядра.
Запросы (пакеты и / или информация)
Используйте запрос для получения информации об установленных пакетах.
Вы можете запросить все установленные пакеты или один установленный пакет.
Вы также можете узнать, какой RPM предоставляет конкретный файл.
Информация
по умолчанию (имя пакета)
-i: общая информация
-l: список файлов
Примеры
Подсказка: при поиске определенного пакета RPM, когда точное имя неизвестно, используйте пайп таким образом:
Более поздние версии инструмента RPM позволяют сделать это кратко:
Запросы – проверка (файлы)
База данных RPM содержит множество атрибутов для каждого файла, установленного RPM.
Вы можете проверить текущее состояние файла по информации, каталогизированной RPM, когда пакет был установлен.
Примечание. Во многих дистрибутивах Linux имеется RPM «с предварительной связью», который пытается уменьшить время, необходимое для запуска приложения с использованием общей библиотеки (в большинстве приложений используется как минимум одна общая библиотека и, возможно, десятки), путем добавления специальной информации непосредственно в программный файл приложения.
Добавление этой информации делает запуск приложений быстрее, но изменения файла делают недействительными большинство атрибутов файла в базе данных RPM, таких как дата последнего изменения файла, размер файла и контрольная сумма файла MD5.
Запросы – проверка (пакеты)
Восстановить базу данных RPM
Средство RPM использует свою собственную реализацию базы данных для хранения своей информации
. Иногда эта база данных может быть повреждена; симптомы включают заявления об отсутствии установленного пакета RPM; или попытки обновить RPM просто зависают.
Если ваша база данных RPM зависла или повреждена, вы можете попытаться восстановить ее с помощью этих команд. Этот процесс не гарантированно работает.
Вы должны войти в систему с привилегиями суперпользователя (он же «root») для этих действий.
Команды могут быть скопированы и вставлены непосредственно в окно рутового терминала.
2. Удалите файлы блокировки, которые использует RPM:
3. Если вы испытыли зависание команды «rpm», попробуйте снова.
Если это работает, это все. Если нет, выполните Шаг № 1 и № 2 снова. Затем перейдите к следующему шагу.
4. Сделайте резервную копию вашей базы данных RPM: