2013-07-15

リモートディスクを取り出す方法

Blu-ray Disc(ブルーレイディスク)の時点で光学式ドライブを見限っているアップルちゃんだが、最近のMacにはDVDドライブすら搭載されなくなった。

確かになくてもほとんど困らない。それでも、まだ、たま〜にDVD-ROM/CD-ROMを読みたくなることはある。

そんなときのために、ウチではMac mini Serverに付いているDVDドライブを共有している。Mac OS Xの「DVD または CD 共有」機能を使えば簡単に実現できて便利である(この機能は OS X Server でなくても使える)。

便利なのだが…… かつて、光学式ドライブの共有機能を使い始めたころ、最初に頭に浮かんだ疑問は「これってクライアント側から、サーバー側のDISCをイジェクトできないの?」であった。

Finderのサイドバーに表示される「リモートディスク」には、いかにもイジェクトできそうなアイコンが備わっているのだが、そいつをクリックしても残念ながらサーバーに装填されたDVD-ROMは排出されない。サーバーのDVDボリュームとの接続が解除されるだけである。

サーバーマシンはヘッドレス(ディスプレイもキーボードもマウスも取り付けていない)で運用しているで、キーボードのイジェクトボタンで取り出しというわけにはいかないし、CD-ROMを取り出すためだけに、いちいち画面共有とかsshでログインするとか面倒でやってられない。

そこで、こんな感じのスクリプトを作成して使っている。いまさら思い出したように公開しておく。

クライアント側でリモートディスクのイジェクトアイコンをクリックした後、続けてこのスクリプトを実行するとサーバー側のDVD/CDが排出される(すべてのクライアントでリモートディスクを接続解除してからスクリプトを実行すること、でないとエラいことに)。

シェルスクリプトになっているが、処理の本体はAppleScriptなので、ヒアドキュメント部分を取り出して、「Automator」とか「AppleScript エディタ」でアプリケーション化すればダブルクリックでサーバーのディスクをイジェクトとかも可能であろう。

このスクリプトを動作させるには、サーバー側でリモートアップルイベントを許可しておかなくてはならない。おまけに、サーバー側でFinderが起動している必要もあるので、ユーザーがGUIログインしている状態を保っておかなくてはならない。ようするに、画面共有(Screen Sharing.app)でログアウトせずにウインドウを閉じたような状態。そんなわけでセキュリティ的にはあまりよろしくない。

もっとうまい方法を知ってる人は教えてください。(^^;

※アップルに問い合わせて確認したところでは2013-07-15時点では残念ながら、「リモートでサーバーのディスクを取り出す機能はない」そうである。

0 件のコメント:

コメントを投稿