Virtualbox로 돌아가는 윈도우 종료시 리눅스도 종료되게 하는 방법?

제목 그대로 입니다.

activeX랑 머 잡다한것때문에 … virtualbox로 윈도우XP를 설치하여 사용하고 있습니다…

윈도우로 영화나 드라마 다운 받을때 밤에 켜놓고 자는건데 …

너무 켜놓는듯한 느낌을 받아서…

윈도우에서는 파일이 전송이 다되면 종료가 됩니다.

이때 버츄얼 박스로 돌아가는 윈도우가 종료되면 리눅스를 자동 종료 하는 방법이 있을까요 ?

저는 Gnome Schedule 사용해서 이런 문제를 해결하는데요, 어떻게 보면 좀 무식합니다 :?

다음과 같이 따라하시고, 안되거나 막히면 말씀해주세요.

  1. 설치
    시납틱 패키지 매니저를 사용해서 Gnome Schedule을 설치하거나
    콘솔에서 다음과 같이 실행합니다.

[code:1952xk1a]sudo apt-get install gnome-schedule[/code:1952xk1a]

  1. 실행
    어플리케이션 > 시스템 툴, 가보시면 실행 할 수 있습니다.
    New(새로) 누르시고 One-time task (한번 실행) 선택하세요.

  2. Gnome Schedule에서 새로운 태스크 만들기
    3-1)
    VirtualBox에서 다운 받는 프로그램이 몇시쯤 끝나는지 확인하시고,
    3-2)
    제목은 없어도 되지만 "컴퓨터 끄기"정도로 입력하시면 혹시라도 여러개 스케줄이 잡혀있다면
    어느 것인지 바로 알수 있을 것입니다.
    3-3)
    시간을 다운이 끝나는 시간에 몇분 더 추가해주세요. (대략 5~10분)
    다운로드가 끝나고 파일 생성시 700MB~4.3GB에 따라서 하드 드라이브가 좀 길게 돌아갈 때가 있습니다.
    다운로드 시간이 일정하지 않으면, 평소 다운 받는데 걸리는 시간에 몇분 추가하면 좋을 것 같습니다.
    3-4)
    Task: 에 다음과 같이 입력하세요

[code:1952xk1a]sudo shutdown -h 0 [/code:1952xk1a]

이렇게하면 VirtualBox에 없는 기능이 있더라도, 원하는 시간에 우분투 종료를 예약 할 수 있습니다.

참 쉽죠? :D

조금 다른 방식으로,
프로세스를 감시하는 것도 나쁘지 않을 것 같습니다.
스크립트를 짜 본지 너무 오래 되어, 저는 직접 짜 드리진, 못하겠지만,
루트 권한으로 실행할, 스크립트를 하나 작성하면 어떨까요.

무한 반복으로 루프를 돌면서,
VirtualBox 프로세스가 있는 지를 검사하고,
이 프로세스가 보이지 않으면,
강제 종료를 시키면 될 듯 합니다.

자세한, 스크립트는 고수분께 부탁 드리겠습니다.

저도 같은 문제로 고민하다가 아래 스크립트 짜서 sudo 로 실행합니다.
1분마다 핑 때려봐서 에러가 발생하면 virtualbox에서 돌아가는 게스트가 끝났다고 판단하고 종료합니다.
더 좋은 방법이 있으면 공유합시다!!! :D

[code:dalk4gk5]
#!/bin/bash

check_host=atom_vbox_win

while true
do
ping -c 1 -q $check_host > /dev/null 2>&1
if [ $? != 0 ]; then
echo "date: shut down" > shutdown_msg.log
shutdown -P now "Now shutting down system"
fi
echo "date: Alive... $check_host"
sleep 60
done
[/code:dalk4gk5]