1. Убрать проверку в скрипте.
2. Проще под разные дистры переписать menu.lst, а параметры оставить универсальными.
Rootcopy преобразован в uird.cp=, но пока поддержка директории в качестве параметра не реализована, только модули, поэтому norootcopy - в этой схеме - ненужный параметр.
3. Полностью сделать не получится поскольку используется более расширенный вариант не привязанный к base, modules, optional. Используется подход с множественными источниками, например можно вот так:
uird.from=/pra3/base;/pra3/modules
Это два источника для модулей.
Первый будет по симлинку livemedia, второй - livedata.
Так можно передавать множество источников, где лежат модули. В частности в сетевой загрузке вы могли видеть как в качестве источника используется ваш образ iso:
uird.from=pra3.iso
Uird подключит из iso все модули по маске uird.load и среди этих модулей проигнорирует указанные по маске uird.noload.
Поэтому я бы не цеплялся к параметрам porteus. Они маленькие частные случаи того, что поддерживает uird.
Перепишите лучше строку с читкодами в форму uird и получите значительно более гибкий вариант.
Возвращаться в porteus-initrd не захочется.
Поэтому в процессе обсуждения я вам опишу весь функционал и заодно будет материал для пояснения функционала на примерах в документацию.
Но функционал такой гибкий, что сложно все варианты применения описать. Буду лишь по мере пояснять.