К сожалению, я вынужден отлучить тебя от Хабра на 99999 дней, заблокировав твой аккаунт. Впрочем, 23 июля 2284 твой аккаунт будет разблокирован и ты сможешь пользоваться им как раньше.
О сетевой загрузке не думали, кстати?
Вот ещё вариант: ставим голую систему, раскурочиваем initrd, туда заливаем скрипт, который форматит раздел, выкачивает образ и заливает его туда же, после чего монтирует корнем и продолжает загрузку, как ни в чём не бывало. Собираем initrd обратно, кладём в /boot рядом с ядром, правим настройки груба. После каждого ребута получаем новенькую систему в самой актуальной версии.
Кстати, если хостер даёт что-то наподобие heztner'овского resque-шелла, то можно куда-нибудь положить пожатый bzip-ом образ диска (перед установкой лучше всё забить нулями, чтобы лучше ужало), потом примонтироваться через nfs или sshfs, после чего этот образ спокойно залить на жёсткий диск. Получится байт к байту, дёшево и сердито.
Ну или просто файлуху в tar.gz закатать, развернуть на сервере и сделать grub-intall из chroot-а, если переносим линух.
После чего для каждую точку назначения привязываем к 3 ближайшим станциям. И ищем кратчайшие пути от каждой точки до каджой + до пункта отправки. И уже на основании этих данных можно рисовать полный перебор возможностей. Как-то вот так.
Прикинул. В общем, вам нужно где-то раздобыть списки маршрутов и вытащить откуда-нибудь карту метро. После чего вам понадобится построить полный граф стоимостей перемещения с каждой остановки на каждую. Это делается один раз. Потом, когда распределяете посылки, надо будет найти опять же кратчайшие маршруты между точками следования, используя предворительно подготовленный граф цен перемещений. И уже по этому графу точка-точка делать полный перебор. Ресурсов сожрать много не должно, да и у нас не олимпиада, когда надо в секунду уложиться. Как-то вот так.
У вас каких-то 25 передач и 5 курьеров. На таких объёмах можно смело использовать полный перебор и не заморачиваться. Единственное, постройте полный граф цен перемещения от каждой точки до каждой.
1) копипастите строчку, связанную с виндой, из grub.cfg в конец /etc/grub.d/40_custom, переименовываете как надо
2) удаляете злополучный os-prober
3) sudo update-grub
Hardware ID — это такая нехорошая штука, которую можно ещё и подменять. Я как-то давно писал програмулину для WinMobile, которая занималась перехватом пары вызовов ядра и выдавала другой DeviceID. Для *nix это вообще тривиально делается патчем драйвера, ибо опенсорс. Лучше бы привязывались как-то к ip, как делают всякие разные ISPManager и иже с ними.
Попробуйте переквалифицироваться на другой вид продукции. Тот же магазин с товарами для анимешников обеспечит куда большую конверсию, как мне кажется, но тут надо смотреть и думать.
В случае с WinMobile можно скачать DeviceEmulator и образы к нему, например. В случае с обычными мобилками можно запустить прямо на компьютере Opera Mini. Для остальных можно поискать свои эмуляторы. Как-то вот так.