summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mageia.org>2012-01-06 00:13:50 +0000
committerThierry Vignaud <tv@mageia.org>2012-01-06 00:13:50 +0000
commit12f90373e8b7222368c3b53087899ba40a60e220 (patch)
tree11406d0391fc6f24af1cde927de2a68664cc2eaa /perl-install
parent2cdaff5ff522e3d49e868bd7def0caa742bd92eb (diff)
downloaddrakx-12f90373e8b7222368c3b53087899ba40a60e220.tar
drakx-12f90373e8b7222368c3b53087899ba40a60e220.tar.gz
drakx-12f90373e8b7222368c3b53087899ba40a60e220.tar.bz2
drakx-12f90373e8b7222368c3b53087899ba40a60e220.tar.xz
drakx-12f90373e8b7222368c3b53087899ba40a60e220.zip
(stop_udev) introduce it in order to stop udev & umount associated mount
points at end of installation
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/install/NEWS2
-rw-r--r--perl-install/install/install2.pm8
2 files changed, 10 insertions, 0 deletions
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index 45938a5ab..faaadc2a9 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,3 +1,5 @@
+- stop udev at end of install
+
Version 13.74.1 - 29 December 2011
- rebuild with updated list_modules.pm forkernel-3.2.0-0.rc7.2.mga2
diff --git a/perl-install/install/install2.pm b/perl-install/install/install2.pm
index a22f54887..4112b0932 100644
--- a/perl-install/install/install2.pm
+++ b/perl-install/install/install2.pm
@@ -306,6 +306,12 @@ sub start_udev() {
run_program::run("udevadm", "trigger", "--type=devices", "--action=add");
}
+sub stop_udev() {
+ run_program::run('killall', 'udevd');
+ require fs::mount;
+ fs::mount::umount($_) foreach '/dev/pts', '/dev/shm', '/run', '/dev';
+}
+
#-######################################################################################
#- MAIN
#-######################################################################################
@@ -316,6 +322,7 @@ sub main {
log::l("$msg\n" . backtrace());
$o->ask_warn('', $msg);
setVirtual(1);
+ stop_udev() if !$::local_install;
require install::steps_auto_install;
install::steps_auto_install_non_interactive::errorInStep($o, $msg);
};
@@ -648,6 +655,7 @@ sub main {
#- ala pixel? :-) [fpons]
common::sync(); common::sync();
+ stop_udev() if !$::local_install;
log::l("installation complete, leaving");
log::l("files still open by install2: ", readlink($_)) foreach glob_("/proc/self/fd/*");
print "\n" x 80 if !$::local_install;