Bug 25928

Summary: [FR] autopartition should be happy with minimal sizes from profile
Product: Sisyphus Reporter: Michael Shigorin <mike>
Component: alterator-vmAssignee: Олег Соловьев <mcpain>
Status: NEW --- QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P3 CC: mcpain
Version: unstable   
Hardware: all   
OS: Linux   
URL: http://lists.altlinux.org/pipermail/devel/2007-April/057886.html

Description Michael Shigorin 2011-07-20 00:24:29 MSK
Выпиливая installer-feature-vm-altlinux-generic, напоролся на то, что профиль, который вроде бы должен при выборе минимумов спокойно укладываться в 8G диска (0.5+1+2 = 3.5) -- не влазит (похоже, что 0.75+8+?).

Какой физический смысл min, если берётся будто бы max?

gb=$((1048576*2))
ram=$(($(sed -n '/^MemTotal:/ s/[^0-9]//pg' /proc/meminfo)*2))  # полгига
root=$((4*$gb))
home=$((2*$gb))

>((generic
>  (title . "Generic setup")
>  (action . trivial)
>  (actiondata  ("swap" (size $ram . $(($ram*3/2))) (fsim . "SWAPFS") (methods raid plain))
>               ("/" (size $(($root/4)) . $(($root*2))) (fsim . "Ext2/3") (methods raid plain))
>               ("/home" (size $home . #t) (fsim . "Ext2/3") (methods raid plain)))))

Гайки-то подкрутил, но хотелось бы на вики описать по мотивам писем в devel-distro@ так, чтоб другим не приходилось выяснять заново, что такое min и max.
Comment 1 Sergey Bolshakov 2011-07-20 16:30:14 MSK
min и max имеют следующий смысл:
при поиске среди свободных мест на дисках кандидата для размещения
очередного раздела выбираются все, размером не меньшие чем min,
затем на таком месте создаётся раздел не больше, чем max.
таким образом, на единственном пустом диске есть вероятность
неуспеха, если сумма всех max больше, чем его объём.
Comment 2 Michael Shigorin 2011-07-20 19:27:01 MSK
Спасибо.  А много мороки добавить такой финт ушами?

0) примеряем схему разбивки
1) если успех, goto разбиваем
2) уменьшаем каждый max до (min+max)/2
3) если сумма уменьшений больше delta (пусть 100M), goto (1), иначе fail

Думаю, это несколько более универсально, чем хак с пропорцией, хотя и не симплекс-метод ;-)
Comment 3 Sergey Bolshakov 2011-07-20 20:33:17 MSK
проблема в основном в 1) примеряем ..., поскольку надёжно примерить
равно собственно разбить, за исключением, может быть, коммита.
бишь, нынешняя схема неизящна, мягко говоря, но по крмере работает.