無題

無題
スポンサーサイト

NUCを持ち運び可能な無線LANルーター兼RDPホストサーバーとして使ってみる

一年くらい前に出始めた手のひらサイズの小型ベアボーンキット「NUC」のHaswell版が去年の11月ぐらいに出たと聞いて先日我慢できず買ってしまいました。
なんといっても3.5cm×11cm×11cmの小ささは非常に魅力です。

で、せっかくここまで小さいので、こいつを、持ち運びできる「無線LANルーター兼RDPホストサーバー」として使えるようにいろいろ設定してみたいと思います。

なお今回使うOSはUbuntuではなくWindows8.1です。お許しを


0.やりたいこと

やりたいこととしては、無線LAN環境が存在しない、もしくは非常に低速な環境でも、
自分自身が無線LANポイントになれ、かつ持ち運びできるWindowsPCを使うことで、そいつを適当なじゃまにならない場所にポンと置いておけば、他の機器(例えば、スマートフォンであったり、タブレットであったり)から無線LAN経由でPCに接続することによって、ファイルのやりとりや読み出しができたり、あるいは、リモートデスクトップを使うことで、タブレットの非力なCPUでも、高い処理能力を得ることができるようにする。というようなことを目指します。

あとは、普段LinuxPCを使っている時にWindowsが必要になった時のためでもあります。仮想化ソフト使えばいいじゃんと言うツッコミはなしで



1.使ったパーツ

今回は以下の様な構成でNUCを組みました。


NUC :D54250WYK

SSD :Crucial M500 mSATA 内蔵型 SATA6Gbps 240GB CT240M500SSD3

メモリ :DDR3 S.O.DDR3L-1600 8GB D3N1600Q-L8G 1.35V 低電圧版 ×1(8GB)

無線LANカード :Intel Centrino Advanced-N 6235 → Atheros AR5B22 (NUC本体との相性問題のため変更)

Windows8.1 Pro



2014-05-09NUC





2.ネット環境のない場所でどうするか?

NUCを持ち運んで、モニターレスで運用するにあたって一番の問題となるのは、ネット環境のない場所でどうやって運用するか?ということです。ネットにさえ接続されていればリモートデスクトップ経由手持ちのPC、タブレットからNUCを操作することができますが、そもそもNUCが無線につながらない環境や新しい環境で無線LANの接続設定が必要な場合などでは、リモートデスクトップ経由で操作することができなくなります。
もちろん最近では持ち運びできるモバイルモニタなども増えてきているので、それを持ち歩いてもいいのですが、それではせっかくのNUCのコンパクトさを活かせません。

そこで今回はNUC本体を無線LANポイントにすることで無理やりネット環境を作り出し、リモートデスクトップ経由で接続できるように設定してみたいと思います。



3.Virtual Wifi を使ってNUCを無線LANアクセスポイントにする

*****************************************************************

3-1.Virtual Wifi機能を有効にし、無線LANアクセスポイントを作る

基本的には、
http://www.atmarkit.co.jp/ait/articles/1005/27/news096_2.html

http://www.infraexpert.com/study/wireless48.html
を参考に設定すればOKです。基本的な流れとしては


管理者権限でコマンドプロンプトを開き、

> netsh wlan set hostednetwork mode=allow

> netsh wlan set hostednetwork ssid=自分で決めたSSID

> netsh wlan set hostednetwork key=自分で決めたパスワード keyusage=persistent

> netsh wlan start hostednetwork

と順に実行していけば、「コントロールパネル」→「ネットワークと共有センター」→「アダプタの設定変更」の欄に、「ワイヤレスネットワーク接続2」のような名前で、"Microsoft Virtual WiFi Miniport Adapter"というデバイスが設定されているはずです。
これが、仮想的に創りだした無線LANポイントになります。この無線LANポイントの設定を確認するためには

netsh wlan show hostednetwork

とコマンドプロンプトで打てばOKです。

この仮想的に作った無線LANポイントをもともとNUCに搭載されている有線/無線LANアダプタを通じてInternetにつなげるためには「インターネット接続共有」を行う必要があります。
「コントロールパネル」→「ネットワークと共有センター」→「アダプタの設定変更」から、インターネットにつながっているアダプタを選び、
「プロパティ」→「共有」→「ネットワークのほかのユーザーに、このコンピューターのインターネット接続をとおしての接続を許可する」のチェックをオンにし、その下の「ホームネットワーク接続」リストボックスで、デバイス名「Microsoft Virtual WiFi Miniport Adapter」に対応するアダプタを選択すればOKです。

より詳しい情報は上記で紹介したHPを参考にしてください。

*******************************************************************

3-2.Virtual Wifi機能をOS起動時に自動実行するように設定する。

