How does the postinstaller backs up slapd.d?

Asked by Raubvogel on 2013-10-22

I was doing a normal package upgrade in 12.04LTS when I found an error while upgrading slapd:

root@ubuntu:~# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]?
Setting up slapd (2.4.28-1.1ubuntu4.4) ...
  Backing up /etc/ldap/slapd.d in /var/backups/slapd-2.4.28-1.1ubuntu4.3... cp: cannot overwrite directory `/var/backups/slapd-2.4.28-1.1ubuntu4.3/slapd.d' with non-directory
dpkg: error processing slapd (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 slapd
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@ubuntu:~#

Now, I take the reason it did not like my /etc/ldap/slapd.d is because it is an alias (/etc/ldap/slapd.d -> /export/ldap/slapd). But, why should it care? There are many ways to copy an alias and expand it in the process. And, I have not noticed such behaviour before. Did something change in apt or openldap to make the postinstall annoyed at the alias?

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu openldap Edit question
Assignee:
No assignee Edit question
Solved by:
Roel Brook
Solved:
2013-10-29
Last query:
2013-10-29
Last reply:
2013-10-22

I suggest you report a bug

Best Roel Brook (rainmaker52) said : #2

Setting up slapd (2.4.28-1.1ubuntu4.4) ...
  Backing up /etc/ldap/slapd.d in /var/backups/slapd-2.4.28-1.1ubuntu4.3... cp: cannot overwrite directory `/var/backups/slapd-2.4.28-1.1ubuntu4.3/slapd.d' with non-directory

/var/backups/slapd-2.4.28-1.1ubuntu4.3/slapd.d is appearently a directory.

Remove this directory or rename it, and the installer should be happy. If it happens again, this is a bug.

Raubvogel (raubvogel) said : #3

Thanks Roel Brook, that solved my question.