Большая тайна, большое и светлое волшебство происходит, когда добровольцы объединяются для творения чего-то всем нужного, и, хотя бы немножечко, вечного.

Почему-то от этого чаще солнце выглядывает из-за облаков и очень хочется жить.

Правила и обычаи

Применение UIRD для загрузки различных дистрибутивов

Re: Применение UIRD для загрузки различных дистрибутивов

Все правильно. Пути для 80 и 81 записываются поразному. Вот как бы аккуратно скрестить оба подхода smile

MagOS-Чат http://chat.magos-linux.ru
MagOS-Загрузки http://files.magos-linux.ru/upload
MagOS-Торренты http://tracker.magos-linux.ru

betcher
Александр
магистр-волшебник
ranks
useravatar
Offline
2562 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

Да логика у 81-savetomodule действительно мудреная.
У себя я сделал так  в папке    /usr/lib/magos/rc.halt;

80-savetomodule  готовит .savelist и .savetomodule в корне root (/ )
81-savetomodule - пишет

Т к 80-savetomodule-pre  это обычная логика, то все упрощается. И волки сыты и овцы целы
Но логику устаревшего 80-savetomodule  надо еще как то добавлять.

Вот мой MagOS.ini для 81-savetomodule

 Спойлер Show Spoiler Hide Spoiler
 
SAVETOMODULE=yes
SAVE_BASE=55_save-base.xzm
SAVE_UPDATE=35-update.xzm
RPMBASE=35-x-rpmbase.xzm
SAVERPM=yes
BASE=/MagOS/modules
UPDATE=/MagOS/base
DYNAMIC=/MagOS/temp
Это мой 80-savetomodule-pre

 Спойлер Show Spoiler Hide Spoiler
 

Код:

#!/bin/bash

ENABLED=yes
[ "$ENABLED" != "yes" ] && exit 0
#clear
echo -n -e "\r"
echo  "RC.HALT: Start Savetomodule-pre"
if [ -f /.devsearch ]; then
exit 1
else
#MYMNT=/memory/data/from/0
MYMNT=/memory/layer-base/0
echo -n -e "\r"
echo -n "Search devsearch  -  "
while [ "$MYMNT" != "" -a "$MYMNT" != "." -a "$MYMNT" != "/" ]; do
   DEV=$(egrep "[^[:space:]]+[[:space:]]+$MYMNT[[:space:]]+" /proc/mounts | cut -d " " -f 1)
   if [ "$DEV" != "" ]; then break; fi
   MYMNT=$(dirname "$MYMNT")
done
# echo "MYMNT="$MYMNT
  if [ "$DEV" = "" ]; then
   echo "Can't find device to install to."
   echo "Make sure you run this script from a mounted device."
   exit 1
fi
echo "devsearch="$DEV
echo "devsearch="$DEV > /.devsearch
. /.devsearch
fi
#
RPMS=/memory/changes/var/lib/rpm/Sigmd5
SAVE_BASE=55_save-base.xzm
SAVE_UPDATE=35-updute.xzm
SAVE_HOME=85_save-home.xzm
BASE=/MagOS/modules
UPDATE=/MagOS/base
DYNAMIC=/MagOS/temp
FILTRES=/memory/layer-base/1/tmp/FILTRES
#CACHE=/memory/layer-base/0/MagOS-Data/tmp
CACHE=/memory/tmp
XORG=/memory/layer-base/0/modules/50-XORG.xzm
#
. /memory/MagOS
[ "$SAVETOMODULE" != "yes" ] && exit 3
echo -n -e "\r"
echo -n "Search SAVETOMODULE"
#echo -n -e "\r"
#echo "RC.HALT.PRE: Start UIRD"
if [ -f $RPMS ]; then
   dirpart=$UPDATE
   filepart=$SAVE_UPDATE
   FILTR=update-filtr
   SAVETOMODULENAME=$devsearch$dirpart/$filepart
   echo $SAVETOMODULENAME > /.savetomodule
else
   filepart=$SAVE_BASE
   FILTR=base-filtr
[ "$uird_mode" == "changes" ] && echo ": Start uird.mode=changes" && exit 3
[ "$uird_mode" == "machines" ] && echo ": Start uird.mode=machihes" && exit 3
   dirpart=$BASE
   SAVETOMODULENAME=$devsearch$dirpart/$filepart
   echo $SAVETOMODULENAME > /.savetomodule
fi
#echo "Testing memory, swap (Mb)"
#swapon -s
#echo
#free -m
echo -n "=$SAVETOMODULENAME - "
[ ! -d $FILTRES ] && echo " Load $FILTRES"
cp  $FILTRES/$FILTR /.savelist
[ -f "/.savelist" ] && echo "savelist YES"
[ ! -f "/.savelist" ] && echo "savelist NO"
echo "Testing memory, swap (Mb)"
free -m
echo

rm -rf /.devsearch
#sleep 2
echo

- Находит активный диск ( там где флэшка )
- В зависимости  была ли обычная работа или обновление системы 
   формирует  /.savelist и /.savetomodule
   Для режима обновления системы и рабочего режима свои фильтры для mksquashfs
