ESXi의 경우 24시간 서버용도로 많이 사용되기 때문에 host computer를 자동종료하는 gui 옵션이 vclient에 없습니다.
그러나 꼼수를 부릴 수는 있습니다.
ESXi 환경 자체가 리눅스랑 매우 유사하기 때문에 리눅스 좀 다뤄보신 분들은 쉽게 할 수 있다고 생각합니다.
1. putty등을 이용해서 ssh 접속을 합니다.
2. 적당한 위치에 다음과 같은 쉘 스크립트를 작성합니다. (vi 명령어 사용하는 것이 가장 편합니다.)
여기서 echo 부분은 별로 중요하지 않습니다. 저는 제외했습니다.
/sbin/powerOffVms 는 켜져있는 VM들을 꺼버립니다.
/bin/poweroff 는 ESXi 호스트를 종료합니다.
참고로 쉘 스크립트 이름은 별로 중요하지 않습니다. ‘이름.sh’ 로 만드시면 됩니다. (예: auto-shutdown.sh)
어디에 만들었는지 잘 기억해두세요.
저는 /vmfs/volumes/[데이터 스토어 이름]/[쉘스크립트이름].sh 입니다.
3. chmod +x /vmfs/volumes/[데이터 스토어 이름]/[쉘스크립트이름].sh 을 입력하여 실행권한을 줍니다.
ls 명령어를 입력해 보면 아래와 같이 쉘 스크립트가 녹색으로 변해야 합니다.
4. 이제 rc.local에 등록하여 부팅시마다 실행되게 합니다. ESXi 5.0 과 ESXi 5.1 모두 방법이 다르니 유의하세요.
-ESXi 5.0
/bin/echo “0 22 * * * /vmfs/volumes/datastore1/auto-shutdown.sh” >> /var/spool/cron/crontabs/root
위 명령어를 /etc/rc.local 에 넣어줍니다.
시간 설정하시는 것은 crontab 만져보신 분들은 다 하시리라 믿습니다. 모르시면 댓글 달아주세요.
-ESXi 5.1
/bin/echo “0 22 * * * /vmfs/volumes/datastore1/auto-shutdown.sh” >> /var/spool/cron/crontabs/root
위 명령어를 /etc/rc.local.d/local.sh 에 넣어줍니다.
나머지는 모두 ESXi 5.0과 같습니다.
참고로 재부팅하셔야 쉘 스크립트가 작동하기 시작합니다.
재부팅해도 안되면 시간이 우리나라 시간이랑 맞지 않아서 그런겁니다.
putty 창에서 date 입력해 보시면 ESXi의 시간이 나와서 그걸로 계산해서 적용하셔야 합니다.
포스팅에 대한 질문은 댓글이나 이메일로 받겠습니다.
안녕하세요 포스트 읽고 도움을 많이 받았습니다 제가 리눅스가 처음이라 검색을통해 vi사용법을 찾아 파일을 만들긴했는데요
rc.local 파일을 수정하려고하니 읽기전용이라고 수정이안됩니다; :w!을하면 권한이없다고 그러는거같던데요..
구글링을해도 찾을수없어서 질문드립니다.
그리고 crontabs 사용법 역시 예시가없어서 혼자하기 너무힘들어서 그러는데요 4시와 7시에 끄고싶은경우 어떤식으로 명령어를 넣으면되나요?
답변주시면감사하겠습니다 포스팅 감사합니다
먼저 :w! 가 아니라,
:wq 입니다. 명령어를 확인해보세요.
그래도 권한이 없다고 하면 root로 로그인 한거 맞으신지요?
root로 로그인 한거라면, rc.local 파일의 위치 디렉토리 까지 가신다음에, chmod 777 rc.local 또는 chmod rc.local 777 해보세요. 둘중 하나인데..
4시와 7시에 끄고 싶은거는 무슨 말씀이신지요? 4시에도 끄는 명령을 내리고 7시에도 끄는 명령을 내린다는 건가요?
제가 실수한거같습니다 5.0버전을따라했습니다 5.1버전인데요..ㅎㅎ;;
포스트는 많은 도움이 되었습니다 (__)
혹시 timezone변경하는법은 혹시 알수없을까요? 구글링에도 확답은없고 4.x버전관련 자료만있네요..
타임존은 저도 아직 시도를 못해봤네요..
구글링하고 추가 자료 얻으면 포스팅을 하겠습니다.
좋은하루되세요^^