さて、上記で設定したVirtual WifiをOS起動時に自動実行できるように設定します。

適当な場所に、以下の内容でbatファイルを作ります。
今回は、VirtualWifiAutoRUN.batという名前で作りました。

----------ここから--------------------------

rem SoftAPの起動

netsh wlan set hostednetwork mode=allow
netsh wlan start hostednetwork


----------ここまで--------------------------


2014-05-06NUC6



次に、上記で作ったbatファイルをWindows起動時に自動実行してくれるようにします。
「コントロールパネル」→「管理ツール」→「タスクスケジューラー」を開きます。その後、「操作」→「タスクの作成」で以下のような内容のタスクを作成します。
詳しくは http://www.losttechnology.jp/Win7/taskscheduler.html を参照してください。

・「全般」→「ユーザーがログオンしているかどうかにかかわらず実行する」にチェック
・「最上位の権限で実行する」にチェック

2014-05-06NUC1



・トリガーをスタートアップ時に、トリガー詳細をシステム起動時に設定

2014-05-06-NUC2


・タスク操作をプログラムの開始に設定。起動するプログラムには先ほど作った~.batファイルを使用する。

2014-05-06NUC3



・「条件」→「タスクを実行するためにスリープを解除する」にチェックを入れる


2014-05-06NUC4



・「設定」→「タスクを要求時に実行する」にチェックを入れる
・「タスクが停止するまでの時間」のチェックを外す
・「タスクが失敗した時の再起動の間隔」「要求時に実行中のタスクが終了しない場合にタスクを強制的に停止する」に必要に応じてチェックを入れ、設定を行う


2014-05-06NUC7



以上で設定は終わりです。
これで電源投入直後から自動的にVirtual-Wifiが立ち上がるようになります。
あとは上記で設定した無線LANポイントにアクセスすることで、Windows謹製のRDPソフトやSplash top等のリモートデスクトップアプリを使って外部から接続することができます(ただし、Splash TopはNUC側がモニタレスの環境だと画面が表示されませんでした)。また、Windowsのファイル共有機能を使えば、簡易ファイルサーバーとしても使うことができると思います。

なお、必要に応じて、shotdown.exeへのショートカットを追加したり、電源ボタンでシャットダウンが行えるようにしたりと、モニタレスの状態でも使いやすいようにカスタマイズしておくといいかもしれません。ついでにWin8.1を使うのであれば、高速スタートアップは無効化しておくのがいいと思います。無線LANカードを認識してくれなかったり、VirtualWifiが立ち上がらなかったりすることがあります。

4.やってみて

私の環境では、RDPでのリモートデスクトップ接続も快適に動いており、普通に使えています。
最初は、「こんなめんどくさいコトするならはじめからUltraBook一台持ち歩けばいいんじゃね」とか思っていたのですが
有線-無線変換機として使ったり、USBポート足りない時にNUCに挿して無線LAN越しにファイル共有したりとかできるので一台あると何かと便利でした。
NUC本体と電源ケーブルだけでいいのでそこまで荷物も増えませんしね

とにかく新しいおもちゃとしてはとっても楽しいです。

Kileの設定を変更して便利に使う

2012-06-21-0000


前回の記事でKileの設定についてはまた後日書くと言っていましたが、今日でちょうど一年が経ってしまいました‥。

のでいい加減書きたいなと思います。

今回紹介するのは、私自身が変更したほうが使いやすいなと感じた部分のみです。
5番以外は「configer Kile(Kileの設定)」から変更できる部分のみを載せています。

なお、前回記事まで終わらせた状況を想定しています。LaTeXのインストールがまだという人はそちらを参考にしてください。




1.Auto completion for LaTeX markupのしきい値を1文字にする


「補完」タブの欄にあるAuto completion for LaTeX markupのしきい値を1〜2文字にすることで、本文で\から始まるLaTeXコマンドを入力する時に、1〜2文字入力しただけで候補を表示してくれるようになります。
デフォルトの3文字でも良いのですが、ほとんどのコマンドが2文字程度入力すればトップに出てきてくれるので私は1文字にしています。


2.補完ファイルに「latex-mathsymbols」を追加する

同じく「補完」タブの欄にある「補完ファイル」に「latex-mathsymbols」を追加することで、ギリシャ文字等も候補に出てきてくれるようになります。他にも、いろいろな種類の補完ファイルがあるので、自分が書く文章に応じてオンオフを切り替えると便利に使うことができると思います。
必要であれば自分で補完ファイルを作って、IMEのユーザー辞書のように使うこともできます。


3.Dymanic Word Wrapを有効にする


