Bug 448173 - ipa-server-install --uninstall -U doesn't kill and remove slapd process
Summary: ipa-server-install --uninstall -U doesn't kill and remove slapd process
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: freeIPA
Classification: Retired
Component: ipa-server
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Rob Crittenden
QA Contact: Chandrasekar Kannan
URL:
Whiteboard:
Depends On:
Blocks: 429034
TreeView+ depends on / blocked
 
Reported: 2008-05-24 00:13 UTC by Michael Gregg
Modified: 2015-01-04 23:32 UTC (History)
1 user (show)

Fixed In Version: freeipa-2.0.0-1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-03-27 07:13:23 UTC
Embargoed:


Attachments (Terms of Use)
Fix uninstall (3.13 KB, patch)
2008-05-29 02:51 UTC, Rob Crittenden
no flags Details | Diff

Description Michael Gregg 2008-05-24 00:13:24 UTC
How reproducible:
always

Steps to Reproduce:
1. install ipa-server
2. uninstall ipa-server
3.
  
Actual results:
ldap still running:
4672 ?        Sl     0:00 /usr/sbin/ns-slapd -D
/etc/dirsrv/slapd-SJCTEST-REDHAT-COM -i

Expected results:
possibly for the directory to be archived, but removed, along with the user process.

Additional info:
If I re-run ipa-server-install I get:

An existing Directory Server has been detected.
Do you wish to remove it and create a new one? [no]:

Comment 1 Rob Crittenden 2008-05-27 20:46:21 UTC
What command-line options did you use for the uninstall?

What version of ipa-server is this?

Comment 2 Rob Crittenden 2008-05-28 19:15:59 UTC
Do you have an install where this is repeatable? I can't duplicate it myself but
I have an idea where in the code it may be breaking, I just need to see it in
order to fix it.

Comment 3 Rob Crittenden 2008-05-28 22:02:45 UTC
Duplicated. It only happens with --setup-bind is selected.

The problem is that /var/lib/ipa/sysrestore/sysrestore.state only has
information on named and not on any of the other processes.

Comment 4 Rob Crittenden 2008-05-29 02:51:00 UTC
Created attachment 307009 [details]
Fix uninstall

Make check_inst() a standalone function in bindinstance.

When an install instance is created that contains a pointer to a sysrestore
point it loads in the current configuration when instantiated. If an
instance is instantiated but not used then changes may occur to the
system state that it is unaware of. So one needs to take care in the order
that things are done to avoid losing information. 

When bind was setup it was overwriting all data in sysrestore.state and
leaving just a [named] section. This caused problems at uninstall.

Comment 5 Rob Crittenden 2008-05-30 15:23:03 UTC
ipa-1-0: ee2b83210bc4446b0f5846fa0fb95822f5a3ece6
master: 165d26ce2b5d6fefe26679822cc274843de889dd

Comment 6 Yi Zhang 2008-06-09 21:39:02 UTC
QA Verified on June 9, 2008 (Yi)
Build used: June 9, 2008 (64bit RHEL 5.2)

before uninstall:
server64[06/09/08 02:38]~ >service dirsrv status
dirsrv IPAQA-COM (pid 8709) is running...
server64[06/09/08 02:46]~ >ipa-finduser u102
Full Name: user 102
Home Directory: /home/u102
Login Shell: /bin/bash
Login: u102

then uninstall ipa-server:
server64[06/09/08 02:48]~ >ipa-server-install --uninstall

This is a NON REVERSIBLE operation and will delete all data and configuration!

Are you sure you want to continue with the uninstall procedure?:[NO/yes] yes
server64[06/09/08 02:49]~ >service dirsrv status
server64[06/09/08 02:50]~ >ps -elf | grep slapd
0 R root      9275  3095  0  78   0 - 15277 -      02:50 pts/0    00:00:00 grep
slapd




Note You need to log in before you can comment on or make changes to this bug.