From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1792417131; bh=A9nFFQ6hDcr06dtyx4toSkw5NBdVe/o1cv5Igss+s1k=; h=Date:From:To:Subject:References:In-Reply-To; b=nn+zDPqPnn7JljWHknbvPJrF8OqGFvoqNCIVK/U1yJBKkmx8RGkZl9J8VPRdLGX+9 PEaSKCMJLMB+mwg64Mf6xDXvXqiixRwCut9vbWVzCAT8H78YJ47yYQV9F6l5XBwDiH KvJnJ6CsbG5v+dfTq5B2b54zE5G3fHq1EQhbwhG07ZNm1W5ZG1XWwXErBuRggLlHo6 ntlxo5bf0ELZ/J3CDkKoE2/2+1LoaIWc2CXC3dzdSTuIGQpCwgeTg/+/3nlpsSfM9U CnY6qRO4Hf5HzbtA4ANW7H1a0YGp9kU4/HsMgWzijUBujFBvKYJM9RvBwmPaUKK35Z 3shIVLupuSXLQ== Date: Mon, 19 Oct 2026 15:38:47 +0200 From: Alexey Gladkov To: make-initrd@lists.altlinux.org Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Subject: Re: [make-initrd] =?utf-8?b?a21zY29uICh3YXM6INCf0LDRgNCw0LzQtdGC0YAg?= =?utf-8?q?rdshell=29?= X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Oct 2026 13:38:56 -0000 Archived-At: List-Archive: On Mon, Oct 19, 2026 at 12:51:46PM +0000, Egor Shestakov wrote: > Привет! > > On Mon, Oct 19, 2026 at 12:22:58PM +0200, Alexey Gladkov wrote: > > On Wed, Oct 14, 2026 at 10:04:28AM +0000, Egor Shestakov wrote: > > > Legion, раз я делаю фичу kmscon мне бы было полезно разобраться с этой > > > проблемой, можешь подсказать в какую сторону посмотреть? > > > > Ты не мог бы рассказать подробнее, что ты хочешь сделать ? > > Хочу иметь возможность запускать kmscon в initrd вместо rdshell, т.к. на > HiDPI экранах текст, выводимый в фреймбуферную консоль почти не видно, что > особенно критично, когда запрашивается LUKS-пароль. А, ok. Я думал про эту реализацию несколько шире. Я думал, что вы хотите запускать kmscon и уже в него выводить уже всё остальное. Тогда потребуется убрать завязку на /dev/console и кое-какие другие изменения. В этом случае будет видна не только консоль, но и остальной любой вывод в initramfs. Может стоит так сделать ? > Kmscon, как эмулятор терминала, имеет значительные зависимости: > > - /dev/pts, это можно прописать как для dropbear в init-скрипте: > > > > [ -n "$(findmnt -k -n -o TARGET -t devpts 2>/dev/null)" ] || > > mount -t devpts devpts /dev/pts > > и > > - /dev/input/event*, поэтому он может запуститься только > после udev, но до uevent раз мы хотим обрабатывать LUKS. > > У меня получилось, с этой предварительной подготовкой, захардкодить > вместо вызова rdshell `kmscon --oneshot -l -- /bin/sh -l` , но это, > конечно, некрасиво и даже приблизительно не решение. Дело в том, что > kmscon, в сравнении с rdshell, вещь очень капризная и, в случае ошибки, > должен откатываться на rdshell, да и вызвать его можно далеко не сразу (как > обозначить это когда? создавать специальный файл во время init-скрипта?), > также нужно дополнительный boot-параметр (rdkmscon?), определяющий его > необходимость в initrd. Для "stop=" надо тоже придумать что-то -- с > определенного момента он может успешно отрабатывать в kmscon. > > Думаю, что нужно сделать некоторую фукнцию-обертку для вызова > kmscon/rdshell, в которой будет проверена надобность в kmscon, все ли > необходимые условия для его запуска исполнены, и, естественно, откат на > rdshell при ошибке. > > Так как /etc/rc.d/rc захватывает /dev/console и держит до конца старта всех > сервисов, с kmscon мы должны тоже полагаться на этот захват, чтобы не > стартануть раньше времени. > > Не понимаю, что делать с uevent-обработчиками, который читают из > /dev/console. Как это можно обернуть? Например 085-luks: > > > > exec 0/dev/console 2>&1 > > run_console_locked process_events > > И под конец письма вспомнил, что rdshell ещё свои параметры имеет для > парольного входа. > > -- > Egor Shestakov > ved ascii(0x40) altlinux ascii(0x2E) org > _______________________________________________ > Make-initrd mailing list > Make-initrd@lists.altlinux.org > https://lists.altlinux.org/mailman/listinfo/make-initrd -- Rgrds, legion