「Appearance」タブ→「全般」から「Dymanic Word Wrap」を有効にしておくと、Kile上で文章が長すぎて枠に入りきらなくなった時、自動的に端で折り返して表示してくれるようになります。
特に画面の狭いノートパソコン等で編集するときは非常に便利なので、ぜひ有効にしてみてください。


4.Show scrollbar mini-mapを有効にする

「Appearance」タブ→「Borders」から「Show scrollbar mini-map」を有効にしておくと、画面右端に文章全体を遠くから俯瞰して見たような形のスクロールバーを表示させることができます。これはSublime Text(こちらも素晴らしいエディタです)なんかで実装されているものとほぼ同じものです。
今文章全体のどこらへんを編集しているのかを直感的に知ることができ、マウスで自由に動かせるので非常に便利です。


5.SyncTeXを活用する


SyncTeXはKile上で今編集している箇所とPDFで表示させている場所を同期することのできる機能です。
Kile上で編集した部分がPDFでどう見えるかを素早く確認したり、逆にPDF上で修正箇所を見つけた時にKile上のその場所に素早くジャンプできたりします。
長い文書を編集するときは特に便利です。詳しい設定方法、使い方はLinuxでSyncTeXを使うを参照してください。


2014-04-28Kile1.png


他にも、Kileに関するTipsに関しては、Kileで便利なショートカット集LaTeXエディタKileでユーザータグを使ってみるあたりで紹介しているので、よろしければそちらも参考にしてみてください


Ubuntu 13.04でLaTeX環境を整える

Ubuntu13.04が先日無事リリースされました。一昔前は、GNOMEに代わってデフォルトで採用されたUnityの完成度の低さからユーザーが離れた時もありましたが、ここ最近はこなれてきて十分使い物になってきているようです(と言っても個人的には12.04の頃からUnityに対する評価は悪くありませんでした)。私個人としてもちょっとばかしKDEに飽きてきた部分もあるので(ぇ)、ここいらで心機一転、新しいUIで遊んでみようと思います(ついでにHUDとやらも使ってみたいので)。ついでにせっかくなのでLaTeX環境も整えてしまいましょう。というわけで、今回はUbuntu13.04でLaTeX環境を整えるところまで行いたいと思います。

※2014/04/28追記 Ubuntu14.04でも同じ方法でインストールできます。texliveのバージョンは順調に上がっていましたが



0.Ubuntu13.04のインストール

まあこんなものはわざわざ書く必要もないのでスクリーンショットだけ載せておきます。Englishでインストールしているは私のミスです。インストール後に直しました。LVM有効にしているのはただの好奇心です。インストール先は仮想マシンですしあんまり意味ないです。


ubuntu13-04.gif
インストールの様子



1.LaTeX環境の構築

12.04の頃からの大きな違いとして12.10からデフォルトのリポジトリに登録されているtexliveのバージョンが2009から2012に変わっています。これによって、わざわざtexliveの公式ホームページからパッケージをダウンロードしてこなくても、apt-getコマンド一発で、UTF-8対応なLaTeX環境を整えることができるようになりました。文字コードの問題を解決するために四苦八苦していたUbuntu10.04の頃から比べると隔世の感がありますね。以前は、LaTeX環境を構築するためだけに半日潰していたのですが・・・


というわけで、telive2012をインストールしましょう端末から

$ sudo apt-get install texlive-lang-cjk

と打ちます。このメタパッケージによって日本語用のtexliveパッケージがインストールされます。
ちなみに他言語も含めたtexliveの全パッケージをインストールする場合には以下のように打ちます。

$ sudo apt-get install texlive-full

こちらを入れると私の環境ではtexliveパッケージだけで3GB程度消費しました。
ディスク容量なんて気にならないぜという方はこちらを入れてもいいと思います。



以上で、LaTeX本体のインストールは完了です。次にエディタ等の環境を整えて行きましょう。

キャプチャ3
texlive2012インストール時の端末画面、約2.7GBのディスク容量を消費するようです。

補足
ちなみに、もろもろの設定ファイルは、/usr/share/以下に、texlive,texlive-bin,texmf等々のフォルダ内に保存されています。12.04以前のtexlive公式ページからTar玉を取ってくるやり方とは設定ファイル等のパスが違っているので注意。実行ファイルはすべて/usr/bin以下にあります。




2.エディタのインストール、設定

LaTeX用のエディタにはいろいろ種類があり、有名ドコロではtexworksとかemacs+yatexがありますが、今回はKileで話を進めていきます。端末から

sudo apt-get install kile kile-l10n okular

と打ちます。KileはKDEアプリなのでKDE関係のパッケージも一緒にインストールされます。 インストールが終わったらKileを起動してみましょう。

kileinubuntu1304.png
Kileの外観


