summaryrefslogtreecommitdiffstats
path: root/ipa-client/ipa-install/ipa-client-install
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2012-05-29 14:20:38 -0400
committerRob Crittenden <rcritten@redhat.com>2012-06-25 17:24:34 -0400
commitf4d2f2a65b799e200c2f98164e1a0ac4e9b07376 (patch)
tree14b725655a56f3b7180f013f2b18759df5789b30 /ipa-client/ipa-install/ipa-client-install
parentd1fe43c56fe211db035bd6a30ac06fcfc6f61557 (diff)
downloadfreeipa-f4d2f2a65b799e200c2f98164e1a0ac4e9b07376.tar.gz
freeipa-f4d2f2a65b799e200c2f98164e1a0ac4e9b07376.tar.xz
freeipa-f4d2f2a65b799e200c2f98164e1a0ac4e9b07376.zip
Configure automount using autofs or sssd.
This script edits nsswitch.conf to use either ldap (autofs) or sss (sssd) to find automount maps. NFSv4 services are started so Kerberos encryption and/or integrity can be used on the maps. https://fedorahosted.org/freeipa/ticket/1233 https://fedorahosted.org/freeipa/ticket/2193
Diffstat (limited to 'ipa-client/ipa-install/ipa-client-install')
-rwxr-xr-xipa-client/ipa-install/ipa-client-install25
1 files changed, 24 insertions, 1 deletions
diff --git a/ipa-client/ipa-install/ipa-client-install b/ipa-client/ipa-install/ipa-client-install
index 9a8600d55..4b8d826dd 100755
--- a/ipa-client/ipa-install/ipa-client-install
+++ b/ipa-client/ipa-install/ipa-client-install
@@ -195,6 +195,16 @@ def uninstall(options, env):
root_logger.info("Refer to ipa-server-install for uninstallation.")
return CLIENT_NOT_CONFIGURED
+ try:
+ run(["ipa-client-automount", "--uninstall", "--debug"])
+ except Exception, e:
+ root_logger.error(
+ "Unconfigured automount client failed: %s", str(e))
+
+ # Reload the state as automount unconfigure may have modified it
+ fstore._load()
+ statestore._load()
+
hostname = None
was_sssd_configured = False
try:
@@ -442,6 +452,19 @@ def uninstall(options, env):
"Reboot command failed to exceute: %s", str(e))
return CLIENT_UNINSTALL_ERROR
+ rv = 0
+
+ if fstore.has_files():
+ root_logger.error('Some files have not been restored, see /var/lib/ipa-client/sysrestore/sysrestore.index')
+ has_state = False
+ for module in statestore.modules.keys():
+ root_logger.error('Some installation state for %s has not been restored, see /var/lib/ipa/sysrestore/sysrestore.state' % module)
+ has_state = True
+ rv = 1
+
+ if has_state:
+ root_logger.warning('Some installation state has not been restored.\nThis may cause re-installation to fail.\nIt should be safe to remove /var/lib/ipa-client/sysrestore.state but it may\nmean your system hasn\'t be restored to its pre-installation state.')
+
# Remove the IPA configuration file
try:
os.remove("/etc/ipa/default.conf")
@@ -450,7 +473,7 @@ def uninstall(options, env):
root_logger.info("Client uninstall complete.")
- return 0
+ return rv
def configure_ipa_conf(fstore, cli_basedn, cli_realm, cli_domain, cli_server):
ipaconf = ipaclient.ipachangeconf.IPAChangeConf("IPA Installer")