#!/bin/bash # Scirpt de ejemplo para apagar un ordenador # Nota: se usa como base para el programa de apagado de OpenGnsys Admin. # Registrar ejecución manual de script. case "$(ogGetCaller)" in browser|bash) ogEcho log info "Script: $0" ;; esac # No registrar errores. export DEBUG="no" # Desmontar los sistemas de archivos y la caché local. echo "[10] Desmontar todos los sistemas de archivos." sync for (( i=1; i <= $(ogDiskToDev | wc -w); i++ )); do ogUnmountAll $i &>/dev/null done echo "[50] Desmontar cache local." ogUnmountCache &>/dev/null # Volver a registrar errores. unset DEBUG echo "[70] Apagando el equipo." # Estado correcto de Wake-On-Lan antes de apagar. ethtool -s $DEVICE wol g 2>/dev/null # Detectar Busybox. BUSYBOX=$(which busyboxOLD) BUSYBOX=${BUSYBOX:-"busybox"} # Retardo para dar lugar al registro en cola de acciones. sleep 5 # Parar Browser para evitar "cuelgues". [ "$ogstatus" == "offline" ] || pkill browser # Apagar. $BUSYBOX poweroff