Red Hat Bugzilla – Bug 799874
Startup Script /etc/rc.d/init.d/ldap is not marked as config file in RPM-Package
Last modified: 2013-03-03 20:29:59 EST
Description of problem:
The startup script /etc/rc.d/init.d/ldap is not marked as a config file anymore and will be overwritten by an update.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install openldap under RHEL 5.7
2. modify /etc/rc.d/init.d/ldap
3. update to RHEL 5.8
/etc/rc.d/init.d/ldap will be saved as ldap.rpmsave and /etc/rc.d/init.d/ldap is the new file from the package.
/etc/rc.d/init.d/ldap should be left alone and the new file should be created as ldap.rpmnew.
Looking a bit further I found that the change was intentional because of bug 738768.
I honestly don't understand the rationale behind bug 738768.
They somehow felt the need to change /etc/rc.d/init.d/ldap, which we felt too.
But why are they complaining that after an update their changes have not been discarded, but kept?
In our case the init-script was replaced and the new one would produce an error message resulting in the ldap service not being restarted but stopped because of the update.
Of course one can argue whether the init-script should be considered a config file or not, but I believe it should and authors of others packages seem to
think so too, as most scripts under /etc/rc.d/init.d are in fact marked as such.
If I change a file intentionally I would like the change to survive an update of the package, which will not always be possible. In this case I could have looked at the installed package and see that the file is a config-file, so I should expect the change to stay. So even if it was wrong to mark the file as config-file I think it is very bad to change that after the fact.
No. Initscripts are not configuration files. And you should not use it for configuration. We have /etc/sysconfig/ldap for this purpose. And I do not think that most of the scripts in /etc/rc.d/init.d are marked as configuration files.
You can take a look at Fedora packaging policy. This applies to RHEL as well:
If the server does not start with shipped initscript, then something is wrong and you should file a bug with detailed description. If you need some new functionality, you can create a RFE bug with reasoning. (Your support representative can help you with it.)
I'm sorry. Closing as NOTABUG.
I understand the argument and I am still trying to get a quote why exactly it has been changed, but regarding /etc/rc.d/init.d a simple
# rpm -q -a -c | grep /etc/rc.d/init.d/
gives quite a list of files (57 of a total 92 files in that directory).
Interesting. It seems that it was added to the guidelines later. But still, this is not a bug. Initscript isn't a configuration file, it's a script. If you cannot reach your goal with /etc/sysconfig/ldap configuration file, please, file a RFE bug.