[make-initrd] Замена /var/run и /var/lock на симлинки, указываюшие на /run и /run/lock на стадии initrd

Alexey Gladkov legion at kernel.org
Sun May 31 22:57:41 MSK 2026


On Sun, May 31, 2026 at 04:54:56PM +0300, Anton Midyukov wrote:
> Доброго времени суток
> 
> Необходимость замены  /var/run и /var/lock на симлинки, указываюшие на /run и /run/lock
> уже давно перезрела. Начиная с p9, все новые системы являются мигрировавшими при их установке.
> Но остаются системы, обновлявшиеся с p8, какие-то самодельные сборки, где эта миграция не выполнялась.
> 
> Наверное, самый безопасный способ миграции таких систем - сделать это на этапе initrd.
> В таком случае потребуется монтировать /var, если он на отдельном разделе.
> А также потребуется монтировать систему на запись.
> Видимо, это должна быть фича, которая добавляется в initrd автоматически, если /var/run или /var/lock
> не являются симлинками.
> Хотелось бы узнать, насколько это хорошая идея.

Технически это возможно. В момент initramfs можно добавить

MOUNTPOINTS += /var

тогда мы попробуем добавить всё необходимое для /var и попытаемся
смонтировать его для системы. Далее нужно вызвать что-то вместо INIT,
что сделало бы миграцию.

Когда-то давно я предлагал сделать фичу для обновлений, но в то время
такая идея не вызвала интереса. Я предлагал сделать возможность вызова
скрипта определённого имени из рута системы перед запуском INIT.

-- 
Rgrds, legion



More information about the Make-initrd mailing list