[OE-core] [PATCH 1/1] systemd: make /etc/sysctl.conf have real effect

Randy Witt randy.e.witt at linux.intel.com
Thu Nov 6 22:38:13 UTC 2014


On 11/06/2014 05:29 AM, Koen Kooi wrote:
>
> Op 6 nov. 2014, om 12:59 heeft ChenQi <Qi.Chen at windriver.com> het volgende geschreven:
>
>>
>>
>> On 11/06/2014 06:33 PM, Koen Kooi wrote:
>>>> Op 6 nov. 2014, om 08:59 heeft ChenQi <Qi.Chen at windriver.com> het volgende geschreven:
>>>>
>>>> On 11/06/2014 03:48 PM, Koen Kooi wrote:
>>>>> Op 6 nov. 2014, om 08:32 heeft Chen Qi <Qi.Chen at windriver.com> het volgende geschreven:
>>>>>
>>>>>> In systemd, /etc/sysctl.conf is actually ignored by systemd-sysctl,
>>>>>> because this command only examine *.conf files under a bunch of directories
>>>>>> like /etc/sysctl.d or /usr/lib/sysctl.d.
>>>>>>
>>>>>> The problem is we are used to configuring kernel parameters in /etc/sysctl.conf,
>>>>>> so it would be really strange if the configuration in that file doesn't have any
>>>>>> effect.
>>>>>>
>>>>>> This patch reference Fedora's solution to this problem, creating a symlink to
>>>>>> /etc/sysctl.conf under /etc/sysctl.d/.
>>>>> Shouldn't this be done in procps instead?
>>>>>
>>>> Actually, the problem is not about `sysctl' command.
>>>> procps provides `sysctl', but busybox also provides this command.
>>>> It's very possible that on our generated image, procps is not installed but `sysctl' command is available.
>>>> Both busybox's and procps's `sysctl' command takes /etc/sysctl.conf into consideration.
>>> Right, but only procps installs that file.
>>
>> As busybox provides `sysctl' utility, is it reasonable that it also provides a corresponding configuration file (/etc/sysctl.conf)? Should we make a patch for busybox?
>>
>>
>>>> Now, systemd provides a similar utility called `systemd-sysctl' which is executed at boot time via systemd-sysctl.service.
>>>>
>>>> So our actually problem is that systemd-sysctl ignores /etc/sysctl.conf, which makes it somewhat strange, especially to users who are used to configuring parameters in sysctl.conf.
>>>> And this patch solves this problem by adding a symlink under /etc/sysctl.d/.
>>>>
>>>> That's why I think we should put this in systemd.
>>> You're adding a symlink to a file which only exists if you install procps, which isn't in RDEPENDS.
>>>
>>
>> As I said before, procps is *not* necessary for the sysctl mechanism to have effect.
>> (Think about systemd-based core-image-minimal image.)
>>
>> Busybox provides `sysctl', systemd provides `systemd-sysctl'.
>> (It's an easy program, there might exist other packages that provide it too.)
>>
>> /etc/sysctl.conf is a configuration file which is very likely to be modified or created by administrators to configure kernel parameters.
>> (You can't expect administrators to all start learning systemd, trying to understand the gap and differences. In addition, they may have scripts that edit /etc/sysctl.conf to automate their work.)
>>
>> The point of the symlink is to ensure that when users edit /etc/sysctl.conf (or create one), configurations in that file will have effect at boot time.
>>
>> Just think about this problem from a standpoint of user experience.
>
> You still haven't convinced me that shipping a broken symlink is a good idea. I'm pretty sure it's not even allowed in out commit guidelines.
>
I agree, even in Fedora's case, both /etc/sysctl.conf and 
/etc/sysctl.d/99-sysctl.conf come from the same package, initscripts-9.51-2.



More information about the Openembedded-core mailing list