- Если задан в UIRD, при загрузке, другой режим сохранения, то "уступает" дорогу режиму UIRD

Повторюсь.
81-savetomodule прошел у меня тестирование на нестабильной версии.
Работает замечательно
А старый 80-savetomodule  еще тестировать надо.
Да и неизвестно что из системы остается при выключении, и будет ли   старый 80-savetomodule   писать объем  /memory/changes  в 2 Гб
А 81-savetomodule  пишет.

ingvar
Игорь
первоклассный волшебник
ranks
useravatar
Offline
374 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

ingvar написал(а):

  Copy2ram

Решил попробовать на своей Магея (МагОС) режим сopy2ram и проблема.
Оперативка 2 Гб , а модули 2,2 Гб. Загрузка не получилась.
Хатя своп 5 Гб, но uird.swap=auto запускается уже после того, как модули будут скачены в память
Поэтому в uird-init, загрузчика UIRD, поместил формирование uird.swap=auto  перед сopy2ram
Данный режим заработал.
Вроде теперь все логичнее :
- устанавливаетися своп
-скачиваются модули в память
- инициализируется система

Думаю, скорректируем аналогично.

neobht
Anton
хранитель
ranks
useravatar
Offline
3179 Сообщений
Мужчина  Перейти к сайту пользователя 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

С одной стороны вроде да. А с другой зачем использовать copy2ram если копируется все одно в своп. Как сейчас с защитой от дурака получается smile

MagOS-Чат http://chat.magos-linux.ru
MagOS-Загрузки http://files.magos-linux.ru/upload
MagOS-Торренты http://tracker.magos-linux.ru

betcher
Александр
магистр-волшебник
ranks
useravatar
Offline
2562 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

Может не совсем к этой теме вопрос, но все-таки здесь спрошу.
Почему при умолчательных:

Код:

uird.cp=*.xzm.cp,*/rootcopy

uird.load=/base/,/modules/,rootcopy
uird.from=/MagOS;/MagOS-Data

не копируется руткопи из Magos-Data?
Работает только если принудительно задать uird_cp=*/rootcopy/99-rootcopy, то есть именно с созданием и указанием дополнительной папки, внутри которой будет корневая иерархия.
Вряд ли ведь так задумано?
В initrd режиме по умолчанию копируется корневая иерархия непосредственно из самой папки rootcopy и без явного указания.

ilfat
Ильфат
начинающий волшебник
ranks
useravatar
Offline
243 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

Ну вообще с подпапками удобнее, можно по смыслу поделить, а не все в кучу. Задумывалось наверное копирование rootcopy как с initrd по умолчанию. На вскидку не соображу почему не работает, может конечного слэша не хватает. А из MagOS копируется?

MagOS-Чат http://chat.magos-linux.ru
MagOS-Загрузки http://files.magos-linux.ru/upload
MagOS-Торренты http://tracker.magos-linux.ru

betcher
Александр
магистр-волшебник
ranks
useravatar
Offline
2562 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

betcher, при загрузке видно, что из MagOS копируется, хотя там и пусто. А вот если явно указать свою папку в MagOS-Data/rootcopy, то из MagOS уже не копируется. То есть либо-либо.
Слэши я ставил и убирал, без разницы.
Больше похоже на то, что найдя папку rootcopy в MagOS дальше просто не ищет, а когда указываешь uird_cp=, то есть замена значения, а не добавление, то уже берет то что соответствует маске. И естественно той маски, которую я указываю, в MagOS просто нет, поэтому ищет дальше и находит.
Оно конечно удобно, когда в разных режимах нужны разные руткопи, но это не совсем так как задумано. В принципе ведь, если нужны именно разные руткопи для разных режимов, то всегда можно заменить значение uird_cp на нужное.
А так поведение несколько отличается от того, которое ожидаешь. И это вносит некоторую путаницу.

ilfat
Ильфат
начинающий волшебник
ranks
useravatar
Offline
243 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

Хорошо, посмотрим чего там. Вообще в uird везде поиск до первого совпадения, вполне возможно, что и здесь. Может rootcopy из MagOS убрать wink

MagOS-Чат http://chat.magos-linux.ru
MagOS-Загрузки http://files.magos-linux.ru/upload
MagOS-Торренты http://tracker.magos-linux.ru

betcher
Александр
магистр-волшебник
ranks
useravatar
Offline
2562 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

А модули ведь по всем совпадениям находит.

ilfat
Ильфат
начинающий волшебник
ranks
useravatar
Offline
243 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Re: Применение UIRD для загрузки различных дистрибутивов

betcher написал(а):

Может rootcopy из MagOS убрать

Убрал. Теперь находит rootcopy в MagOS-Data. А так получается /MagOS-Data/rootcopy нерабочий из коробки sad

ilfat
Ильфат
начинающий волшебник
ranks
useravatar
Offline
243 Сообщений
Мужчина 
Администратор отключил публичную отправку сообщений

Авторизация