Windowsの豆

このホームページはパソコンをAV機器のようにしたいという発想のページです。実際はKODI(旧XBMC)だけをインストールすればAV機器のようになるのかと言えば、細かい部分でパソコンの設定をしないとAV機器のようには動きません。そこでこのページではWindowsXPベースのKODI(旧XBMC)を使いやすく設定するTipsを掲載します。

ようこそ画面を表示しない。


通常Windowsは起動時にようこそ画面でユーザーログインをしないとデスクトップを表示することができません。
これは複数のユーザーを使い分けてパソコンを使うためには良いですが、
KODI(旧XBMC)の使用環境ではパソコンの電源を入れてからKODI(旧XBMC)が使える状態へはストレートに行ってほしいところです。
そのためにようこそ画面を表示しないように設定します。

まず「スタートボタン」から「ファイル名を指定して実行」をクリックします。

ダイヤログに「control userpasswords2」と入力してOKを押します。

するとユーザーアカウントのウィンドウが開くので「ユーザーがこのコンピュータを使うには、ユーザー名とパスワードの入力が必要」のチェックを外します。

以上で次回の起動時に最後にログインしたユーザー名で自動的にログインするようになります。

デスクトップテーマ


何年も見慣れたWindowsXPのデスクトップですがKODI(旧XBMC)を起動する前にこれが出てくるとどうもださい感じがしませんか?
そこでAV機器風にデスクトップを変更するためにデスクトップテーマの入れ替えを行います。
マイクロソフトの正式なデスクトップテーマにZuneというものがあります。
Zuneは日本では販売すらしていませんがこれはipodに対抗するためにマイクロソフトが作った製品のようです。
これ売れなかったんでしょうね・・・
Zune本体には用はありませんがここにあるデスクトップテーマはなかなかAV機器っぽいデザインで使えます。
いつまで存在するのかわからないのでなるべく早めに入手しておきましょう。もちろん無料です。
http://www.zune.net/
Zune

どこにデスクトップテーマのデータがあるのか分かりづらいのでリンクを張っておきます。
Zuneデスクトップテーマダウンロード

ダウンロードしたら早速インストールしてください。

インストールが終了すると自動的にデスクトップテーマの切り替えウィンドウが開きますのでそのままOKを押します。

AV機器風のデスクトップになりました。

ドライブの自動再生を停止する

DVDなどをパソコンのドライブに挿入するとWindowsは自動的にプレーヤーを起動して再生します。この動作はKODI(旧XBMC)の邪魔になるので、この自動再生機能を無効にします。

まず「スタートボタン」から「ファイル名を指定して実行」をクリックします。

ダイヤログに「gpedit.msc」と入力してOKを押します。

[コンピューターの構成][管理テンプレート][システム]フォルダをクリックすると右側に自動再生機能をオフにするというのがありますのでこれをダブルクリックします。

未構成か無効になっていると思いますので「有効」にチェックを変えて「すべてのドライブ」を選択してOKを押します。

これでDVDを挿入してもWindowsは何もしなくなりました。

リモートデスクトップをマルチセッションで同時起動

KODI(旧XBMC)を使用するのに、「コンソール(モニターで画面を見ながら操作している状態)」は動画視聴専用にするため、パソコンとしての操作は、ネットワーク上の別パソコンから遠隔操作で行えるようにします。遠隔操作に使用するのはXP以降に付属する「リモートデスクトップ」というものです。

また遠隔操作側で、パソコン(コンソール側)起動時に実行したいプログラムがある場合には、コンソール側が起動するのと同時に、自動で遠隔操作側も起動するようにします。 (たとえばspinelはセキュリティ制限で、リモートデスクトップを使用すると、カードリーダーが無効になってしまうので、コンソール側で起動して、EDCB等はリモートデスクトップで使用するなど、と意味不明なことを言ってみたり…)
※なおコンソール側は上記の「ようこそ画面を表示しない。」で管理者権限のあるユーザーで起動しているという前提で話しをします。

