From c05248616106aceac19e71ddfb6955cbd44b27bb Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Tue, 28 Feb 2006 16:52:22 +0000 Subject: symlink old home directory to new one when renaming user (backport from HEAD, #21384) --- perl-install/any.pm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/perl-install/any.pm b/perl-install/any.pm index 9dca58edd..f08f02f70 100644 --- a/perl-install/any.pm +++ b/perl-install/any.pm @@ -69,6 +69,7 @@ sub create_user { } require authentication; + my $symlink_home_from = $u->{rename_from} && (getpwnam($u->{rename_from}))[7]; run_program::raw({ root => $::prefix, sensitive_arguments => 1 }, ($u->{rename_from} ? 'usermod' : 'adduser'), '-p', authentication::user_crypted_passwd($u, $isMD5), @@ -77,8 +78,9 @@ sub create_user { if_($u->{home}, '-d', $u->{home}, if_($u->{rename_from}, '-m')), if_($u->{shell}, '-s', $u->{shell}), ($u->{rename_from} - ? ('-l', $u->{name}, , $u->{rename_from}) + ? ('-l', $u->{name}, $u->{rename_from}) : $u->{name})); + symlink($u->{home}, $symlink_home_from) if $symlink_home_from; } my (undef, undef, $uid, $gid, undef, undef, undef, $home) = getpwnam($u->{name}); -- cgit v1.2.1