![](https://blogimg.goo.ne.jp/user_image/35/7b/f68fe882020a59bcc4c1549ff9bd22f2.png)
Boot Campには「Windows側からMac OS Xで再起動する」機能がありますが、MacからWindowsに切り替えるには起動ディスクの設定が必要です。そこで今回は、AppleScriptを使って擬似的に「Mac OS X側からWindowsで再起動する」機能を追加する方法をご紹介します。
【07/10/29訂正】Mac OS X 10.5 (Leopard)に合わせて一部記述を変更いたしました。画面はMac OS X 10.4 (Tiger)のままですが、同様の手順でお使いいただけます。
以上で設定は完了です。これでメニューバーのスクリプトメニューからWindowsで再起動できるようになりました。実際の使い方は以下の通りです。
これで、Windows側とMac OS X側の切り替え手段がほぼ揃いました。
それでは、また。
【07/10/29訂正】Mac OS X 10.5 (Leopard)に合わせて一部記述を変更いたしました。画面はMac OS X 10.4 (Tiger)のままですが、同様の手順でお使いいただけます。
1 アプリケーションフォルダを開き、「AppleScript」-「スクリプトエディタ」をダブルクリックして起動する
![](https://blogimg.goo.ne.jp/user_image/40/75/4dc22f74f26e8a2fd17882b4a4bb77f0.png)
2 起動したスクリプトエディタに下記のコードを入力し、「管理者パスワード」の箇所を自分の管理者パスワードに置き換える
※本ブログの「Mac OS XからWindowsのNTFSパーティションに書き込めるようにするには(1)~(3)」によってntfs-3gを利用されている場合は、コードが異なります。
※Boot Campアシスタント以外で複数のパーティションに分割している場合や、システムディスクとは別のディスクにインストールしている場合は、記述が異なります。コード内「disk0s3」の部分を、ディスクユーティリティでWindowsのシステムパーティションを選択して「情報」ボタンをクリックし、「ディスク識別子」に表示されている値に書き換えてください。
【07/08/18追記】Windowsのパーティションが標準と異なる場合の対処方法について追加しました。ご指摘をいただきました、隊長@やから建設様にはこの場を借りて御礼申し上げます。
※下記コードはコピーしてお使いいただけます。
ntfs-3gを利用していない場合(通常はこちら)
ntfs-3gでWindowsパーティションをマウントしている場合
![](https://blogimg.goo.ne.jp/user_image/5f/72/699f14cc7230eb0db31701aa33a7a1c1.png)
3 「コンパイル」をクリックして、構文に誤りがないことを確認する
![](https://blogimg.goo.ne.jp/user_image/73/53/dc09481059dd0c2aff55e833bf6cc969.png)
※もしも画面のように色が変わらなかったり、エラーメッセージが表示された場合は、手順2のコードと見比べて誤りを修正してください。
4 「ファイル」メニューの「別名で保存」をクリック
![](https://blogimg.goo.ne.jp/user_image/2f/ae/2059819bc8d422548c10f351f4e5dffb.png)
5 保存の画面で以下のように設定して、「保存」ボタンをクリック
・「名前」に「Windows で再起動」と入力
・「名前」右横の「▼」ボタンをクリックしてフォルダ選択できる状態にしてから「Macintosh HD」の「ユーザ」-「(ユーザ名)」-「ライブラリ」-「Scripts」の順に選択
・「フォーマット」から「スクリプト」を選択
・「実行専用」にチェックを付ける
![](https://blogimg.goo.ne.jp/user_image/3e/25/162fb18c0d344b94b2cb25ccf81c0cf0.png)
6 アプリケーションフォルダを開き、「AppleScript」-「AppleScriptユーティリティ」をダブルクリックして起動する
![](https://blogimg.goo.ne.jp/user_image/46/02/4c194454ac82272a1ff0f269968227b2.png)
7 「メニューバーにスクリプトメニューを表示」にチェックを付け、「ライブラリスクリプトを表示」のチェックを外して、AppleScriptユーティリティを閉じる
![](https://blogimg.goo.ne.jp/user_image/31/40/8eca4fe0aae2fd4a7a53af988c2c1ed8.png)
![](https://blogimg.goo.ne.jp/user_image/40/75/4dc22f74f26e8a2fd17882b4a4bb77f0.png)
2 起動したスクリプトエディタに下記のコードを入力し、「管理者パスワード」の箇所を自分の管理者パスワードに置き換える
※本ブログの「Mac OS XからWindowsのNTFSパーティションに書き込めるようにするには(1)~(3)」によってntfs-3gを利用されている場合は、コードが異なります。
※Boot Campアシスタント以外で複数のパーティションに分割している場合や、システムディスクとは別のディスクにインストールしている場合は、記述が異なります。コード内「disk0s3」の部分を、ディスクユーティリティでWindowsのシステムパーティションを選択して「情報」ボタンをクリックし、「ディスク識別子」に表示されている値に書き換えてください。
【07/08/18追記】Windowsのパーティションが標準と異なる場合の対処方法について追加しました。ご指摘をいただきました、隊長@やから建設様にはこの場を借りて御礼申し上げます。
※下記コードはコピーしてお使いいただけます。
ntfs-3gを利用していない場合(通常はこちら)
tell application "Finder"
display dialog "コンピュータを再起動してもよろしいですか?" & return & return & "お使いのコンピュータは Windows を使用して起動します。" default button 2 with icon note
end tell
do shell script "sudo bless --device /dev/disk0s3 --legacy --setBoot" password "管理者パスワード" with administrator privileges
do shell script "sudo shutdown -r now" with administrator privileges
display dialog "コンピュータを再起動してもよろしいですか?" & return & return & "お使いのコンピュータは Windows を使用して起動します。" default button 2 with icon note
end tell
do shell script "sudo bless --device /dev/disk0s3 --legacy --setBoot" password "管理者パスワード" with administrator privileges
do shell script "sudo shutdown -r now" with administrator privileges
ntfs-3gでWindowsパーティションをマウントしている場合
tell application "Finder"
display dialog "コンピュータを再起動してもよろしいですか?" & return & return & "お使いのコンピュータは Windows を使用して起動します。" default button 2 with icon note
end tell
do shell script "diskutil unmount /dev/disk0s3"
do shell script "diskutil mount /dev/disk0s3"
do shell script "sudo bless --device /dev/disk0s3 --legacy --setBoot" password "管理者パスワード" with administrator privileges
do shell script "sudo shutdown -r now" with administrator privileges
display dialog "コンピュータを再起動してもよろしいですか?" & return & return & "お使いのコンピュータは Windows を使用して起動します。" default button 2 with icon note
end tell
do shell script "diskutil unmount /dev/disk0s3"
do shell script "diskutil mount /dev/disk0s3"
do shell script "sudo bless --device /dev/disk0s3 --legacy --setBoot" password "管理者パスワード" with administrator privileges
do shell script "sudo shutdown -r now" with administrator privileges
![](https://blogimg.goo.ne.jp/user_image/5f/72/699f14cc7230eb0db31701aa33a7a1c1.png)
3 「コンパイル」をクリックして、構文に誤りがないことを確認する
![](https://blogimg.goo.ne.jp/user_image/73/53/dc09481059dd0c2aff55e833bf6cc969.png)
※もしも画面のように色が変わらなかったり、エラーメッセージが表示された場合は、手順2のコードと見比べて誤りを修正してください。
4 「ファイル」メニューの「別名で保存」をクリック
![](https://blogimg.goo.ne.jp/user_image/2f/ae/2059819bc8d422548c10f351f4e5dffb.png)
5 保存の画面で以下のように設定して、「保存」ボタンをクリック
・「名前」に「Windows で再起動」と入力
・「名前」右横の「▼」ボタンをクリックしてフォルダ選択できる状態にしてから「Macintosh HD」の「ユーザ」-「(ユーザ名)」-「ライブラリ」-「Scripts」の順に選択
・「フォーマット」から「スクリプト」を選択
・「実行専用」にチェックを付ける
![](https://blogimg.goo.ne.jp/user_image/3e/25/162fb18c0d344b94b2cb25ccf81c0cf0.png)
6 アプリケーションフォルダを開き、「AppleScript」-「AppleScriptユーティリティ」をダブルクリックして起動する
![](https://blogimg.goo.ne.jp/user_image/46/02/4c194454ac82272a1ff0f269968227b2.png)
7 「メニューバーにスクリプトメニューを表示」にチェックを付け、「ライブラリスクリプトを表示」のチェックを外して、AppleScriptユーティリティを閉じる
![](https://blogimg.goo.ne.jp/user_image/31/40/8eca4fe0aae2fd4a7a53af988c2c1ed8.png)
以上で設定は完了です。これでメニューバーのスクリプトメニューからWindowsで再起動できるようになりました。実際の使い方は以下の通りです。
1 メニューバーのスクリプトメニューアイコン(
)をクリックし、「Windows で再起動」をクリック
![](https://blogimg.goo.ne.jp/user_image/5b/f0/0bfb57c8ba79c332647d964c75d19351.png)
2 「コンピュータを再起動してもよろしいですか?」という画面が表示されたら、「OK」ボタンをクリック
![](https://blogimg.goo.ne.jp/user_image/35/7b/f68fe882020a59bcc4c1549ff9bd22f2.png)
※ntfs-3gを利用している場合は、ディスクのアンマウントと再マウントが行われるため、若干再起動まで時間がかかります。
![](https://blogimg.goo.ne.jp/user_image/41/2d/5c6a42f6a79afb2cc0a0ff281b4ac514.png)
![](https://blogimg.goo.ne.jp/user_image/5b/f0/0bfb57c8ba79c332647d964c75d19351.png)
2 「コンピュータを再起動してもよろしいですか?」という画面が表示されたら、「OK」ボタンをクリック
![](https://blogimg.goo.ne.jp/user_image/35/7b/f68fe882020a59bcc4c1549ff9bd22f2.png)
※ntfs-3gを利用している場合は、ディスクのアンマウントと再マウントが行われるため、若干再起動まで時間がかかります。
これで、Windows側とMac OS X側の切り替え手段がほぼ揃いました。
それでは、また。
今回はまたとても便利なテクニックですね!
私のブログでもご紹介させていただいてしまいました。
今回の記事は私に取って非常にタイムリーでした!
(いつもですが)
スクリプトの内容についてお聞かせください。
以前こちらでお世話になり、BootCamp環境で複数
パーティションを作成したのですが、
その場合はスクリプトの『/dev/disk0s3』
この部分は変わるのでしょうか?
例えば、先頭パーティションがOSXで2つ目が共用
ドライブ(FAT32)で3つ目がWindowsの場合です。
いつもイレギュラーな質問ばかりですみません。
正式バージョンでは、dotmb様もサイトでご紹介されていた、「真実は?BootCamp完成版のスリープ機能」(http://dotmb.netwalk.in/?eid=455587)の実装を期待したいところですね。
今後ともよろしくお願いいたします。
ご高察の通り、Boot Campアシスタント以外で作成した複数パーティションの場合、「disk0s3」の部分を書き換える必要がございます。
ディスクユーティリティでWindowsのシステムパーティションを選択して、「情報」ボタンをクリックし、「ディスク識別子」に表示されている値に書き換えていただければ大丈夫です。
ご質問の件は後ほど記事にも反映させていただきます。ご指摘ありがとうございました。
今後ともよろしくお願いいたします。
Apple Scriptって使いこなせばとても便利なんですね。
こういうのって、痒いところに効いてホントに助かります。
BootCamp Windows側にも付け加えたくなります。
どうすれば良いのでしょう、、
「Windows側にも付け加えたく」なられたのは、今回の再起動機能についてでしょうか? まだお試しでないかもしれませんが、Boot Camp 1.4 Betaには同等の機能がWindows側に付け加えられております。詳しくは本ブログ「Boot Camp 1.4でWindows Vista製品版をセットアップするには」(http://blog.goo.ne.jp/pcqanda/e/5e0bcb6e94c78b989d6717a4185402ef)をご参照いただければ幸いです。
今後ともよろしくお願いいたします。
AirMacでワイヤレスネットワークが構築できないとのことですが、現在はどのような状況でしょうか。
(1)Windowsのバージョン(XP/Vista)は何でしょうか
(2)アクセスポイントの機種名をお教えください
(3)暗号化の種類(WEP/WPA/暗号化無し等)をお教えください
(4)SSIDのステルス機能をお使いでしょうか
(5)Windowsの無線アクセスポイント一覧は表示されておりますでしょうか
以上、お手数ですがご確認の程よろしくお願いいたします。
後はブラウザなどの設定がうまくいっていないのかもしれません。
休日以外、なかなか時間が取れないので前に進むのが遅いのですが、上記の内容も確認させていただきながら、また質問させていただきます。
こんなのも作れますか?