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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.1 Date: Tue, 9 Feb 2021 14:39:53 +0100 From: Alexey Gladkov To: ALT Linux Team development discussions Message-ID: <20210209133953.qqbr63rbxrpzaejl@example.org> References: <20210204163437.52dzrpmksaubrjho@example.org> <20210205105540.2lqnbywcbq7ddjyr@example.org> <20210208031116.GD18330@altlinux.org> <20210208104618.ggpk5jbvvh7z2qzl@example.org> <20210209130314.GA2631@altlinux.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20210209130314.GA2631@altlinux.org> Subject: Re: [devel] startup and standalone versions of systemd utilities. X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Feb 2021 13:39:59 -0000 Archived-At: List-Archive: List-Post: On Tue, Feb 09, 2021 at 04:03:15PM +0300, Alexey V. Vissarionov wrote: > On 2021-02-08 11:46:18 +0100, Alexey Gladkov wrote: > > >>> udevd требует systemd-utils. Разделение миров systemd и sysv > >>> невозможно пока они оба используют udevd. > >> Ну в общем-то выкинуть udev - совершенно не проблема... у меня, > >> например, его просто никогда не было. > >> % zgrep DEVTMPFS /proc/config.gz > >> CONFIG_DEVTMPFS=y > >> CONFIG_DEVTMPFS_MOUNT=y > > Не путайте тёплое с мягким. udev уже давно не создаёт файлы > > устройств. > > Да ну? А как же надпись "populating /dev" при загрузке? Уф. Ну вы хоть бы постарались почитать прежде чем писать. udev c 2012 не умеет создавать устройства и не умеет работать без devtmpfs. До этого он прекрасно умел работать с простым tmpfs. https://github.com/systemd/systemd/commit/220893b3cbdbf8932f95c44811b169a8f0d33939 > Врет? Раньше (когда он создавал файлы устройств) он досоздавал устройства на tmpfs. Советую почитать, что делает /etc/rc.d/init.d/udevd, когда пишет "Populating /dev" и что происходит после этих команд. > > Для этого как раз используется devtmpfs. udev нужен для обработки > > факта появления устройства и ещё некоторых эвентов ядра. > > Если точнее, _был_ нужен во времена /sbin/hotplug - сейчас все > это можно получить от ядра через netlink socket откуда угодно, > поэтому CONFIG_UEVENT_HELPER в ядре можно даже не включать. > > Кстати, что любопытно: > > config UEVENT_HELPER > bool "Support for uevent helper" > help > The uevent helper program is forked by the kernel for > every uevent. > Before the switch to the netlink-based uevent source, this > was used to hook hotplug scripts into kernel device events. > It usually pointed to a shell script at /sbin/hotplug. > > этот самый /sbin/hotplug изначально планировался как шелловский > скрипт, а не кусок udev :-) Брррр ... При чём тут /sbin/hotplug ? Этот хэлпер не имеет никакого отношения к udevd и udevd также не требует этот параметр ядра. udevd использует как раз netlink для получения эвентов ядра. По сути udevd и есть тот удобный механизм, который позволяет реагировать на эвенты ядра, приходящие через netlink. Да и во времена, как вы сказали, во времена /sbin/hotplug udevd был не нужен, потому что его в те времена ещё не было. hotplug намного более старый механизм. -- Rgrds, legion