Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Unix と Windows 世界の融合<br />みむら ( @mimura1133 )<br />http://mimumimu.net/<br />Title : Windows + SUA / @mimura1133<br />1<br />
自己紹介<br />みむら / 三村 聡志 (@mimura1133)<br />Website : http://mimumimu.net/<br />Windowsと Linux を使う。<br />Windows Phone 7 もいじる...
お品書き<br />自己紹介<br />Subsystems for UNIX Application の紹介<br />インストール方法<br />利用方法<br />GnuWin32 でさくっと Linux のコマンドを入れるには。<br ...
Windows と UNIX の融合<br />Title : Windows + SUA / @mimura1133<br />4<br />
Windows と UNIX の融合<br />Windows 使いやすいよね。<br />UNIX も使いやすいよね。<br />メインが Windows でも、UNIX のコマンドを使いたい。<br />UNIXのプログラムをそのままビルド...
It Works!<br />Title : Windows + SUA / @mimura1133<br />6<br />
出来ること<br />UNIX のコマンドを Windows で使う。<br />ビルドすれば、UNIX 向けプログラムが走る。<br />基本的なコマンドについては、Windows のコマンドプロンプトからも使えるようになる。<br />各種...
・・・Cygwin でいいんじゃないの?<br />より高速に動く  (Ruby の configure)<br />Title : Windows + SUA / @mimura1133<br />8<br />6:07<br />1:12<...
・・・Cygwin でいいんじゃないの?<br />よりネイティブに動く<br />Title : Windows + SUA / @mimura1133<br />9<br />UNIX Application<br />Cygwin<br ...
SUA の良い点、悪い点<br />良い点:<br />Win32API に頼っていないため、Windows で未サポートの機能を実現することが出来る。<br />高速に動作する。<br />コマンドプロンプトからもUNIX コマンドを叩ける。...
必要環境<br />Windows Vista, 7/ Ultimate, Enterprise<br />その他、Windows Server にもある。<br />無い場合:<br />DreamSparkの Windows Server<...
インストール手法<br />Title : Windows + SUA / @mimura1133<br />12<br />
インストール。<br />「プログラムと機能」より「Windows の機能の有効化または無効化」を選択。<br />「UNIX ベースアプリケーション用サブシステム」を選び、OK を押す。<br />Title : Windows + SUA ...
インストール<br />スタートメニューより、「UNIX ベース…」をクリック<br />表示されたウェブサイトより、環境に合った物をダウンロード<br />インストール<br />Title : Windows + SUA / @mimura...
インストール<br />http://www.suacommunity.com/SUA.aspx上記URL にアクセスし、「Complete Toolset」を“ドライブ直下に”ダウンロード<br />Title : Windows + SUA...
インストール<br />コマンドプロンプトを管理者権限で立ち上げる。<br />コマンド入力でセットアップを開始する。<br />Title : Windows + SUA / @mimura1133<br />16<br />
利用方法<br />Title : Windows + SUA / @mimura1133<br />17<br />
使用方法<br />スタートメニューの Bash Shell を立ち上げる。<br />Bash Shell が立ち上がるので、遊ぶ。<br />Title : Windows + SUA / @mimura1133<br />18<br />
使用方法 – SUA から Windows<br />Bash Shell から Windows コマンドを叩ける。<br />メモ帳などのプログラムも起動できる。<br />/dev/fs/[ドライブレター]/  でWindows のファイル...
使用方法 Windows から SUA<br />grep, cat, ls, vi などのコマンドが コマンドプロンプトから使える。<br />C:WindowsSUA 以下に SUA のファイルがある。<br />UNIX のプログラムを直...
使用方法 – コマンドの追加と更新<br />[ pkg_update –L (コマンド名) ] で追加。<br />[ pkg_update –La ] で、全部更新。<br />[ pkg_info ] で パッケージ情報および一覧が出せる...
活用方法<br />su / sudoにて Administrator 権限になれるので、管理者権限でプロセスを動かしたい時に楽にできる。※追記:Windows だと runasコマンドが存在する。<br />処理は UNIX編集は notep...
活用方法<br />特定の文字列が入ったファイルを探す。<br />Ex.)find . –name “*.c” | xargsgrep “WM_SETFONT”<br />Subversion や gitによるソースコード管理。<br />T...
活用方法<br />UNIX のプログラムを OllyDbgでデバッグする。<br />Title : Windows + SUA / @mimura1133<br />24<br />
活用方法<br />/etc/init.d/sshd start<br />SSH デーモンを立ち上げて、SFTP とかしてみる。<br />Windows をリモート制御してみる。<br />Xのアプリケーションで何かあそぶ。<br />Ti...
活用方法<br />Python とかのウェブサービス開発してみる。<br />SUA なので、Windows 向けの開発でなく、普通の UNIX 上で動くのと同じ感覚。<br />ssh [username]@[server-address]...
注意点:<br />Administrator が無効、もしくはパスワード未設定だと、su / sudoで管理者権限にはなれない。<br />Title : Windows + SUA / @mimura1133<br />27<br />
SUAほど大がかりなものはしたくない。<br />GnuWin32 でコマンドだけ、さくっと導入<br />Title : Windows + SUA / @mimura1133<br />28<br />
GnuWin32の導入<br />SUA 入れるまでの大がかりなことはしたくない。<br />そもそも、Ultimate, Enterprise 持ってない。<br />でも、Linux に標準で入ってる、UNIX 系のコマンドはほしい。<br...
GnuWin32の導入<br />http://sourceforge.net/projects/getgnuwin32/上記URL からダウンロード。<br />download.bat の 158行目を<br />if .%GNUWIN32...
GnuWin32の導入<br />コマンドプロンプトから、install.bat C:GnuWin32でインストール。<br />システム変数のPathにC:GnuWin32を追記。<br />Title : Windows + SUA / @...
GnuWin32の導入<br />インストール完了。<br />SUAやCygwin を使わずに、さくっと追加したい方向け。<br />Title : Windows + SUA / @mimura1133<br />32<br />
SUAでちょっと変態行為。<br />Title : Windows + SUA / @mimura1133<br />33<br />
普通に SUA 使うだけってつまらない<br />どうせやるなら変態的に。<br />見せるときに、「ほら、すげーだろ」したい。<br />sl走らせても面白いけどさぁ。<br />パッケージ管理とかどうなんだろう。<br />Title : ...
そういえば。<br />先日、経産省主催のセキュリティ&プログラミングキャンプ2011に参加してきました。<br />NHK のカメラにもちょっと映り込みました。<br />そういえば、最後の写真撮影の時のかけ声なんだっけ。<br />Titl...
SUA で emegeしたい!<br />#gentooinstallbattleとかあるし。<br />gentooユーザ に片足入れられるし。<br />SUA もやっぱり ソースからビルドした方が楽。<br />emerge もソースから...
Gentoo Prefix をインストール<br />Title : Windows + SUA / @mimura1133<br />37<br />
Gentoo Prefix をインストール<br />Isoをダウンロードしてマウント。セットアップを開始する。<br />Title : Windows + SUA / @mimura1133<br />38<br />
Gentoo Prefix をインストール<br />実は、Microsoft 社のウェブサイトや、SUA Community からいろいろ取ってこなくてもいい。<br />Windows 側の機能を有効にしておくだけで、楽ちんセットアップ。<...
Gentoo Prefix をインストール<br />セットアップが完了したら、C:Windowsposix.exe /u /c /opt/gentoo/bin/bash –l上記のパスへのショートカットを作成する。<br />Bash が立ち...
Gentoo Prefix を使ってみる。<br />Title : Windows + SUA / @mimura1133<br />41<br />
Gentoo Prefix を使ってみる。<br />/opt/gentoo/etc/make.confを、国内ミラーに行くように変更するといい。<br />あとはひたすらemerge する。<br />Title : Windows + SU...
Gentoo Prefix について。<br />コマンド一つでソフトウェアを入れられる。<br />依存関係も自動的に解決してくれる。<br />・・マスク・・?<br />意外とうまく動かない・・?<br />・・・流石 Experimen...
Python + Visual Studio + SUA<br />Title : Windows + SUA / @mimura1133<br />44<br />
Python + Visual Studio + SUA<br />PTVS ( http://pytools.codeplex.com/ )<br />Visual Studio <br />この2つを使って、快適 Python アプリケーシ...
Python + Visual Studio + SUA<br />こんなコードを書く。<br />Windows の Python インタプリタとして、追加する。<br />Title : Windows + SUA / @mimura113...
Python + Visual Studio + SUA<br />さっきのプログラムをインタプリタとして追加。<br />Python アプリケーションを書く。<br />実行する。<br />Title : Windows + SUA / ...
Python + Visual Studio + SUA<br />IntelliSense が効く<br />デバッグ可能<br />実行は UNIX<br />出力結果は Visual Studio に返ってくる。<br />Title :...
まとめ<br />Title : Windows + SUA / @mimura1133<br />49<br />
まとめ<br />Windows を主に使うけど、UNIX をたまに使う人向け。<br />UNIX 環境が欲しい人 : SUA, Cygwin<br />コマンドだけ欲しい人 : GnuWin32<br />SUAは、Cygwin よりネイテ...
宣伝<br />今回紹介した内容は、http://mimumimu.net/にて公開しています。<br />Twitter や Facebook にもアカウント登録済みなので、SUA や Windows API を使った開発、C# や Wind...
Unix と Windows 世界の融合<br />みむら ( @mimura1133 )<br />http://mimumimu.net/<br />Title : Windows + SUA / @mimura1133<br />52<b...
Upcoming SlideShare
Loading in …5
×

Unix と windows 世界の融合

8,096 views

Published on

2011/9/3 開催 プログラミング生放送勉強会 第10回@品川
http://bit.ly/pronama10

Unix と Windows 世界の融合

SUA (Subsystem for Unix Application) や、GnuWin32 を組み込んで、Windows の世界にも Unix の世界の風をながします。

Movie : http://www.nicovideo.jp/watch/sm15540689

Published in: Technology
  • Be the first to comment

Unix と windows 世界の融合

  1. 1. Unix と Windows 世界の融合<br />みむら ( @mimura1133 )<br />http://mimumimu.net/<br />Title : Windows + SUA / @mimura1133<br />1<br />
  2. 2. 自己紹介<br />みむら / 三村 聡志 (@mimura1133)<br />Website : http://mimumimu.net/<br />Windowsと Linux を使う。<br />Windows Phone 7 もいじる。<br />C と C++ と C# と時々 HSP<br />Python だれか教えて下さい。<br />最近は IDA Pro と OllyDbgでのバイナリ眺めも趣味。<br />Title : Windows + SUA / @mimura1133<br />2<br />
  3. 3. お品書き<br />自己紹介<br />Subsystems for UNIX Application の紹介<br />インストール方法<br />利用方法<br />GnuWin32 でさくっと Linux のコマンドを入れるには。<br />SUAによる、ちょっと変態的なこと。<br />Title : Windows + SUA / @mimura1133<br />3<br />
  4. 4. Windows と UNIX の融合<br />Title : Windows + SUA / @mimura1133<br />4<br />
  5. 5. Windows と UNIX の融合<br />Windows 使いやすいよね。<br />UNIX も使いやすいよね。<br />メインが Windows でも、UNIX のコマンドを使いたい。<br />UNIXのプログラムをそのままビルドできると良いよね。<br />Title : Windows + SUA / @mimura1133<br />5<br />Subsystem for Unix Application<br />
  6. 6. It Works!<br />Title : Windows + SUA / @mimura1133<br />6<br />
  7. 7. 出来ること<br />UNIX のコマンドを Windows で使う。<br />ビルドすれば、UNIX 向けプログラムが走る。<br />基本的なコマンドについては、Windows のコマンドプロンプトからも使えるようになる。<br />各種 Prefix を入れる事により、apt-get や emerge が使える。<br />Title : Windows + SUA / @mimura1133<br />7<br />
  8. 8. ・・・Cygwin でいいんじゃないの?<br />より高速に動く (Ruby の configure)<br />Title : Windows + SUA / @mimura1133<br />8<br />6:07<br />1:12<br />
  9. 9. ・・・Cygwin でいいんじゃないの?<br />よりネイティブに動く<br />Title : Windows + SUA / @mimura1133<br />9<br />UNIX Application<br />Cygwin<br />SUASubsystem for UNIX-based Applications<br />Windows Subsystem<br />Windows Kernel<br />Hardware Abstraction Layer (HAL)<br />参照: http://9xsjxg.blu.livefilestore.com/y1puBLfHJPlgyPPUxxJOMQSoWHKXkocmKAz-SgkvmFbzrF-5gAqsQ0lPndBhCAy0x5IU8Ad5oOZylnlfNm9c-EjsA/sua.png<br />
  10. 10. SUA の良い点、悪い点<br />良い点:<br />Win32API に頼っていないため、Windows で未サポートの機能を実現することが出来る。<br />高速に動作する。<br />コマンドプロンプトからもUNIX コマンドを叩ける。<br />パッケージ管理ソフトが付いてくる。<br />インストール時に変なファイルが作られない。<br />悪い点:<br />Cygwin のように、多くのライブラリやプログラムが最初からあるわけではない。<br />ライブラリが結構古い。<br />Windows 起動時に cronや inetdが走り出す。<br />Windows Vista, 7 の Ultimate, Enterprise 版のみ (XP は SFU)<br />Title : Windows + SUA / @mimura1133<br />10<br />
  11. 11. 必要環境<br />Windows Vista, 7/ Ultimate, Enterprise<br />その他、Windows Server にもある。<br />無い場合:<br />DreamSparkの Windows Server<br />MSDN AA の Windows Server / Windows 7 Enterprise<br />MSDN Subscription<br /> などで準備。<br />インストール先は C ドライブ固定なので、容量をあけておく。<br />Title : Windows + SUA / @mimura1133<br />11<br />
  12. 12. インストール手法<br />Title : Windows + SUA / @mimura1133<br />12<br />
  13. 13. インストール。<br />「プログラムと機能」より「Windows の機能の有効化または無効化」を選択。<br />「UNIX ベースアプリケーション用サブシステム」を選び、OK を押す。<br />Title : Windows + SUA / @mimura1133<br />13<br />
  14. 14. インストール<br />スタートメニューより、「UNIX ベース…」をクリック<br />表示されたウェブサイトより、環境に合った物をダウンロード<br />インストール<br />Title : Windows + SUA / @mimura1133<br />14<br />
  15. 15. インストール<br />http://www.suacommunity.com/SUA.aspx上記URL にアクセスし、「Complete Toolset」を“ドライブ直下に”ダウンロード<br />Title : Windows + SUA / @mimura1133<br />15<br />
  16. 16. インストール<br />コマンドプロンプトを管理者権限で立ち上げる。<br />コマンド入力でセットアップを開始する。<br />Title : Windows + SUA / @mimura1133<br />16<br />
  17. 17. 利用方法<br />Title : Windows + SUA / @mimura1133<br />17<br />
  18. 18. 使用方法<br />スタートメニューの Bash Shell を立ち上げる。<br />Bash Shell が立ち上がるので、遊ぶ。<br />Title : Windows + SUA / @mimura1133<br />18<br />
  19. 19. 使用方法 – SUA から Windows<br />Bash Shell から Windows コマンドを叩ける。<br />メモ帳などのプログラムも起動できる。<br />/dev/fs/[ドライブレター]/ でWindows のファイルへアクセスできる。<br />「~」は、%userprofile% になってる。<br />Title : Windows + SUA / @mimura1133<br />19<br />
  20. 20. 使用方法 Windows から SUA<br />grep, cat, ls, vi などのコマンドが コマンドプロンプトから使える。<br />C:WindowsSUA 以下に SUA のファイルがある。<br />UNIX のプログラムを直接実行できる。<br />ex.).find . | grep f<br />Title : Windows + SUA / @mimura1133<br />20<br />
  21. 21. 使用方法 – コマンドの追加と更新<br />[ pkg_update –L (コマンド名) ] で追加。<br />[ pkg_update –La ] で、全部更新。<br />[ pkg_info ] で パッケージ情報および一覧が出せる。<br />[ pkg_delete] でパッケージの削除ができる。<br />詳細な使い方は、 BSD 系ディストリビューションの説明を見ると良いかもしれません。 http://www.openbsd.org/faq/faq15.html<br />Title : Windows + SUA / @mimura1133<br />21<br />
  22. 22. 活用方法<br />su / sudoにて Administrator 権限になれるので、管理者権限でプロセスを動かしたい時に楽にできる。※追記:Windows だと runasコマンドが存在する。<br />処理は UNIX編集は notepad, Visual Studio を使うというのが可能<br />Title : Windows + SUA / @mimura1133<br />22<br />
  23. 23. 活用方法<br />特定の文字列が入ったファイルを探す。<br />Ex.)find . –name “*.c” | xargsgrep “WM_SETFONT”<br />Subversion や gitによるソースコード管理。<br />Title : Windows + SUA / @mimura1133<br />23<br />
  24. 24. 活用方法<br />UNIX のプログラムを OllyDbgでデバッグする。<br />Title : Windows + SUA / @mimura1133<br />24<br />
  25. 25. 活用方法<br />/etc/init.d/sshd start<br />SSH デーモンを立ち上げて、SFTP とかしてみる。<br />Windows をリモート制御してみる。<br />Xのアプリケーションで何かあそぶ。<br />Title : Windows + SUA / @mimura1133<br />25<br />
  26. 26. 活用方法<br />Python とかのウェブサービス開発してみる。<br />SUA なので、Windows 向けの開発でなく、普通の UNIX 上で動くのと同じ感覚。<br />ssh [username]@[server-address] でSSH クライアントとして使う。<br />Title : Windows + SUA / @mimura1133<br />26<br />
  27. 27. 注意点:<br />Administrator が無効、もしくはパスワード未設定だと、su / sudoで管理者権限にはなれない。<br />Title : Windows + SUA / @mimura1133<br />27<br />
  28. 28. SUAほど大がかりなものはしたくない。<br />GnuWin32 でコマンドだけ、さくっと導入<br />Title : Windows + SUA / @mimura1133<br />28<br />
  29. 29. GnuWin32の導入<br />SUA 入れるまでの大がかりなことはしたくない。<br />そもそも、Ultimate, Enterprise 持ってない。<br />でも、Linux に標準で入ってる、UNIX 系のコマンドはほしい。<br />Title : Windows + SUA / @mimura1133<br />29<br />GnuWin32<br />
  30. 30. GnuWin32の導入<br />http://sourceforge.net/projects/getgnuwin32/上記URL からダウンロード。<br />download.bat の 158行目を<br />if .%GNUWIN32_MIRROR%==. set GNUWIN32_MIRROR=iwebvoxelからif .%GNUWIN32_MIRROR%==. set GNUWIN32_MIRROR=jaistへ変更する。(ミラーを JAIST へ変更する。<br />Title : Windows + SUA / @mimura1133<br />30<br />
  31. 31. GnuWin32の導入<br />コマンドプロンプトから、install.bat C:GnuWin32でインストール。<br />システム変数のPathにC:GnuWin32を追記。<br />Title : Windows + SUA / @mimura1133<br />31<br />
  32. 32. GnuWin32の導入<br />インストール完了。<br />SUAやCygwin を使わずに、さくっと追加したい方向け。<br />Title : Windows + SUA / @mimura1133<br />32<br />
  33. 33. SUAでちょっと変態行為。<br />Title : Windows + SUA / @mimura1133<br />33<br />
  34. 34. 普通に SUA 使うだけってつまらない<br />どうせやるなら変態的に。<br />見せるときに、「ほら、すげーだろ」したい。<br />sl走らせても面白いけどさぁ。<br />パッケージ管理とかどうなんだろう。<br />Title : Windows + SUA / @mimura1133<br />34<br />
  35. 35. そういえば。<br />先日、経産省主催のセキュリティ&プログラミングキャンプ2011に参加してきました。<br />NHK のカメラにもちょっと映り込みました。<br />そういえば、最後の写真撮影の時のかけ声なんだっけ。<br />Title : Windows + SUA / @mimura1133<br />35<br />はい、<br />gentoo<br />
  36. 36. SUA で emegeしたい!<br />#gentooinstallbattleとかあるし。<br />gentooユーザ に片足入れられるし。<br />SUA もやっぱり ソースからビルドした方が楽。<br />emerge もソースからビルド。やったね!<br />ftp://ftp.iij.ad.jp/pub/linux/gentoo/experimental/prefix/x86-interix/20110622/gentoo Prefix を入れて、Windows + SUA + Gentoo を!<br />Title : Windows + SUA / @mimura1133<br />36<br />
  37. 37. Gentoo Prefix をインストール<br />Title : Windows + SUA / @mimura1133<br />37<br />
  38. 38. Gentoo Prefix をインストール<br />Isoをダウンロードしてマウント。セットアップを開始する。<br />Title : Windows + SUA / @mimura1133<br />38<br />
  39. 39. Gentoo Prefix をインストール<br />実は、Microsoft 社のウェブサイトや、SUA Community からいろいろ取ってこなくてもいい。<br />Windows 側の機能を有効にしておくだけで、楽ちんセットアップ。<br />Title : Windows + SUA / @mimura1133<br />39<br />
  40. 40. Gentoo Prefix をインストール<br />セットアップが完了したら、C:Windowsposix.exe /u /c /opt/gentoo/bin/bash –l上記のパスへのショートカットを作成する。<br />Bash が立ち上がる。<br />Title : Windows + SUA / @mimura1133<br />40<br />
  41. 41. Gentoo Prefix を使ってみる。<br />Title : Windows + SUA / @mimura1133<br />41<br />
  42. 42. Gentoo Prefix を使ってみる。<br />/opt/gentoo/etc/make.confを、国内ミラーに行くように変更するといい。<br />あとはひたすらemerge する。<br />Title : Windows + SUA / @mimura1133<br />42<br />
  43. 43. Gentoo Prefix について。<br />コマンド一つでソフトウェアを入れられる。<br />依存関係も自動的に解決してくれる。<br />・・マスク・・?<br />意外とうまく動かない・・?<br />・・・流石 Experimental なだけあるなぁ<br />Gentoo-erな人か、挑戦的な人じゃないと・・?<br />でも試してみる価値は十分にありそう。<br />Title : Windows + SUA / @mimura1133<br />43<br />
  44. 44. Python + Visual Studio + SUA<br />Title : Windows + SUA / @mimura1133<br />44<br />
  45. 45. Python + Visual Studio + SUA<br />PTVS ( http://pytools.codeplex.com/ )<br />Visual Studio <br />この2つを使って、快適 Python アプリケーション開発。<br />実行は SUA 上のPython<br />Title : Windows + SUA / @mimura1133<br />45<br />
  46. 46. Python + Visual Studio + SUA<br />こんなコードを書く。<br />Windows の Python インタプリタとして、追加する。<br />Title : Windows + SUA / @mimura1133<br />46<br />Download : https://github.com/mimura1133/mm_posix_python_call<br />
  47. 47. Python + Visual Studio + SUA<br />さっきのプログラムをインタプリタとして追加。<br />Python アプリケーションを書く。<br />実行する。<br />Title : Windows + SUA / @mimura1133<br />47<br />
  48. 48. Python + Visual Studio + SUA<br />IntelliSense が効く<br />デバッグ可能<br />実行は UNIX<br />出力結果は Visual Studio に返ってくる。<br />Title : Windows + SUA / @mimura1133<br />48<br />
  49. 49. まとめ<br />Title : Windows + SUA / @mimura1133<br />49<br />
  50. 50. まとめ<br />Windows を主に使うけど、UNIX をたまに使う人向け。<br />UNIX 環境が欲しい人 : SUA, Cygwin<br />コマンドだけ欲しい人 : GnuWin32<br />SUAは、Cygwin よりネイティブに動いて、早い。<br />でも、ライブラリが古かったり、揃ってなかったりで、どちらが良いとは一概に言えない。<br />Windows と UNIX の協調ということで、変態的なことがいっぱい出来る。<br />仲根かなはるさんの構築したサーバに、SUA から SSH で接続して、遊ぶのもいいかも!<br />Title : Windows + SUA / @mimura1133<br />50<br />
  51. 51. 宣伝<br />今回紹介した内容は、http://mimumimu.net/にて公開しています。<br />Twitter や Facebook にもアカウント登録済みなので、SUA や Windows API を使った開発、C# や Windows Phone 7 に興味がある人は是非交流しましょう!<br />Title : Windows + SUA / @mimura1133<br />51<br />
  52. 52. Unix と Windows 世界の融合<br />みむら ( @mimura1133 )<br />http://mimumimu.net/<br />Title : Windows + SUA / @mimura1133<br />52<br />

×