早速ビルドコマンドの設定といきたいところですが、なぜか、Unity環境では、Kile全体の設定をいじれなかったので、ツールバーに「Kileを設定」を追加します。Kile上のボタンが並んでいるツールバーの位置で右クリックを押し、「ツールバーを設定」をクリックします。すると以下の様な画面が出てくるので、左側にある「利用可能なアクション」から「Kileの設定」選び、右矢印をクリックして「現在のアクション」に追加します。これによって、ツールバーに「Kileを設定」ボタンが表示されます。

キャプチャ4


では、「Kileを設定」ボタンを押してビルドコマンドを設定して行きましょう。左側のタブから、「ビルド」タブを選択し、それぞれ以下のように設定します。ちなみにplatexコマンドにはsynctexのオプションを付与しています。

****************************************************************
ビルド設定一覧(主に使うものだけ)

LaTeX
コマンド platex
オプション -synctex=1 -interaction=nonstopmode '%source'

DVItoPDF(デフォルトのまま)
コマンド dvipdfmx
オプション '%S.dvi'

ForwordPDF(デフォルトのまま)
コマンド okular
オプション --unique '%absolute_target'

BiBTeX
コマンド pbibtex(bibtexのままでもいけるかも?)
オプション '%S'

QuickBuild
コマンド LaTeX→DVItoPDF→ForwordPDF



キャプチャ5


キャプチャ6

****************************************************************

以上で、とりあえずの設定は完了です。
お約束のHelloWorldの出力をしてみましょう。以下の文章を打ち込んで、「Alt+1」と入力してみましょう(もしくは、「Quick Build」ボタンを押す)。Latexのビルドが走り、PDFが表示されれば成功です。

===ここから===

\documentclass{article}
\title{Kile Test}
\author{your name}
\date{April 2014}
\begin{document}
\maketitle
Hello world!
\end{document}

===ここまで===

他にもKileには設定を変更することで便利に使える設定項目があったりするのですが、ちょっと分量が多いのでそれはまた次回ということにします。







番外

Ubuntuの公式サイトからUbuntu13.04をダウンロードしようとすると、こんなかんじの募金ページに飛ばされました。力を入れてほしい機能にそれぞれ募金額を割り振ることでその機能に投票できるようです。UbuntuをリリースしているCanonicalは赤字続きということなので、いよいよ本格的に収入源を確保しないとやばいということでしょうか?
もちろん、すべてのスライダーを0$にすれば無料でダウンロード出来ます。
ですがせっかくなので、「Phone and tablet versions of Ubuntu」と「Better support for flavours like Kubuntu, Xubuntu, Lubuntu」に1$ずつ追加して合計18$で募金して来ました。

キャプチャ9


いままで散々無料で遊ばせて使わせていただいたお礼ということで

/usr/bin/startkde が起動しないバグを直す

先日のKDEのアップデート後に、PC起動時に

; unable to launch "/usr/bin/startkde" X session --- "/usr/bin/startkde" not found: falling back to default session.

と出てKDEが起動しない問題が発生していたのですが、解決したのでメモしておきます。
環境は、Kubuntu12.04 KDE4.10.1 backportsリポジトリを使用しています。


ENIMAGE1362814808173.jpg


参考にしたサイトはこちら

http://maybe-linux.blogspot.jp/2013/02/fixing-kde-usrbinstartkde-not-found.html
http://forum.kde.org/viewtopic.php?f=66&t=107798

結果から言えば
kde-workspace-bin というパッケージをインストールすれば治りました

直し方

1.リカバリーモードでの起動

今回はGUIを起動せず、コンソールからPCを操作したいので、リカバリーモードでPCを起動します。
詳しくはこちらをどうぞ

起動時に出てくるGrubメニューからリカバリーモードを選ぶことでリカバリーモードに入ることができます。

2.ネットへの接続

起動後に出てくるリカバリーメニューから「network」を選んで実行します。私の場合は有線なので特になんの設定も必要なくつながりましたが、無線もしくはルーターを介さずに直につないでいる場合はなにか設定が必要かもしれません。

3.kde-workspace-binのインストール

リカバリーメニューに戻ってきたら、今度は「root」メニューを選んでrootでコンソールに入ります。

その後、

apt-get update
apt-get upgrade
apt-get install kde-workspace-bin

を実行します。
最後に

reboot

を実行してシステムを再起動します。


以上で、無事KDEが起動するようになりました。しかし、リカバリーメニューからパスワードも要求されずにroot権限で色々いじれるのはちょっとセキュリティ的に問題があるような気がするのですが大丈夫なんでしょうか?
まあ、ドライブを暗号化していない私が言うことでもないような気もしますけど
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。