summaryrefslogtreecommitdiffstats
path: root/perl-install/fs/format.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/fs/format.pm')
-rw-r--r--perl-install/fs/format.pm13
1 files changed, 8 insertions, 5 deletions
diff --git a/perl-install/fs/format.pm b/perl-install/fs/format.pm
index c511cf51d..659fbad04 100644
--- a/perl-install/fs/format.pm
+++ b/perl-install/fs/format.pm
@@ -1,4 +1,4 @@
-package fs::format; # $Id: format.pm 268842 2010-05-17 06:54:44Z pterjan $
+package fs::format;
use diagnostics;
use strict;
@@ -23,7 +23,7 @@ my %cmds = (
swap => [ 'util-linux', 'mkswap' ],
ntfs => [ 'ntfsprogs', 'mkntfs', '--fast' ],
'ntfs-3g' => [ 'ntfsprogs', 'mkntfs', '--fast' ],
- btrfs => [ 'btrfs-progs', 'mkfs.btrfs' ],
+ btrfs => [ 'btrfs-progs', 'mkfs.btrfs', '-f' ],
nilfs2 => [ 'nilfs-utils', 'mkfs.nilfs2' ],
);
@@ -64,7 +64,7 @@ my %edit_LABEL = ( # package, command, option
);
# Preserve UUID on fs where we couldn't enforce it while formatting
-my %preserve_UUID = ( # package, commande
+my %preserve_UUID = ( # package, command
#btrfs => [ 'btrfs-progs', 'FIXME' ],
jfs => [ 'jfsutils', 'jfs_tune', ],
xfs => [ 'xfsprogs', 'xfs_admin' ],
@@ -114,6 +114,7 @@ sub part {
$wait_message->(N("Formatting partition %s", $part->{device})) if $wait_message;
part_raw($part, $wait_message);
}
+ undef $part->{toFormat};
}
sub write_label {
@@ -193,8 +194,10 @@ sub part_raw {
delete $part->{device_LABEL_changed};
# Preserve UUID on fs where we couldn't enforce it while formatting
- (undef, $cmd) = @{$preserve_UUID{$fs_type}};
- run_program::raw($cmd, '-U', devices::make($dev)) if $cmd;
+ if (my $uuid_cmd = $preserve_UUID{$fs_type}) {
+ (undef, $cmd) = @$uuid_cmd;
+ run_program::raw({}, $cmd, '-U', devices::make($dev)) if $cmd;
+ }
if (member($fs_type, qw(ext3 ext4))) {
disable_forced_fsck($dev);