#!/bin/bash # Script de ejemplo para arancar un sistema operativo instalado. # Nota: se usa como base para el programa de arranque de OpenGnsys Admin. PROG="$(basename $0)" if [ $# -lt 2 -o $# -gt 3 ]; then ogRaiseError $OG_ERR_FORMAT "Formato: $PROG ndisco nfilesys [str_kernel str_initrd str_kernelparams]" exit $? fi # Comprobar errores. PART=$(ogDiskToDev "$1" "$2") || exit $? MNTDIR=$(ogMount $1 $2) || exit $? echo "[0] Inicio del proceso de arranque." # Si el equipo está hibernado chequeamos el f.s. y borramos el hiberfile (error cod.6) mount |grep -q "$MNTDIR.*(rw" if [ $? -ne 0 ]; then ogEcho log session "${MSG_WARNING}: $MSG_MOUNTREADONLY" ogUnmount $1 $2 ogCheckFs $1 $2 PART=$(ogDiskToDev "$1" "$2") mkdir -p $MNTDIR ntfs-3g -o remove_hiberfile $PART $MNTDIR ogEcho log session "Particion desbloqueada" ogUnmount $1 $2 ogMount $1 $2 fi if which bootOsCustom &>/dev/null; then echo "[10] Configuración personalizada del inicio." bootOsCustom $@ fi echo "[70] Desmontar todos los sistemas de archivos." sync for (( i=1; i <= $(ogDiskToDev | wc -w); i++ )); do ogUnmountAll $i &>/dev/null done echo "[80] Desmontar cache local." ogUnmountCache echo "[90] Arrancar sistema operativo." ogBoot "$@"