|
|
|
@ -2079,6 +2079,11 @@ sub checksystem{
|
|
|
|
|
$grub = "hd".$num; $dev = $1;
|
|
|
|
|
$data{"grub_map"}{$grub} = $dev;
|
|
|
|
|
$num ++;
|
|
|
|
|
#получим $data{grubinstall} альтернативным способом, если диск не разбит, нижняя цепочка не сработает
|
|
|
|
|
if($data{partitions_dev} && $data{partitions_dev} eq $dev){
|
|
|
|
|
$data{grubinstall} = "$grub,1";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}elsif(m/^(\/dev\/[^\s]+)/ && $dev){
|
|
|
|
|
my $disk = $1;
|
|
|
|
|
$disk =~m/^$dev(.+)/;
|
|
|
|
@ -2094,7 +2099,11 @@ sub checksystem{
|
|
|
|
|
|
|
|
|
|
}elsif($data{rootload}=~m/$dev$dn/){
|
|
|
|
|
$data{grubload} = "$grub,$grubdn"; #диск для установки
|
|
|
|
|
} } } }
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
# Считаем меню граба grub.conf для переноса настроек
|
|
|
|
@ -2166,7 +2175,7 @@ sub checksystem{
|
|
|
|
|
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
# Определим раздел свопа, сформируем строку fstab
|
|
|
|
|
# $data{swap}, $data{swapset}
|
|
|
|
|
# $data{swap}, $data{uuid_swap}
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
if(!$data{builder}){
|
|
|
|
|
if(!$data{swap} && $data{rootinstall}){
|
|
|
|
@ -2185,20 +2194,7 @@ sub checksystem{
|
|
|
|
|
chomp $data{uuid_swap};
|
|
|
|
|
last;
|
|
|
|
|
} } } }
|
|
|
|
|
|
|
|
|
|
if($data{swap}){
|
|
|
|
|
printmes(" ".gettext('Swap disk')); printmes(": $data{swap}\n");
|
|
|
|
|
if($data{'removableinstall'} eq 'on'){
|
|
|
|
|
$data{swapset} = qq|UUID=$data{uuid_swap}\tnone\t\tswap\tsw\t\t\t0 0|;
|
|
|
|
|
}else{
|
|
|
|
|
$data{swapset} = qq|$data{swap}\tnone\t\tswap\tsw\t\t\t0 0|;
|
|
|
|
|
} }
|
|
|
|
|
|
|
|
|
|
if($data{swap}){
|
|
|
|
|
$data{swap_resume} = "resume=$data{swap}";
|
|
|
|
|
}else{
|
|
|
|
|
$data{swap_resume} = "noresume";
|
|
|
|
|
}
|
|
|
|
|
swapset(); #установим $data{swapset} и $data{swap_resume}
|
|
|
|
|
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
# С текущей системы определим дополнительные монтируемые диски
|
|
|
|
@ -2915,6 +2911,13 @@ sub extract{
|
|
|
|
|
}
|
|
|
|
|
printmes(gettext('done').".\n");
|
|
|
|
|
|
|
|
|
|
# После форматирования считаем uuid диска свопа, переопределим его метку
|
|
|
|
|
my $uuid_swap = `$data{path} vol_id --uuid $data{partitions_dev}1 2>/dev/null`;
|
|
|
|
|
$data{swap} = $data{partitions_dev}1;
|
|
|
|
|
$data{uuid_swap} = $uuid_swap;
|
|
|
|
|
chomp $data{uuid_swap};
|
|
|
|
|
swapset(); #изменим $data{swapset} и $data{swap_resume}
|
|
|
|
|
|
|
|
|
|
printmes(" ".gettext('Formatting a partition for the data')); printmes("... ");
|
|
|
|
|
if(system("$data{formatrun} Data $data{partitions_dev}5 &>/dev/null")){
|
|
|
|
|
printmes(gettext('Error')); printmes("! ");
|
|
|
|
@ -6553,13 +6556,34 @@ sub check_removable{
|
|
|
|
|
$dev =~m#^(/dev/[^\/0-9]+)[0-9]?[0-9]?$#;
|
|
|
|
|
my $disk = $1;
|
|
|
|
|
|
|
|
|
|
my $isusb = `hal-find-by-property --key block.device --string ${disk} | xargs -I {} hal-get-property --udi '{}' --key storage.bus 2>/dev/null`;
|
|
|
|
|
my $isusb = `$data{path} hal-find-by-property --key block.device --string $disk | xargs -I {} hal-get-property --udi '{}' --key storage.bus 2>/dev/null`;
|
|
|
|
|
chomp($isusb);
|
|
|
|
|
if( $isusb eq "usb" ) {
|
|
|
|
|
my $isflash = `hal-find-by-property --key block.device --string ${disk} | xargs -I {} hal-get-property --udi '{}' --key storage.removable 2>/dev/null`;
|
|
|
|
|
my $isflash = `$data{path} hal-find-by-property --key block.device --string $disk | xargs -I {} hal-get-property --udi '{}' --key storage.removable 2>/dev/null`;
|
|
|
|
|
chomp($isflash);
|
|
|
|
|
if( $isflash eq "true" ) { return "flash"; }
|
|
|
|
|
else { return "usb-hdd"; }
|
|
|
|
|
}
|
|
|
|
|
return "";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
|
# установим $data{swapset} и $data{swap_resume}
|
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
|
sub swapset{
|
|
|
|
|
if($data{swap}){
|
|
|
|
|
printmes(" ".gettext('Swap disk')); printmes(": $data{swap}\n");
|
|
|
|
|
if($data{'removableinstall'} eq 'on'){
|
|
|
|
|
$data{swapset} = qq|UUID=$data{uuid_swap}\tnone\t\tswap\tsw\t\t\t0 0|;
|
|
|
|
|
}else{
|
|
|
|
|
$data{swapset} = qq|$data{swap}\tnone\t\tswap\tsw\t\t\t0 0|;
|
|
|
|
|
} }
|
|
|
|
|
|
|
|
|
|
if($data{swap}){
|
|
|
|
|
$data{swap_resume} = "resume=$data{swap}";
|
|
|
|
|
}else{
|
|
|
|
|
$data{swap_resume} = "noresume";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|