まず遠隔操作用ユーザーを「コントロールパネル」の「ユーザーアカウント」で作成します。「新しいアカウントを作成する」を選び、ユーザーを作成してください。次に作成したユーザーをクリックして「パスワードを作成する」をクリックしてパスワードを設定してください。(パスワードを設定しないとセキュリティ規制で遠隔操作できません)

マイコンピュータのプロパティを開き、リモートのタブを開き、リモートデスクトップの「このコンピュータにユーザーがリモートで接続することを許可する」にチェックを入れてOKを押します。

これでユーザー切り替えを行ったり、別パソコンからリモートデスクトップでアクセスできるようになります。ただし、このままでは複数のユーザーが、同時に別々の操作を行うことはできません。操作をする時には、必ずそのユーザーの画面にいちいち切り替えなくてはいけません。この制限を外して同時に複数のユーザーでパソコンの操作を行うことを「マルチセッション」と言います。

「マルチセッション」を可能にするには下記のサイトから「マルチセッションパッチ」をダウンロードします。
※ここからは自己責任でお願いします。
http://deepxw.blogspot.com/2009/04/universal-termsrvdll-patch.html
マルチセッションパッチ

ダウンロードしたファイルを解凍して「UniversalTermsrvPatch-x86.exe」を実行します。 次にウィンドウの「patch」ボタンを押せば、マルチセッション化は完了です。

WindowsXPの設定は以上です。あとはリモートデスクトップ(RDP)で、自分自身に別ユーザーでアクセスすれば、良いのですが、自分自身にアクセスということがWindowsXPはできないようになっています。 それを可能にするため、「OpenSSH for Windows」というソフトを使用します。 このソフトを使って自分自身であることを偽装してアクセスします。 (本来は「OpenSSH for Windows」はこういう使い方をするためのものではないですが…)

このサイトから「OpenSSH for Windows」をダウンロードします。
http://sshwindows.sourceforge.net/download/
OpenSSH for Windows
ダウンロードしたファイルを解凍して「setupssh.exe」を実行します。 順次ボタンを押してインストールを完了してください。

※途中「Before starting the OpenSSH service you MUST edit the C:\Program Files\OpenSSH\etc\passwd file If you dont do this, you will not be able to log in through the SSH server. Please read the readme.txt or quickstart. text file for information regarding proper setup of the passwd file」とダイアログが表示されますが、ただの警告メッセージなので、無視して構いません。

インストールした「OpenSSH for Windows」には「サーバ」と「クライアント」の、二つのソフトが入っていますが、この両方を使います。(これから作業は見た目には、何をしているか分からないと思うので、二つのソフトがあるというイメージだけ理解してください)
※インストールで「c:\Program Files\OpenSSH\」に設置した前提で話します。

まずサーバの設定をします。「c:\Program Files\OpenSSH\etc\sshd_config」というファイルをメモ帳等で開き以下の項目を同じようになるように編集します。

StrictModes no
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile /etc/authorized_keys

PasswordAuthentication no

※StrictModesは書き込み権限等の厳密なチェックです。Windowsには関係ないのでnoにします。
※RSAAuthenticationは暗号化方式の設定でyesにします。
※PubkeyAuthenticationはパスワードではなくキーファイルで認証を行う設定でyesにします。
※AuthorizedKeysFileはキーファイルの設置場所です。(上記の場合はc:\Program Files\OpenSSH\etc\authorized_keys) ※PasswordAuthenticationはパスワードによる認証ですがキーファイルのみで認証をするのでnoにします。

次に「スタートボタン」から「ファイル名を指定して実行」をクリックします。

ダイヤログに「regedit」と入力してOKを押します。

ツリーの下記の情報を開いて下さい。「HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/home」の「native」の項目の値をクリックして「C:\Documents and Settings」に変更してください。

※OpenSSHは元々Windowsではなく、Linux等のOS用に作成されたソフトで、初期状態ではWindowsにはないフォルダが指定されていて、エラーになってしまうのでこの変更をします。
※レジストリの変更は危険な作業です。十分注意して自己責任でお願いします。

つぎに「スタートボタン」から「ファイル名を指定して実行」をクリックします。

ダイヤログに「cmd」と入力してOKを押します。

