ldd --version | sed 's/.* //;q' | awk -F. '{ if ($1 > 2 || ($1 == 2 && $2 >= 15)) { exit 0 } else {exit 1} }'
Объяснение:
Команда sed
берет первую строку вывода из ldd --version
, удаляет все до последнего пробела включительно, а затем завершает работу ( поэтому он печатает только номер).
Флаг -F
для awk
устанавливает .
как разделитель полей.
Если первое число (перед точкой) больше 2, или , если первое число равно 2, а второе - не менее 15, статус выхода awk
будет будь настоящим". В противном случае он будет ложным.
Вы можете использовать это в сценарии bash
следующим образом:
if ldd --version | sed 's/.* //;q' | awk -F. '{ if ($1 > 2 || ($1 == 2 && $2 >= 15)) { exit 0 } else {exit 1} }' ; then
echo "Version is 2.15 or later"
else
echo "Version is too old."
fi
Пакет linux-headers-4.6.0-kali1-amd64
больше не доступен в обычном репозитории kali-linux, его следует обновить до 4.8.x
версия.
обновите ваш /etc/apt/sources.list
: см. Kali sources.list Repositories
Перечислите доступные заголовки linux и образ linux через поиск по apt-cache
:
apt update
apt-cache search linux-headers
Затем установите правильный пакет e, g (это пример, он зависит от предыдущей выходной команды):
apt-get install linux-headers-4.8.0-kali1-amd64
также запустить;
apt-cache search linux-image
установить его:
apt-get install linux-image-4.8.0-kali1-amd64
Перезагрузите систему.
Или вы можете использовать следующую команду для обновления ядра до последней доступной версии и установки соответствующих заголовков ядра:
apt update
apt dist-upgrade
reboot
apt install linux-headers-$(uname -r)
Таким образом, из-за нехватки ресурсов для поддержки обслуживания старых систем большинство компаний продолжают двигаться дальше. Вы тоже должны. Просто скачайте новую версию Kali Linux и избавьтесь от всех этих головных болей. Кроме того, у вас исправлены все ошибки и решено множество проблем. Если вы не хотите взломать и создать альтернативы репозиториям. Удачи.