私は Mavericks サーバーを実行している Mac mini を持っています。VMware Tools アドオンを使用して、VMware Fusion Professional 6 に Atmail サーバー + Web メール VM [Linux CentOS ディストリビューション] をインストールしました。問題なく動作します。起動時に開始するように設定しましたが、非常に信頼性があります。ただし、OS X が何らかの理由でシャットダウンしたときに、安全かつ正常にシャットダウンする方法も探していました。Mac は UPS に接続されており、バッテリーが少なくなり始めた場合に自動的にシャットダウンするように設定されているため、追加の問題はありません。
さて、私が最初にしたのは、Fusionの設定に行き、それを閉じるときに「VMの電源をオフにする」を選択することでした。しかし、何らかの不可解な理由で、VMウィンドウを閉じると、VMが強制的に電源オフになることに気付きました。そこで、これを見つけました。役職これにより、デフォルトの電源オプションを変更する方法がわかり、ウィンドウを閉じるか Fusion を完全に終了したときに、VM を正常にシャットダウンすることができました。この時点で、問題が解決したと思っていましたが、システムのシャットダウンを呼び出すと、OS X は VM のシャットダウンを待たず、VM がシャットダウンする前に Fusion を終了してしまうことがわかりました。この時点で、高度な設定を使用してゲスト OS のシャットダウン プロセスを自動化する方法を探し始めましたが、うまくいきませんでした。その時、VM をシャットダウンするコマンドを見つけました。これはvmrun
機能しました。残された唯一のことは、OS X のシャットダウン時にこのスクリプトを実行し、完全に電源が切れるまで少し時間を置く方法を見つけることでした。しかし、これは悪夢であることがわかりました。スタートアップ項目、rc.shutdown、cron、launchd などでこれを行ういくつかの方法を調べるのに何時間も費やしましたが、どれも私が構成したとおりに機能しませんでした。
シャットダウン スクリプトの実行に launchd を使用する方法については、非常に限られた情報しか見つかりませんでした。これは OS X の世界では最新の機能であることは承知していますので、皆さんの中に、この件について助けてくださる方がいらっしゃれば幸いです。これは非常に基本的な機能だと今でも思っていますが、この問題のさまざまな側面について、このような小さなドキュメントが見つかったことには本当に驚きました。Fusion は、この用途には基本的すぎるアプリケーションなのでしょうか?
誰かが助けてくれることを心から願っています。どうぞよろしくお願いいたします。
答え1
stackoverflow のこの回答で説明されている方法を試しましたか?:-
https://stackoverflow.com/questions/16542301/running-a-shell-script-on-shutdown-via-launchd
基本的に、マシンの起動時に SIGTERM をリッスンするスクリプトを開始し、SIGTERM を取得したら目的のコマンドを実行します。
答え2
VMware ツールをインストールしましたか? 自分でコンピューターをシャットダウンすると、VM ゲストをシャットダウンできますが、UPS バッテリー シャットダウン コマンドによってコンピューターがシャットダウンすると、シャットダウンできません。