refs #2594 save a log of early init

oginit-log
Natalia Serrano 2025-08-06 10:42:15 +02:00
parent 7a630c61ed
commit b95b589d0c
4 changed files with 596 additions and 532 deletions

View File

@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [3.12.1] - 2025-08-05
### Added
- Save a log of early init (oginit/ogfuncions)
## [3.12.0] - 2025-07-31
### Changed

View File

@ -1 +1 @@
OpenGnsys Client 3.12.0
OpenGnsys Client 3.12.1

File diff suppressed because it is too large Load Diff

View File

@ -32,115 +32,104 @@
#@date 2013/02/18
#*/
# Parameter: Where to mount the filesystem
mountroot ()
{
[ -f /scripts/VERSION.txt ] && OGVERSION=$(cat /scripts/VERSION.txt)
OGVERSION=${OGVERSION:-"OpenGnsys Client"}
echo; echo; echo "$OGVERSION"; echo; echo
#[ "$quiet" != "y" ] && log_begin_msg "Running OpenGnsys /scripts/og-top"
#run_scripts /scripts/og-top
#[ "$quiet" != "y" ] && log_end_msg
# If the root device hasn't shown up yet, give it a little while
# to deal with removable devices
. /scripts/functions
. /scripts/ogfunctions
sleep 2
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before get OG variables: y/N "
[ $? == 0 ] && sh || echo " "
set -a
log_success_msg "Checking kernel parameters"
ogExportKernelParameters
# Cambiar resolución de vídeo para kernels que usan el parámetro "video".
[ -n "$video" ] && ogChangeVideoResolution
log_success_msg "Checking OpenGnsys Environmnet"
ogExportVarEnvironment
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure ramfs structure for OG: y/N "
[ $? == 0 ] && sh || echo " "
ogConfigureRamfs
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure netmoule specified in kernel parameters: y/N "
[ $? == 0 ] && sh || echo " "
ogLoadNetModule
#[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/og-premount"
#run_scripts /scripts/og-premount
#[ "$quiet" != "y" ] && log_end_msg
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before configure networking: y/N "
[ $? == 0 ] && sh || echo " "
if [ -n "$oglive" ]
then
while !(ping -c 1 $oglive &> /dev/null)
do
ogConfigureNetworking
done
fi
log_success_msg "config networking"
ogConfigureLoopback
log_success_msg "config loopback"
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before detect rootserver: y/N "
[ $? == 0 ] && sh || echo " "
ogGetROOTSERVER && log_success_msg "Get Info from pxe server and ckeck distribuited OG services "
if [ "$ogdebug" == "true" -a "$ogupdateinitrd" == "true" ]; then
ogYesNo --timeout 5 --default no "Stop before check updating initrd: y/N "
[ $? == 0 ] && sh || echo " "
fi
# Actualizar Initrd si se solicita o si no se corresponde con su kernel.
if [ "$ogupdateinitrd" == "true" -o ! -d /lib/modules/$(uname -r) ]; then
ogUpdateInitrd
fi
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before connect and merging the rootfs -ogLive- with $OGSERVERLIVE: y/N "
[ $? == 0 ] && sh || echo " "
ogConnectOgLive && log_success_msg "Merge the initrd with the remote rootfs -ogLive- on $OGSERVERLIVE" || sh
# si es necesario realiza ogConnect $OGSERVERLIVE $OGPROTOCOL $SRCOGLIVE $DSTOGLIVE
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before connect with client dir SHARE -engine,scripts,interface, -share- on $OGSERVERSHARE : y/N "
[ $? == 0 ] && sh || echo " "
ogConnect $OGSERVERSHARE $OGPROTOCOL $SRCOGSHARE $DSTOGSHARE
if [ $? -ne 0 -a "$SRCOGSHARE" != "$DEFOGSHARE" ]; then
ogConnect $OGSERVERSHARE $OGPROTOCOL $DEFOGSHARE $DSTOGSHARE && SRCOGSHARE=$DEFOGSHARE
fi
unset DEFOGSHARE
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before connect with client dir LOG STORAGE on $OGSERVERLOG : y/N "
[ $? == 0 ] && sh || echo " "
ogConnect $OGSERVERLOG $OGPROTOCOL $SRCOGLOG $DSTOGLOG
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before connect with REPOSITORY STORAGE on $OGSERVERIMAGES : y/N "
[ $? == 0 ] && sh || echo " "
ogConnect $OGSERVERIMAGES $OGPROTOCOL $SRCOGIMAGES $DSTOGIMAGES ,ro
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before doing the postconfiguration: y/N "
[ $? == 0 ] && sh || echo " "
ogPostConfigureFS
setupcon -k
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "Stop before calling oginit with /etc/inittab: y/N "
[ $? == 0 ] && sh || echo " "
if [ "$oginit" ]
then
exec $oginit
else
exec init
fi
og_ask() {
echo "$1" >>/tmp/oginit.log
[ "$ogdebug" == "true" ] && ogYesNo --timeout 5 --default no "$1: y/N "; [ $? == 0 ] && sh || echo " "
}
mountroot () {
[ -f /scripts/VERSION.txt ] && OGVERSION=$(cat /scripts/VERSION.txt)
OGVERSION=${OGVERSION:-"OpenGnsys Client"}
echo; echo; echo "$OGVERSION"; echo; echo
#[ "$quiet" != "y" ] && log_begin_msg "Running OpenGnsys /scripts/og-top"
#run_scripts /scripts/og-top
#[ "$quiet" != "y" ] && log_end_msg
. /scripts/functions
. /scripts/ogfunctions
# If the root device hasn't shown up yet, give it a little while
# to deal with removable devices
sleep 2
og_ask "Stop before get OG variables"
set -a
log_success_msg "Checking kernel parameters"
ogExportKernelParameters
[ -n "$video" ] && ogChangeVideoResolution # Cambiar resolución de vídeo para kernels que usan el parámetro "video".
log_success_msg "Checking OpenGnsys Environmnet"
ogExportVarEnvironment
og_ask "Stop before configure ramfs structure for OG"
ogConfigureRamfs
og_ask "Stop before configure netmoule specified in kernel parameters"
ogLoadNetModule
#[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/og-premount"
#run_scripts /scripts/og-premount
#[ "$quiet" != "y" ] && log_end_msg
og_ask "Stop before configure networking"
if [ -n "$oglive" ]; then
while !(ping -c 1 $oglive &> /dev/null); do
ogConfigureNetworking
done
fi
log_success_msg "config networking"
ogConfigureLoopback
log_success_msg "config loopback"
og_ask "Stop before detect rootserver"
ogGetROOTSERVER && log_success_msg "Get Info from pxe server and ckeck distribuited OG services "
if [ "$ogupdateinitrd" == "true" ]; then
og_ask "Stop before check updating initrd"
fi
if [ "$ogupdateinitrd" == "true" -o ! -d /lib/modules/$(uname -r) ]; then
ogUpdateInitrd # Actualizar Initrd si se solicita o si no se corresponde con su kernel.
fi
og_ask "Stop before connect and merging the rootfs -ogLive- with $OGSERVERLIVE"
ogConnectOgLive && log_success_msg "Merge the initrd with the remote rootfs -ogLive- on $OGSERVERLIVE" || sh
# si es necesario realiza ogConnect $OGSERVERLIVE $OGPROTOCOL $SRCOGLIVE $DSTOGLIVE
og_ask "Stop before connect with client dir SHARE -engine,scripts,interface, -share- on $OGSERVERSHARE "
ogConnect $OGSERVERSHARE $OGPROTOCOL $SRCOGSHARE $DSTOGSHARE
if [ $? -ne 0 -a "$SRCOGSHARE" != "$DEFOGSHARE" ]; then
ogConnect $OGSERVERSHARE $OGPROTOCOL $DEFOGSHARE $DSTOGSHARE && SRCOGSHARE=$DEFOGSHARE
fi
unset DEFOGSHARE
og_ask "Stop before connect with client dir LOG STORAGE on $OGSERVERLOG "
ogConnect $OGSERVERLOG $OGPROTOCOL $SRCOGLOG $DSTOGLOG
og_ask "Stop before connect with REPOSITORY STORAGE on $OGSERVERIMAGES "
ogConnect $OGSERVERIMAGES $OGPROTOCOL $SRCOGIMAGES $DSTOGIMAGES ,ro
og_ask "Stop before doing the postconfiguration"
ogPostConfigureFS
setupcon -k
og_ask "Stop before calling oginit with /etc/inittab"
if [ "$oginit" ]; then
echo "exec oginit ($oginit)" >>/tmp/oginit.log
exec $oginit
else
echo "exec regular init" >>/tmp/oginit.log
exec init
fi
}