aboutsummaryrefslogtreecommitdiff
path: root/release
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1999-05-11 08:00:06 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1999-05-11 08:00:06 +0000
commite73c4fe5eb83eaa32b52a9d9eb8e8e00d12564d7 (patch)
tree481f33df2f0204b5e219539d5f6a4e145af5551c /release
parent49e5f1b92947e9b0560168bd9d94de30ac1dad7e (diff)
downloadsrc-e73c4fe5eb83eaa32b52a9d9eb8e8e00d12564d7.tar.gz
src-e73c4fe5eb83eaa32b52a9d9eb8e8e00d12564d7.zip
Preserve /root's dotfiles across upgrades too.
PR: 6559
Notes
Notes: svn path=/head/; revision=46994
Diffstat (limited to 'release')
-rw-r--r--release/sysinstall/installUpgrade.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/release/sysinstall/installUpgrade.c b/release/sysinstall/installUpgrade.c
index b153e02e8b30..49caf3d3b8cc 100644
--- a/release/sysinstall/installUpgrade.c
+++ b/release/sysinstall/installUpgrade.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: installUpgrade.c,v 1.65 1999/03/19 08:22:31 jkh Exp $
+ * $Id: installUpgrade.c,v 1.66 1999/04/07 03:06:44 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -280,6 +280,8 @@ installUpgrade(dialogMenuItem *self)
if (msgYesNo("Unable to backup your /etc into %s.\n"
"Do you want to continue anyway?", saved_etc) != 0)
return DITEM_FAILURE | DITEM_RESTORE;
+ msgNotify("Preserving /root directory..");
+ vsystem("tar -cBpf - -C / root | tar --unlink -xBpf - -C %s", saved_etc);
}
msgNotify("chflags'ing old binaries - please wait.");
@@ -353,6 +355,8 @@ media:
else {
/* Now try to resurrect the /etc files */
traverseHitlist(etc_files);
+ /* Resurrect the root dotfiles */
+ vsystem("tar -cBpf - root | tar -xBpf - -C / && rm -rf root");
}
msgConfirm("Upgrade completed! All of your old /etc files have been restored.\n"