summaryrefslogtreecommitdiffstats
path: root/perl-install/install_steps_interactive.pm
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2002-07-30 12:24:42 +0000
committerPascal Rigaux <pixel@mandriva.com>2002-07-30 12:24:42 +0000
commita5b128d11b7ce8b5776492e1f560ab034e255ab7 (patch)
tree6c2fcee2ec50ccbeca1ee5230bcf25a7152768cf /perl-install/install_steps_interactive.pm
parent3507110b9e2f60e615983a93003dc0cc4e140808 (diff)
downloaddrakx-a5b128d11b7ce8b5776492e1f560ab034e255ab7.tar
drakx-a5b128d11b7ce8b5776492e1f560ab034e255ab7.tar.gz
drakx-a5b128d11b7ce8b5776492e1f560ab034e255ab7.tar.bz2
drakx-a5b128d11b7ce8b5776492e1f560ab034e255ab7.tar.xz
drakx-a5b128d11b7ce8b5776492e1f560ab034e255ab7.zip
- call fsck.jfs before mounting read-write (otherwise mount simply fails)
- propose fsck -y for ext2 when fsck -a fails
Diffstat (limited to 'perl-install/install_steps_interactive.pm')
-rw-r--r--perl-install/install_steps_interactive.pm19
1 files changed, 12 insertions, 7 deletions
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index 68e986898..ffbc9ad82 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -468,13 +468,18 @@ sub choosePartitionsToFormat {
sub formatMountPartitions {
my ($o, $fstab) = @_;
my $w;
- fs::formatMount_all($o->{all_hds}{raids}, $o->{fstab}, $o->{prefix}, sub {
- my ($part) = @_;
- $w ||= $o->wait_message('', _("Formatting partitions"));
- $w->set(isLoopback($part) ?
- _("Creating and formatting file %s", $part->{loopback_file}) :
- _("Formatting partition %s", $part->{device}));
- });
+ catch_cdie {
+ fs::formatMount_all($o->{all_hds}{raids}, $o->{fstab}, $o->{prefix}, sub {
+ my ($part) = @_;
+ $w ||= $o->wait_message('', _("Formatting partitions"));
+ $w->set(isLoopback($part) ?
+ _("Creating and formatting file %s", $part->{loopback_file}) :
+ _("Formatting partition %s", $part->{device}));
+ });
+ } sub {
+ $@ =~ /fsck failed on (\S+)/ or return;
+ $o->ask_yesorno('', _("Failed to check filesystem %s. Do you want to repair the errors? (beware, you can loose data)", $1), 1);
+ };
die _("Not enough swap space to fulfill installation, please add some") if availableMemory < 40 * 1024;
}