Changeset 3249 in MondoRescue for branches/3.2/mindi/get-modules.pl
- Timestamp:
- Feb 27, 2014, 3:48:19 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3.2/mindi/get-modules.pl
r3213 r3249 4 4 use POSIX "uname"; 5 5 use Data::Dumper; 6 use ProjectBuilder::Base; 7 use MondoRescue::Kernel; 6 8 7 my ($sysname, $nodename, $release, $version, $machine ) = uname(); 8 my $ver = ""; 9 my $module = ""; 10 my %modlist; 11 my $void = ""; 12 my $allmodules = ""; 9 my $ver = undef; 13 10 14 15 if (not (defined $ARGV[0])) { 16 $ver = $release; 17 } else { 18 $ver = $ARGV[0]; 11 if ((defined $ARGV[0]) && ($ARGV[0] eq "-v")) { 12 #$pbverbose = 1; 13 shift; 19 14 } 20 open(LSMOD, "/sbin/lsmod |") or die "Unable to launch lsmod"; 21 open(DEPMOD, "/sbin/depmod -n $ver |") or die "Unable to launch depmod"; 22 23 while (<DEPMOD>) { 24 ($module, $modlist{$module}) = split(/:/); 25 chomp($modlist{$module}); 26 last if ($module =~ /^#/); 27 #print "Analyzing $module\n"; 15 if ((defined $ARGV[0]) && ($ARGV[0] eq "-k")) { 16 shift; 17 $ver = $ARGV[0]; 18 shift; 28 19 } 29 print Dumper(%modlist)."\n"; 30 while (<LSMOD>) { 31 next if (/^Module/); 32 ($module, $void) = split(/ /); 33 #print "Analyzing $module\n"; 34 $module = `/sbin/modinfo -n $module`; 35 chomp($module); 36 my ($void,$lib,$modulep,$kernelv,$modpath) = split(/\//,$module,5); 37 print "modpath: $modpath\n"; 38 $allmodules .= $modlist{$modpath}; 39 } 40 close(LSMOD); 41 close(DEPMOD); 42 $allmodules =~ s/\n/ /g; 43 $allmodules =~ s/ */ /g; 44 $allmodules =~ s/ [0-9A-z\/]*\// /g; 45 $allmodules =~ s/\.ko.xz//g; 46 print "all modules: $allmodules\n"; 20 my ($modulepath,@allmodpaths) = mr_kernel_get_modules($ver,@ARGV); 21 print "modules path: $modulepath\n"; 22 print "all modpaths: ".join(' ',@allmodpaths)."\n";
Note:
See TracChangeset
for help on using the changeset viewer.