The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Технический комитет отклонил план по прекращению поддержки B..."
Отправлено n00by, 30-Апр-22 07:36 
> если в ОС было бы установлено одноименное чужому ядро.

Буквально:

list_of_img="$(find /boot -name 'initrd-*' -or -name 'initrd.img-*' -or -name 'initramfs-*' -or -name 'initramfs.img-*' | sort -u | tac)"

Ниже целиком код исключительно автономного разработчика. Ссылку на git лениво искать, тем более что на ссылки бот излишне активно реагирует, а позорники спамят мои сообщения жалобами.


#!/usr/bin/env bash
# Script to regenerate initramfs images, e.g. on systemd updates
# May also be called from other packages or scripts
# Why it was developed:
# https://bugzilla.rosalinux.ru/show_bug.cgi?id=9516
# License: GPLv3
# Upstream at https://abf.io/import/systemd
# Authors:
# - Mikhail Novosyolov <m.novosyolov@rosalinux.ru>, 2019

set -efu

if systemd-detect-virt --quiet --container && ! env | grep -q '^SKIP_GEN=' ; then
    SKIP_GEN=1
fi

if [ -f /etc/systemd-initramfs-gen.conf ]; then
    . /etc/systemd-initramfs-gen.conf
fi

DEBUG="${DEBUG:-0}"
NO_MSG="${NO_MSG:-0}"
SKIP_GEN="${SKIP_GEN:-0}"
MAX_KERNELS="${MAX_KERNELS:-5}"
GENERATOR="${GENERATOR:-dracut}"

if [ "$DEBUG" != 0 ]; then set -x; fi

if [ "$SKIP_GEN" = 1 ] ; then
# Note: we do have to regen initrd in chroot
# because chroots are often used in rescue purposes.
# But there is no need to spend time for this in containers
    if [ "$NO_MSG" != 0 ]; then exit 0; fi
    echo "Running in container; no need to (re)generate initramfs — it's not used in containers."
    echo "To force (re)generating initramfs run:"
    echo "# env SKIP_GEN=0 systemd-initramfs-gen"
    echo "and/or add SKIP_GEN=0 to /etc/systemd-initramfs-gen.conf to make it permanent."
    exit 0
fi

list_of_img="$(find /boot -name 'initrd-*' -or -name 'initrd.img-*' -or -name 'initramfs-*' -or -name 'initramfs.img-*' | sort -u | tac)"
num_of_img="$(echo "$list_of_img" | wc -l)"

if [ "$num_of_img" -gt "$MAX_KERNELS" ] && [ "$NO_MSG" != 0 ]; then
    echo "Initramfs for more than $MAX_KERNELS found. That's too many and will take too long."
    echo "Will regenerate initramfs only for $MAX_KERNELS latest kernels."
    echo "You may set MAX_KERNELS= in /etc/systemd-initramfs-gen.conf if you don't like this and rerun systemd-initramfs-gen."
fi

count=0
while read -r line
do
    count=$((count+1))
    if [ "$count" -gt "$MAX_KERNELS" ]; then break; fi
    kernel="$(echo "$line" | sed \
    -e 's,^/boot/initrd-,,' \
    -e 's,^/boot/initrd.img-,,' \
    -e 's,^/boot/initramfs-,,' \
    -e 's,^/boot/initramfs.img-,,' \
    -e 's,\.img$,,' \
    )"
    if [ -z "$kernel" ]; then continue; fi
    case "$GENERATOR" in
    dracut )
        ( set -x
        dracut --force "$line" "$kernel" || : )
    ;;
    update-initramfs )
        ( set -x
        update-initramfs -u -k "$kernel" || : )
    ;;
    * )
        echo "Unknown \$GENERATOR, set dracut or update-initramfs. Exiting."
        exit 1
    ;;
    esac
    unset kernel
done < <(echo "$list_of_img")


 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру