diff options
author | Olivier Blin <oblin@mandriva.org> | 2006-02-28 16:52:22 +0000 |
---|---|---|
committer | Olivier Blin <oblin@mandriva.org> | 2006-02-28 16:52:22 +0000 |
commit | c05248616106aceac19e71ddfb6955cbd44b27bb (patch) | |
tree | 9628693347e055f9b60cd95c0cfcec0787221678 /perl-install/any.pm | |
parent | 66cdc556a27aeeb6dd50d099e7df09cec3562160 (diff) | |
download | drakx-backup-do-not-use-c05248616106aceac19e71ddfb6955cbd44b27bb.tar drakx-backup-do-not-use-c05248616106aceac19e71ddfb6955cbd44b27bb.tar.gz drakx-backup-do-not-use-c05248616106aceac19e71ddfb6955cbd44b27bb.tar.bz2 drakx-backup-do-not-use-c05248616106aceac19e71ddfb6955cbd44b27bb.tar.xz drakx-backup-do-not-use-c05248616106aceac19e71ddfb6955cbd44b27bb.zip |
symlink old home directory to new one when renaming user (backport from HEAD, #21384)
Diffstat (limited to 'perl-install/any.pm')
-rw-r--r-- | perl-install/any.pm | 4 |
1 files changed, 3 insertions, 1 deletions
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}); |