次に以下のように入力します。(コピー&ペーストできます。)
cd c:\Program Files\OpenSSH\bin
引き続き以下のコマンドを入力してエンターを押してください。
mkgroup -l >> ..\etc\group

※ちなみにmkgroupコマンドで許可グループファイルを作成しています。(Windowsのローカルを許可)

引き続き以下のコマンドを入力してエンターを押してください。
mkpasswd -l -u administrator >> ..\etc\passwd

※ちなみにユーザーの権限ファイルを作成しています。administratorの部分にコンソール側のユーザー名を入れてください。

ここまではサーバの設定でしたが、次にクライアントの設定を行います。
引き続き以下のコマンドを同じウィンドウに入力してエンターを押してください。
ssh-keygen -N "" -t rsa

※ちなみにここでは認証用のキーファイルを作成しています。接続を自動化するためにパスワード入力を求めないキーファイルを作成しています。

「C:\Documents and Settings\administrator\.ssh\」には「id_rsa」と「id_rsa.pub」というファイルができているはずです。
このうち「id_rsa.pub」を「authorized_keys」にリネームして「c:\Program Files\OpenSSH\etc」に移動。「id_rsa」は「c:\」に移動しておきます。
※「authorized_keys」はサーバ側で必要なものです。逆に「id_rsa」はクライアント側で使用します。

OpenSSHの準備はこれで完了しました。次にリモートデスクトップの自動接続用ファイルを作成するために手動で自分自身にアクセスしてみます。まずOpenSSHサーバを起動します。以下のコマンドを入力して、エンターを押してください。
net start opensshd
これでサーバが起動するので、次にクライアントでサーバに接続します。
(サーバとクライアントの接続を同じ画面で行うという、おかしな操作ですが、気にせず進みましょう。)
ssh -R 33389:localhost:3389 -i c://id_rsa administrator@localhost

※「-R 33389:localhost:3389」クライアントがサーバに接続すると、33389ポートへのアクセスを自分自身の3389(リモートデスクトップで使用する)ポートへ転送する設定
※「-i c://id_rsa」キーファイルによってユーザー認証を行う。
※「administrator@localhost」administratorというユーザーでlocalhost(自分自身)にアクセスする

画面にOSの名称等が表示されれば、OpenSSHクライアントからOpenSSHサーバに、接続したことになります。

※このウィンドウを閉じる、または「exit」と入力するとクライアントの接続を切断することができます。

「スタート」「プログラム」「アクセサリ」「リモートデスクトップ接続」を起動してください。
コンピュータの項目には「localhost:33389」と入力してください。 次に「オプション」ボタンをクリックして下さい。

ユーザー名の項目に「遠隔操作用のユーザー名」を入れ、「名前を付けて保存」ボタンをクリックして「localhost.rdp」というファイル名で保存します。

「接続」ボタンをクリックすると認証ダイアログが表示されますので、 「パスワードを記憶する」にチェックを入れてパスワードを入力し、OKをクリックしてください。

これでリモート接続が成功したら、リモートデスクトップの画面は閉じます。 上部右側の×をクリックすればリモートデスクトップを切断します。

これで先ほど保存した「localhost.rdp」をクリックするだけで次回からは自動的に接続できるようになります。

さて話が長くなりましたが、手動であれば、自分自身にリモートデスクトップに接続できるようになりました。最終的には自動で、ここまでの状態にするということだったので、ここまでを自動で行うバッチファイルを用意しました。(VBスクリプトです。)

このファイルをダブルクリックすれば自動的にリモートデスクトップで遠隔操作側のユーザーを起動します。また、起動を確認した後には自動的にリモートデスクトップを切断します。
このファイルを「スタートアップ」フォルダーに入れておけば、コンソール側の起動時に遠隔操作側も起動できるという仕組みです。

リモートデスクトップ自動起動用VBスクリプト

このバッチファイルの基本設定の部分をメモ帳等でそれぞれの環境にあわせて変更してください。

需要があるのかないのか、分かる人には分かる話でした。PT2最高ッス

次は「天気予報」のページへ

KODIについて

リモコンについて②

にせ肉(ダシダおからこんにゃく)

トップへ