[Adduser-devel] Bug#451321: adduser: deluser should not rewrite backup files
Kris Kvilekval
kris at cs.ucsb.edu
Wed Nov 14 23:38:09 UTC 2007
Package: adduser
Version: 3.105
Severity: minor
Tags: patch
The original backup code in deluser first writes the tar file, and then compresses it.
This patch simply uses some gnu tar options (already required) to accomplish
the same. This is useful when backup up over NFS.
*** deluser.orig 2007-11-14 15:29:19.000000000 -0800
--- deluser 2007-11-14 15:29:27.000000000 -0800
***************
*** 300,317 ****
print $filesfile join("\n", at files);
$filesfile->close();
my $tar = &which('tar');
! &systemcall($tar, "-cf", $backup_name, "--files-from", $filesfilename);
! chmod 0600, $backup_name;
! my $rootid = 0;
! chown $rootid, $rootid, $backup_name;
! unlink($filesfilename);
my $bzip2 = &which('bzip2', 1);
my $gzip = &which('gzip', 1);
if($bzip2) {
! systemcall($bzip2, $backup_name);
} elsif($gzip) {
! systemcall($gzip, "--best", $backup_name);
}
}
if(@files || @dirs) {
--- 300,322 ----
print $filesfile join("\n", at files);
$filesfile->close();
my $tar = &which('tar');
!
! my $ext = "";
! my $options = "";
my $bzip2 = &which('bzip2', 1);
my $gzip = &which('gzip', 1);
if($bzip2) {
! $options .= "--bzip2";
! $ext = ".bz2";
} elsif($gzip) {
! $options .= "--gzip";
! $ext = ".gz";
}
+ &systemcall($tar, "-c" , $options, "-f", $backup_name.$ext, "--files-from", $filesfilename);
+ chmod 600, $backup_name;
+ my $rootid = 0;
+ chown $rootid, $rootid, $backup_name.$ext;
+ unlink($filesfilename);
}
if(@files || @dirs) {
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (990, 'stable'), (500, 'unstable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-686
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Versions of packages adduser depends on:
ii debconf [debconf-2.0] 1.5.11 Debian configuration management sy
ii passwd 1:4.0.18.1-7 change and administer password and
ii perl-base 5.8.8-7 The Pathologically Eclectic Rubbis
adduser recommends no packages.
-- debconf information:
* adduser/homedir-permission: true
More information about the Adduser-devel
mailing list