ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

5 минут чтени€

¬ данной статье мы рассмотрим работу с пакетами и менеджерами пакетов в Red Hat (CentOS) операционных системах. ƒл€ работы с пакетами в операционных системах используют yum и rpm. ¬ современной версии используетс€ пакетный менеджер dnf, но он €вл€етс€ "форком" от пакетного менеджера yum. ƒанный пакет разрабатывалс€ в цел€х решить проблему производительности в первую очередь и в принципе он очень похож, поэтому мы посмотрим в статье на примере классических пакетных менеджеров.

¬ статье мы рассмотрим следующие вопросы:

  1. ”становка, удаление и обновление пакетов.
  2. ѕоиск пакетов и их зависимостей.
  3. ѕолучение полной информации о пакетах.

¬ статье нам понадобитс€ понимание:

≈сли сравнивать с Ubuntu можно сказать, что вместо dpkg у нас будет rpm, а вместо apt будет yum и дополнительные особенности centos.

ќткрываем консоль. ѕереходим в режим суперпользовател€, команда su. ѕосмотрим на команду rpm --help.

rpm --help

‘ункционал достаточно большой, все ключи на один экран не помещаютс€. ≈сть опции по запросу и проверке пакетов можно найти ключи в секции query\verify. ќчень мощна€ утилита, но дл€ работы все таки удобнее использовать пакетный менеджер yum.

ѕопробуем воспользоватьс€ rpm, чтобы посмотреть его особенности. Ћучше всего смотреть на примере. —качаем программу webmin в виде установочного rpm пакета. —качали пакет и положили в директорию tmp.

ѕереходим в нее cd /tmp. ƒалее можно посмотреть наличие файлов ls la.

ls

”становим данный пакет. ƒл€ установки используем два ключа, ключ i означает install, ключ v означает verbose показывать ход установки.

rpm iv webmin-1.955-1.src.rpm

ѕакет установилс€.

rpm Цiv webmin-1.955-1.src.rpm

ћожно теперь зайти в браузер и начать работу, но цель была посмотреть, как работает rpm. ƒл€ того, чтобы удалить пакет необходимо использовать ключ e, который означает erase.  оманда будет выгл€деть следующим образом:

rpm e webmin

Ќазвание пакета можно полностью не писать, должно работать.

ƒл€ того, чтобы проверить ключ у скаченного пакета есть ключ K.

rpm K webmin-1.955-1.noarch.rpm
rpm ЦK webmin-1.955-1.noarch.rpm

 ак из вывода видим, с пакетом не все в пор€дке отсутствует ключ дл€ расшифровки подписи. Ќо данному пакету можно довер€ть, т. к. он скачан из надежного источника и качали сами.

ƒл€ того, чтобы проверить состо€нии самого пакета есть другой ключ V

rpm Vv webmin-1.955-1.noarch.rpm

ћожно получить информацию о пакете дл€ этого необходимо использовать ключи qi, где query information.

rpm qi webmin-1.955-1.noarch.rpm
rpm Цqi webmin-1.955-1.noarch.rpm

¬ данном выводе мы можем много информации получить о пакете, Ќазвание, ¬ерси€, дата сборки и т.д.

¬озможно, когда-то может возникнуть необходимость посмотреть из чего состоит пакет rpm и разобрать его на составные части. ƒл€ этого необходимо использовать небольшую утилиту rpm2cpio. –асшифровываетс€ т.е. rpm переделываетс€ в cpio "copy input\output" это и двоичный архиватор, и формат файла. —ейчас пакет rpm должен пере паковатьс€ в формат cpio. ѕользоватьс€ следующим образом:

rpm2cpio webmin-1.955-1.noarch.rpm > webmin.cpio
rpm2cpio webmin-1.955-1.noarch.rpm > webmin.cpio

 ак мы видим, получили еще один файл с расширением cpio и вот этот файл в формате родном дл€ других unix систем.

» так RPM это така€ низкоуровнева€ утилита, котора€ позвол€ет работать с RPM пакетами.


YUM

–одной и пон€тный yum, так же имеет файл помощи, как и все другие утилиты.

yum  help
yum Ц help

” него меньше опций, меньше возможностей. » есть большое количество команд, проверить, очистить, удалить, получить информацию. «десь не просто уже ключи, а целые слова и маленькие опции дл€ комфортной работы.

Ќапример, мы можем написать:

yum install openssh-clients
yum install openssh-clients

ћожно видеть, как он ищет провер€ет и говорит, что данный пакет установлен, последн€€ верси€ пакета и ему нечего делать.

ƒл€ удалени€ мы даем команду:

yum remove openssh-clients

ќн запросит подтверждение на данное действие и если мы подтвердим, то утилита будет удалена.

ћожно удалить весь ssh: yum remove openssh, но тогда будет предупреждение, что обнаружена одна зависимость от openssh-clients и, если мы подтвердим обе утилиты будут полностью удалены. “.е это умный пакетный менеджер позвол€ет работать так, чтобы лишние утилиты не болтались, т.е он сам находит и разрешает зависимости.

≈ще интересный факт, что при установки пакетный менеджер провер€ет зеркала и кэш, что ему позвол€ет определ€ть, что установлена последн€€ верси€ программного обеспечени€. ¬ отличии от пакетного менеджера apt (Ubuntu), которому надо сначала обновить кэш apt update, yum автоматически сам обновл€ет информацию в процессе установки пакетов.

–епозиторий yum находитс€ в следующей директории и лежат как отдельные файлы.

/etc/yum.repos.d/
/etc/yum.repos.d/

ѕосмотрим базовый репозиторий

cat CentOS-Base.repo
cat CentOS-Base.repo

Ќаписано, что это зеркало дл€ подключени€ клиентов и проверки статуса обновлений. “ут мы можем увидеть им€ репозитори€ и зеркала где наход€тс€ обновлени€. ≈сть еще ключи, которые можно провер€ть, а можно и не провер€ть. ≈сли мы изменим строчку gpgcheck = 0 то проверка осуществл€тьс€ не будет. ћожно самосто€тельно добавить репозиторий, создав файл с расширением repo. » тогда получитс€ свой репозиторий.

ƒл€ обновлени€ всех пакетов используетс€ команда yum upgrade. ≈сли пакетный менеджер видит обновлени€, то он предложит сделать выбор установить или нет.

ƒополнительно есть утилита дл€ просто закачки пакетов без установки yumdownloader. –аботает просто. ѕереходим в нужную директорию и вводим, например, yumdownloader openssh и происходит закачка.

» последнее пакетный менеджер умеет искать пакеты. Ќапример, yum search openssh.