#!/bin/bash # Backup and Restore Program for HamoniKR Desktop Linux (HamoniKR) # Copyright (C) 2015-2019 HamoniKR Team, Kevin Kim # This file may be used under the terms of the GNU General Public License, version 2 or later. # For more details see: https://www.gnu.org/licenses/gpl-2.0.html # # echo "HamoniKR Rescue mode를 정의합니다." # grub.cfg의 default 값을 수정하여 각각의 mode로 부팅할 수 있도록한다. # hamonikr_rescue_mode 명령의 인자값을 받아, grub.cfg의 순서를 변경 # cf) $ hamonikr_rescue backup if [ "$1" != "install" ] && [ "$1" != "backup" ] && [ "$1" != "restore" ] && [ "$1" != "server" ] && [ "$1" != "client" ] && [ "$1" != "Start" ] ; then echo "$ $0 [install|backup|restore|server|client]" exit 0 else echo "++++++++++++++++++++" echo "$1 starting..." echo "++++++++++++++++++++" sleep 1 # grub을 초기화한다. sudo update-grub # grub 설정에서 인수값을 parsing하고, grub.cfg의 default 값을 변경한다. GRUB_MINUS=3 GRUB_DEFAULT=0 ACTION=$1 if [ "$1" != "Start" ] ; then GRUB_ACTION=`grep -E 'menuentry.*{$' /boot/grub/grub.cfg |grep -n menuentry |grep $ACTION | awk -F: '{print $1}'` GRUB_RESULT=`expr $GRUB_ACTION - $GRUB_MINUS` sudo sed -i '/set default="."/s/set default="."/set default="'$GRUB_RESULT'"/g' /boot/grub/grub.cfg else #GRUB_ACTION=`grep -E 'menuentry.*{$' /boot/grub/grub.cfg |grep -n menuentry |grep $ACTION | awk -F: '{print $1}'` #GRUB_RESULT=`expr $GRUB_ACTION - $GRUB_DEFAULT` sudo sed -i '/set default="."/s/set default="."/set default="'$GRUB_DEFAULT'"/g' /boot/grub/grub.cfg fi fi # reboot case $LANG in ko* ) echo "+++++++++++++++++++++++++++++++++++++++++" echo "5초 후 시스템을 재부팅 합니다." echo "재부팅 후 $1 관련 작업이 진행됩니다." echo "+++++++++++++++++++++++++++++++++++++++++" ;; * ) echo "+++++++++++++++++++++++++++++++++++++++++" echo "System will be reboot after 5 seconds." echo "After rebooting, $1 will proceed..." echo "+++++++++++++++++++++++++++++++++++++++++" esac sleep 5 sudo reboot