flag=1
while [ ${flag} -eq 1 ]
do
read -p "Please answer B or G " bg
if [ "${bg}" = B ] || [ "${bg}" = b ]
then
flag=0
groupname=boys
else
if [ "${bg}" = G ] || [ "${bg}" = g ]
then
flag=0
groupname=girls
fi
fi
done
sudo usermod -a -G ${groupname} $username
это самый простой способ, который я могу придумать, при этом ясно показывающий, что происходит.
Вы пытаетесь установить RPM-пакет, предназначенный для определенного дистрибутива, на другой дистрибутив Linux.
Судя по суффиксу вашего пакета rpm
(.el7
), вы используете RHEL 7 или один из его производных дистрибутивов, например CentOS 7. Пакет libgpm
, который вы пытаетесь установить, имеет .alt*
суффикс, который, кажется, используется ALT Linux.
RPM-пакеты, предназначенные для разных дистрибутивов, как правило, несовместимы друг с другом, и вы, вероятно, столкнетесь с этой несовместимостью между зависимостями, даже с неявными зависимостями самого менеджера пакетов.
В CentOS 7 вместо этого вы, скорее всего, захотите использовать gpm-libs
, который можно скачать здесь:gpm-libs-1.20.7-5.el7.x86_64.rpm
. Или, что еще лучше, установите его с помощьюyum
:
yum install gpm-libs
Чтобы ответить на более общий вопрос о том, как найти пакеты, которые удовлетворяют определенной зависимости, вы также можете запросить yum
для этого.
Например, чтобы найти rpmlib(SetVersions)
, если доступно:
yum whatprovides 'rpmlib(SetVersions)'
Предполагая, что такой пакет существует, вы также можете передать эту функцию непосредственно yum install
, чтобы установить пакет, который ее предоставляет:
yum install 'rpmlib(SetVersions)'
И, наконец, вы можете использовать yum
для установки локального пакета, разрешая его зависимости от базы данных и устанавливая необходимые пакеты для их удовлетворения:
yum localinstall./*.rpm
(Использование yum install
с локальным файлом также работает.)