Bug #13740
closedService having both an init script and a real systemd unit are managed through the init script
Description
When a service hav an init script in /etc/init.d and a real systemd unit (not a compatibility one), the init script is used by Rudder to manage it. We should use systemd instead.
We could probably test the presence of an actual native systemd unit, and force systemd usage in this case.
Updated by Alexis Mousset about 6 years ago
- Subject changed from Systemd on debian 9 to Service having both an init script and a real systemd unit are managed through the init script
- Description updated (diff)
- Category set to Generic methods - Service Management
- Target version set to 5.0.2
- Severity set to Minor - inconvenience | misleading | easy workaround
- User visibility set to Infrequent - complex configurations | third party integrations
- Priority changed from 0 to 22
Updated by Vincent MEMBRÉ about 6 years ago
- Target version changed from 5.0.2 to 5.0.3
Updated by Alexis Mousset about 6 years ago
- Related to Bug #13833: Continuous repair on "service enabled at boot" added
Updated by Vincent MEMBRÉ about 6 years ago
- Target version changed from 5.0.3 to 5.0.4
Updated by Vincent MEMBRÉ almost 6 years ago
- Target version changed from 5.0.4 to 5.0.5
- Priority changed from 22 to 21
Updated by Alexis Mousset almost 6 years ago
- Target version changed from 5.0.5 to 5.0.6
Updated by Vincent MEMBRÉ almost 6 years ago
- Target version changed from 5.0.6 to 5.0.7
Updated by Alexis Mousset almost 6 years ago
- Severity changed from Minor - inconvenience | misleading | easy workaround to Major - prevents use of part of Rudder | no simple workaround
- User visibility changed from Infrequent - complex configurations | third party integrations to Operational - other Techniques | Rudder settings | Plugins
- Priority changed from 21 to 49
This will become a bigger problem as init scripts are nowadays less actively maintained (compared to systemd units).
We need to a find a solution that allows smooth upgrades.
Setting to major as there are no real workaround (except using commands).
Setting to Operational as it happens for most debian services.
Updated by Alexis Mousset almost 6 years ago
The tricky thing is that we had to add the priority to init script for services having autogenerated systemd unit IIRC. We should detect the presence of an actual unit and use systemd in this case.
We also need to take care of debian systems not using systemd, and have proper detection of who is pid 0 before chosing a service method.
Updated by François ARMAND almost 6 years ago
- Target version changed from 5.0.7 to 5.0.9
Updated by Vincent MEMBRÉ over 5 years ago
- Target version changed from 5.0.9 to 5.0.10
Updated by Alexis Mousset over 5 years ago
- Related to Bug #14653: Missing dependency on systemd for recent Ubuntu/Debian systems added
Updated by Vincent MEMBRÉ over 5 years ago
- Target version changed from 5.0.10 to 5.0.11
- Priority changed from 48 to 47
Updated by Vincent MEMBRÉ over 5 years ago
- Target version changed from 5.0.11 to 5.0.12
Updated by Vincent MEMBRÉ over 5 years ago
- Target version changed from 5.0.12 to 5.0.13
- Priority changed from 47 to 46
Updated by Vincent MEMBRÉ over 5 years ago
- Target version changed from 5.0.13 to 5.0.14
- Priority changed from 46 to 44
Updated by Vincent MEMBRÉ about 5 years ago
- Target version changed from 5.0.14 to 5.0.15
- Priority changed from 44 to 43
Updated by Alexis Mousset about 5 years ago
- Target version changed from 5.0.15 to 6.0.0~beta1
Updated by Alexis Mousset about 5 years ago
- Status changed from New to In progress
- Assignee set to Alexis Mousset
Updated by Alexis Mousset about 5 years ago
- Status changed from In progress to Pending technical review
- Assignee changed from Alexis Mousset to Nicolas CHARLES
- Pull Request set to https://github.com/Normation/ncf/pull/1079
Updated by Alexis Mousset about 5 years ago
For reference, the core issue was for services using the init compatibility layer, for which is-enabled does not work on debian systems, which breaks boot status management.
The proposed fix is to continue using init script/rc.d for init scripts, unless the is also a unit file, in which case systemd will be used, fixing this bug while not making the root problem reappear.
Updated by Alexis Mousset about 5 years ago
- Status changed from Pending technical review to Pending release
Applied in changeset 7e9eca96be3ddcdfa85fe3a56847424ea23163f0.
Updated by Vincent MEMBRÉ about 5 years ago
- Status changed from Pending release to Released
This bug has been fixed in Rudder 6.0.0~beta1 which was released today.
Updated by Alexis Mousset over 2 years ago
- Project changed from 41 to Rudder
- Category changed from Generic methods - Service Management to Generic methods
- Priority changed from 43 to 46