Назад | Перейти на главную страницу

Установка CentOS EPEL, независимая от разрядности команда

Я пишу небольшой «сценарий установки», для которого требуется EPEL на CentOS. Команда (URL-адрес репо) отличается в зависимости от разрядности ОС, как мне объединить ее в одну команду?

Ссылки: Как установить EPEL

Я помню, как делал это с uname, но я не уверен, как включить его в существующую команду.

Вы могли бы сделать это с uname -i и cat /etc/redhat-release. Это даст следующее:

[bart@dev ~]$ cat /etc/redhat-release
CentOS release 6.2 (Final)
[bart@dev ~]$ uname -i
x86_64

Я бы написал это так:

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/`uname -i`/epel-release-5-4.noarch.rpm

(не тестировал, и вам нужно будет поймать некоторые исключения, например, 404)

uname -i должен выводить архитектуру во многих системах (это есть в некоторых моих системах i386, но неизвестно для других). Если по какой-то причине вам нужно получить тип машины, подойдет uname -m.

Вероятно, вы захотите сохранить это как переменную, включая строку arc=$(uname -i) в вашем скрипте и при необходимости используйте переменную $ arc