Сайт | Скачать | Видео | Wiki

Голосование

Что нужно в инсталляторе? Можно выбрать несколько пунктов одновременно

Подробный мануал
14 (29.8%)
GPT
7 (14.9%)
UEFI
13 (27.7%)
UIRD
3 (6.4%)
RAID
0 (0%)
GRUB2
10 (21.3%)

Проголосовало пользователей: 21

Автор Тема: Инсталлятор  (Прочитано 130512 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Инсталлятор
« Ответ #330 : 07 Май 2019, 10:53:01 »
Код
wt -o "mkdir /mnt/$to_part/$to_dir"
Тогда уж - через мою wt лучше - покажет ошибку

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: Инсталлятор
« Ответ #331 : 07 Май 2019, 11:24:08 »
через мою wt
У меня нет такой
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Инсталлятор
« Ответ #332 : 07 Май 2019, 11:50:03 »
Так возьмите (лучше весь ntf) - полезная штука (по замыслу)
Пригодится в любых диалогах с юзером
Усовершенствования приветствуются

umnt для отмонтирования после окончания установки.
Надо ли это вообще? Пусть остается примонтированным

Раз пошла коллективная работа (невиданное чудо для последних лет)
https://github.com/sfs-pra/install-lf/blob/master/install-lf - доработал с учетом замечаний выше
Не очень знаком с гит - пишите сюда что не так, кого куда добавить
Или пишите что менять буду сам там править

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: Инсталлятор
« Ответ #333 : 07 Май 2019, 13:08:40 »
Раз пошла коллективная работа
Совсем коллективная не получится, слишком много различий.
Заменил цикл wile на for (сразу ваш вариант)
Код
for m in $(losetup | awk '/^\/dev/  && $6 ~ /.pfs$/ {print $6}')
  do yad --no-buttons --undecorated --text="\n Копируется $(basename $m) \n" --center &
pid=$!
# cp $m /mnt/$to_dev/$to_dir/$(basename $(dirname $m))/
[ "`basename "$m" |egrep '^[0-9]'`" ] && dd=base || dd=modules
    cp "$m" /mnt/$to_dev/$to_dir/$dd/
kill $pid
done

#Копируем ядро и рамдиск
cp $(dirname $(dirname $m))/vmlinuz-$(uname -r) /mnt/$to_part/$to_dir/
cp $(dirname $(dirname $m))/initrd.xz /mnt$to_part/$to_dir/
Остаётся сгенерировать menu.lst и установить grldr
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Инсталлятор
« Ответ #334 : 07 Май 2019, 13:42:40 »
Совсем коллективная не получится, слишком много различий.
Под другие дистры  совсем немного править
Сообщения в цикле - как у вас - надо до цикла
У меня для такого есть wt -start wt -kill
Здесь уместнее wt -o

Ядро - упростил до vmlinuz*
Итог : https://github.com/sfs-pra/install-lf/blob/master/install-lf

menu.lst - тут придется под конкретный тип инитрд - сейчас перенесу из старого скрипта
grldr и пр. - у меня отдельным скриптом ставится : install-g4d (в pra-installer*.pfs)

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: Инсталлятор
« Ответ #335 : 07 Май 2019, 14:08:54 »
menu.lst - тут придется под конкретный тип инитрд
А не проще копировать /usr/lib/grub4dos/menu.lst.example ?
grldr и пр. - у меня отдельным скриптом ставится
А не проще /usr/lib/grub4dos/bootlace.com /dev/${to_part:0:3} ?
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Инсталлятор
« Ответ #336 : 07 Май 2019, 14:47:09 »
А не проще копировать /usr/lib/grub4dos/menu.lst.example ?
Там же надо пути править. Проще создать через переменные
А не проще /usr/lib/grub4dos/bootlace.com /dev/${to_part:0:3} ?
Там примерно так и есть

сделал - см. гит

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: Инсталлятор
« Ответ #337 : 07 Май 2019, 14:56:23 »
wt "cp $(dirname $(dirname $m))/vmlinuz* /mnt/$to_part/$to_dir/"
$m берется из последней итерации цикла?
а если у ней путь окажется например:
/mnt/live/memory/copy2ram/001-ddr01-sf17.pfs
?  (copy2ram)
не знаю насколько это вероятно, но вдруг?
и где там искать vmlinuz* ?  ???

« Последнее редактирование: 07 Май 2019, 15:08:18 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
Re: Инсталлятор
« Ответ #338 : 07 Май 2019, 15:05:11 »
Может будет интересно и полезно как это организовано в MagOS.
Меню -Настройки - Системные - Установка MagOS
(/usr/bin/installator)
Код
#!/bin/bash
if [ $(id -un) == "root" ] ; then
  echo "Do not start \"$(basename $0)\" by root"
  exit 1
fi
cd /usr/share/magos/modmnger
./installator

Код
live@prar-1811 ..+88-magos.pfs/usr/share/magos/modmnger % ls -l
итого 71
-rwxr-xr-x 1 root root  2745 дек 20  2017 autoinstall.sh
-rwxr-xr-x 1 root root   407 дек 16  2014 bwsr_gtk.py
-rwxr-xr-x 1 root root  2081 дек 16  2014 bwsr_qt.py
lrwxrwxrwx 1 root root    16 янв 26 14:34 cfg.py -> ./cgi-bin/cfg.py
drwxr-xr-x 2 root root   395 ноя 16 21:49 cgi-bin
drwxr-xr-x 3 root root    78 дек 20  2017 css
-rw-r--r-- 1 root root   894 дек 16  2014 favicon.ico
drwxr-xr-x 2 root root    65 дек 16  2014 images
-rw-r--r-- 1 root root   109 дек 16  2014 index.html
-rwxr-xr-x 1 root root   807 ноя 11  2014 installator
-rw-r--r-- 1 root root 18716 янв 24  2015 install-helper.po
drwxr-xr-x 2 root root   158 дек 16  2014 js
-rwxr-xr-x 1 root root  2641 мая 27  2017 lib_s2m.sh
lrwxrwxrwx 1 root root    18 янв 26 14:34 locale -> /usr/share/locale/
-rw-r--r-- 1 root root 22577 дек 16  2014 logo.png
-rwxr-xr-x 1 root root  4798 дек 20  2017 magos-install.sh
-rwxr-xr-x 1 root root   737 мая 27  2017 mod_info
-rwxr-xr-x 1 root root  1018 ноя 16 21:49 mod_mnger
-rwxr-xr-x 1 root root  6782 дек 20  2017 parted.sh
-rwxr-xr-x 1 root root   745 июн 24  2017 pfs_find
drwxr-xr-x 3 root root   151 мая 27  2017 plugins
drwxr-xr-x 2 root root    35 ноя 28  2017 ru_RU
-rwxr-xr-x 1 root root   717 дек 16  2014 server.py
-rw-r--r-- 1 root root     8 дек 16  2014 start.id
-rwxr-xr-x 1 root root  1670 дек 20  2017 virtualize

88-magos   https://yadi.sk/d/bHZb0UaogrEVNw
Скрины.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
Re: Инсталлятор
« Ответ #339 : 07 Май 2019, 15:07:53 »
В отличии от двух небольших скриптов в PRA, у них более глобально организовано.

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: Инсталлятор
« Ответ #340 : 07 Май 2019, 15:12:27 »
у них более глобально организовано.
у них форматирование ..
в пра ддр ричи(?) можно пока без форматирования обойтись
в простом установщике
« Последнее редактирование: 07 Май 2019, 15:14:08 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: Инсталлятор
« Ответ #341 : 07 Май 2019, 15:16:44 »
$m берется из последней итерации цикла?
а если у ней путь окажется например:
/mnt/live/memory/copy2ram/001-ddr01-sf17.pfs
может искать ядро и инитрд как в текущем установщике?
он же правильно находит
« Последнее редактирование: 08 Май 2019, 13:21:41 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн k0l0p0k

  • Ветеран
  • *****
  • Сообщений: 1611
  • Репутация: +27/-1
Re: Инсталлятор
« Ответ #342 : 07 Май 2019, 15:27:26 »
может искать ядро и инитрд как в текущем установщике?
из текущего установщика:
value() { egrep -o "(^| )$1=[^ ]+" /proc/cmdline | cut -d= -f2; } #sfs
dir="$(find `realpath /mnt/home/` -maxdepth 1  -type d -name "`value dir`")"
..
--field=Ядро:FL ''$(ls -1 $dir/vmlinuz* |head -1)'' \
--field=Initrd:FL ''$(ls -1 $dir/initrd.xz |head -1)'' \
..
опробовал под ддр - находит
« Последнее редактирование: 08 Май 2019, 13:22:17 от k0l0p0k »
1.пень G2020,8Gb,Radeon RX460 (Debian+openBox+LXPanel)
2.нетбук  Samsung N145 (Debian+openBox+LXPanel, ddr01)

Оффлайн Pro

  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 10737
  • Репутация: +113/-2
Re: Инсталлятор
« Ответ #343 : 07 Май 2019, 15:28:08 »
Ребята из magos, замените "разбивку" на "разметку диска".
Я загружаю новые пакеты сюда: http://file.puppyrus.org/users/ а дальше можно найти самостоятельно.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: Инсталлятор
« Ответ #344 : 07 Май 2019, 15:42:31 »
$m берется из последней итерации цикла?
переделал
Код
value() { egrep -o "(^| )$1=[^ ]+" /proc/cmdline | cut -d= -f2; } #sfs
df="/mnt/home/`value dir`"
wt "cp "$df/$k" /mnt$to_dev/$to_dir/"
wt "cp $df/initrd.xz /mnt$to_dev/$to_dir/"