2014/08/28

Mac OSX 10.9.4にVirtualBoxとVagrantをインストールして仮想環境を構築した時の備忘録

Mac OSX 10.9.4にVagrantで仮想環境を構築した時の記録です。


Mac OSX 10.9.4で、Vagrantで仮想環境を構築するのは、とても簡単でした。Windows7にVagrantの環境を用意した時は、いくつか詰まったところがありましたが、Macでは、詰まるところなく、簡単に構築できました。

仮想環境とは、マックのマシンの中でCentOSを動かしたりできる環境のことです。Windows上で、Debianを動かすことも出来ます。仮想上で、色々なOSの環境を手軽に用意して検証が出来るので、とても便利です。

まず、VirtualBoxとVagrantをインストールします。


VirtualBox
https://www.virtualbox.org/
VirtualBox-4.3.14-95030-OSX.dmg をダウンロードしてインストールしました。



Vagrant
https://www.vagrantup.com/
vagrant_1.6.3.dmg をダウンロードしてインストールしました。



あとは、すべてターミナルの作業で完結します。


作業用のディレクトリを作成して、その中に移動
MacBookAir:vagrant [user name]$ mkdir centos65
MacBookAir:vagrant [user name]$ cd centos65/

centos-6.5の設定を初期化
MacBookAir:centos65 [user name]$ vagrant init chef/centos-6.5
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

vagrant up で仮想環境を立ち上げるタイミングで、chef版のためか
centos-6.5のダウンロード、仮想環境の設定、仮想環境の起動までしてくれます。
MacBookAir:centos65 [user name]$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'chef/centos-6.5' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
==> default: Loading metadata for box 'chef/centos-6.5'
    default: URL: https://vagrantcloud.com/chef/centos-6.5
==> default: Adding box 'chef/centos-6.5' (v1.0.0) for provider: virtualbox
    default: Downloading: https://vagrantcloud.com/chef/centos-6.5/version/1/provider/virtualbox.box
==> default: Successfully added box 'chef/centos-6.5' (v1.0.0) for 'virtualbox'!
==> default: Importing base box 'chef/centos-6.5'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'chef/centos-6.5' is up to date...
==> default: Setting the name of the VM: centos65_default_1409229402124_23165
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Connection timeout. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
    default: /vagrant => /Users/[user name]/Documents/vagrant/centos65

vagrant ssh で仮想環境に接続します。
MacBookAir:centos65 [user name]$ vagrant ssh
Last login: Fri Mar  7 16:57:20 2014 from 10.0.2.2
[vagrant@localhost ~]$ pwd
/home/vagrant

仮想環境からログアウトします。
[vagrant@localhost ~]$ exit
logout
Connection to 127.0.0.1 closed.
MacBookAir:centos65 [user name]$

vagrant halt で仮想環境を終了させます。
MacBookAir:centos65 [user name]$ vagrant halt
==> default: Attempting graceful shutdown of VM...






2014/08/23

鳴門海峡の渦潮を、うずしおクルーズ観光船「日本丸」で観に行きました

鳴門海峡の渦潮をお盆休みに観に行きました


2014/08/13(水)に鳴門海峡の渦潮を観に行きました。うずしおクルーズ観光船「日本丸」に乗りました。事前に渦潮の観れる期待度の高い出航時間を確認しました。この日は、12:50の出航が渦潮の観ることのできる可能性が高いことがサイトに表示されていましたので、その時刻に間に合うように向かいました。

鳴門海峡渦潮観光ならうずしおクルーズ「咸臨丸」

期待以上の渦潮を観ることが出来ました。





その時の渦潮の様子を撮影した動画をYouTubeにアップしました。



うずしおクルーズ観光船は、「咸臨丸」と「日本丸」がありますが、今回は「日本丸」に乗りました。背景に写っているのが、「日本丸」です。出航時には、スタッフのみなさんが大きな手で、お見送りをしてくれます。子どもたちは、船に乗るだけでもテンションが上がるので、大きな渦潮も観れて満足しました。




「日本丸」を降りて、クルーズ乗り場の横にある足湯に浸かりました。無料で足湯を楽しむことが出来ます。真ん中にある大きな足湯は、円形の足湯で、中央に渦が巻いていました。




2年前の渦潮と比べて


2012/10/27(土)に会社の旅行にて、渦潮を観に来ていました。その時は、うずしおクルーズ観光船「咸臨丸」に乗りました。その時は、潮の状態により、あまり大きな渦潮を観ることは出来ませんでした。その時の渦潮の様子を撮影した写真です。





渦潮のできる仕組み

 

渦潮のできる仕組みが、いまいち良く分かっていなかったので、下記のページで出来る仕組みを確認しました。

2014/08/21

Yeomanのインストール記録 Windows Vista SP2に素の状態からのインストール

Yeomanについて


サイト制作のワークフローを効率的に管理できる Yeoman(ヨーマン)をWindows Vista SP2に素の状態からのインストールした時の記録です。 似たような機能をもった roots というツールがありますが、情報量では、Yeomanが圧倒しています。制作のベースとなるファイル群を生成してくれるジェネレーターもYeomanには沢山アップされています。


The web's scaffolding tool for modern webapps | Yeoman

インストール作業の参考にさせていただいたページ


下記のページの内容を基に、インストール作業をしました。
WindowsでYeoman + Reveal.js

インストール記録


Gitも入っていない状態から始めます。
C:\Users\ariki>git --version 'git' は、
内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ
ファイルとして認識されていません。


Gitのインストール

http://git-scm.com/download/win
Git-1.9.4-preview20140815.exeをインストール
インストール時のオプションで、コマンドプロンプトでも使える設定を選びます。

Gitがインストールされたことを確認
C:\Windows\system32>git --version
git version 1.9.4.msysgit.1
なぜか、管理者モードで起動したコマンドプロンプトで無いと、パス無しで、Gitが起動しませんでした。ユーザーの環境変数、システム環境変数も色々変更して、再起動もしてみましたが、パス無しでは、起動しませんでした。原因は分かっていませんが、続けることに問題はないので、進めます。

 
node.jsのインストール

http://nodejs.org/download/
node-v0.10.31-x86.msiをインストール

node と npm がインストールされたことを確認
C:\Users\ariki>node -v
v0.10.31

C:\Users\ariki>npm -v
1.4.23


Yeoman/Grunt/Bowerのインストール
C:\Windows\system32>npm install -g bower grunt-cli yo

Yeoman/Grunt/Bowerがインストールされたことを確認
C:\Users\ariki>yo --version
1.2.1

C:\Users\ariki>grunt --version
grunt-cli v0.1.13

C:\Users\ariki>bower --version
1.3.9

Reveal.jsのジェネレータのインストール

Reveal.jsというプレゼン用のフレームワークのジェネレーターを入れます。
C:\Windows\system32>npm install -g generator-reveal

プロジェクト作成します


C:\yeoman_test>yo reveal
[?] What are you going to talk about? Reveal.js and Yeoman is Awesomeness
[?] What version should we put in the package.json file? 0.0.0
[?] Do you want to use SASS to create a custom theme? This requires you to have
[?] Do you want to use SASS to create a custom theme? This requires you to haveRuby and Sass installed. Yes
[?] Do you want to deploy your presentation to Github Pages? This requires an em
[?] Do you want to deploy your presentation to Github Pages? This requires an empty Github repository. No


Sassを使って、Githubにはdeployしない設定を選択しました。


Gruntでサーバを起動します
C:\yeoman_test>grunt server
Running "server" task

Running "buildIndex" task

Running "sass:theme" (sass) task
Warning:
You need to have Ruby and Sass installed and in your PATH for this task to work.

More info: https://github.com/gruntjs/grunt-contrib-sass
 Use --force to continue.

Aborted due to warnings.
すると、RubyもSassもありませんよ とアラートが出ます。RubyとSassをインストールします。

Rubyのインストール

http://rubyinstaller.org/downloads/
rubyinstaller-2.0.0-p481.exe をインストール
C:\yeoman_test>ruby -v
ruby 2.0.0p481 (2014-05-08) [i386-mingw32]


Sassのインストール
C:\yeoman_test>gem install sass
Fetching: sass-3.4.0.gem (100%)
Successfully installed sass-3.4.0
Parsing documentation for sass-3.4.0
Installing ri documentation for sass-3.4.0
1 gem installed

再度、プロジェクトを作成して、Gruntでサーバを起動します
CC:\yeoman_test>yo reveal

C:\yeoman_test>grunt server
Running "server" task

Running "buildIndex" task

Running "sass:theme" (sass) task
File css/theme.css created.

Running "connect:livereload" (connect) task
Started connect web server on http://localhost:9000

Running "watch" task
Waiting...

ブラウザが表示されます。


スライドショーの追加

別の管理者権限コマンドプロンプトを起動して、スライドを追加するコマンドを実行します。
CC:\yeoman_test>yo reveal:slide "slide title2" --markdown
     info Using Markdown.
     info Appending slides/slide-title2.md to slides/list.json.
   create slides\slide-title2.md

Watch(監視状態)のコマンドプロンプトで自動で処理が動きます。
>> File "slides\list.json" changed.
>> File "slides\slide-title2.md" added.
Running "buildIndex" task

Done, without errors.
Completed in 1.706s at Thu Aug 21 2014 16:28:07 GMT+0900 (東京 (標準時)) - Waiting...
>> File "index.html" changed.
Completed in 0.000s at Thu Aug 21 2014 16:28:07 GMT+0900 (東京 (標準時)) - Waiting...

ブラウザでスライドが追加されていることが確認できます。



公開するHTMLを生成します。
C:\yeoman_test>grunt dist

distフォルダに出力されたフォルダを公開するサーバにアップします。
完成したページはこちら

簡単にベースとなるテンプレートのファイル群が出来て、自動コンパイル、自動プレビューが出来るので、制作効率はとても良いと思います。

2014/08/03

スクレイピングとWebクローリングの出来るフレームワークScrapyをCentOS6で試してみました。

Scrapyは、ウェブサイトをクロールし、そのページから構造化データの抽出が出来ます。高速で高レベルの画面スクレイピング、Webクローリングフレームワークです。Scrapyは全てPythonで書かれています。


http://scrapy.org/

CentOS6にScrapyの環境を用意して、下記の動画のチュートリアルを試しました。


ソースは、下記のページで公開されています。 
Scraping Web Pages With Scrapy 

 このソースで行っているのは、Craigslistの「NPO」のカテゴリで表示されているリストのタイトルと、そのURLを取得するというものです。

Craigslistとは - IT用語辞典 e-Words
実際に処理をする対象のページ 

データを実際に取得して格納をするスクリプト   
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from craigslist_sample.items import CraigslistSampleItem

class MySpider(BaseSpider):
  name = "craig"
  allowed_domains = ["craigslist.org"]
  start_urls = ["http://sfbay.craigslist.org/npo/"]

  def parse(self, response):
      hxs = HtmlXPathSelector(response)
      titles = hxs.select("//span[@class='pl']")
      items = []
      for titles in titles:
          item = CraigslistSampleItem()
          item ["title"] = titles.select("a/text()").extract()
          item ["link"] = titles.select("a/@href").extract()
          items.append(item)
      return items

スクリプトを動かして結果をCSVに保存します。
$ scrapy crawl craig -o items.csv -t csv

2014/08/03 21:20 に実行して保存されたCSVの中身を確認
$ more items.csv
link,title
/sfc/npo/4599976929.html,✦FULL-TIME AND PART-TIME JOBS! EARN AVG OF $11-16/HR
/eby/npo/4599904588.html,█ CAMPAIGN STAFF POSITION to FIGHT FAC
/eby/npo/4599659276.html,"!!!What's in Your Water? Clean Water Action, Now Hiring!!"
/scz/npo/4599590859.html,*I'm an ACTIVIST. What Kind of Progressive Are You? Click To Find Out!
/eby/npo/4599575085.html,▲I'm an ACTIVIST. What Kind of Progressive Are You? Click To Find Out!
/sfc/npo/4599499777.html,FULL-TIME AND PART-TIME JOBS WITH CALPIRG! EARN AVG OF $11-16/HR
/eby/npo/4599307693.html,Join our winning team of rad activists!  PT phone work 12$ hr
/sfc/npo/4599088866.html,Resident Services Coordinator
/sfc/npo/4599069160.html,Stonestown Family YMCA - After School Program Leader
/eby/npo/4599024935.html,▲LGBT EQUALITY SUMMER JOBS W/ADVANCEMENT OPPORTUNITIES  $4700-7500
以下続く

Scrapyを使えば、クローリング、収集したデータの処理、整形まで、複雑な処理が簡単に出来そうです。

MacOS X(10.9.4)でのターミナルコマンドでの読み上げを試してみました。

MacOS Xでは、ターミナルコマンドでテキストの読み上げが出来ます。使い方はとても簡単です。ターミナルを起動して、下記のテキストをペーストするだけです。

say hello world

「say」というコマンドに、読み上げたいテキストを渡してやるだけです。 読み上げる音声データは、複数人のものが用意されています。男性、女性と複数の音声データがあります。どの音声データを使うかを指定して読み上げることが出来ます。「Agnes」という女性の声で読み上げたい時は、「-v Agnes」というオプションを付けます。

say -v Agnes hello world

日本語の読み上げも可能です。但し、デフォルトでは日本語は利用できないので、設定が必要です。「システム環境設定」---「音声入力と読み上げ」を選びます。「テキスト読み上げ」の項目から「システムの音声」のプルダウンを押して、プルダウンの一番下に表示される「カスタマイズ」を選びます。


日本語の音声としては、「Kyoko」「Otoya」の2種類が用意されています。使用するには、日本語音声データのダウンロードが必要です。


用意されている音声の種類を確認するには、「-v ?」オプションを付けて「say」コマンドを実行します。

$ say -v ?
Agnes               en_US    # Isn't it nice to have a computer that will talk to you?
Albert              en_US    #  I have a frog in my throat. No, I mean a real frog!
Alex                en_US    # Most people recognize me by my voice.
Bad News            en_US    # The light you see at the end of the tunnel is the headlamp of a fast approaching train.
Bahh                en_US    # Do not pull the wool over my eyes.
Bells               en_US    # Time flies when you are having fun.
Boing               en_US    # Spring has sprung, fall has fell, winter's here and it's colder than usual.
Bruce               en_US    # I sure like being inside this fancy computer
Bubbles             en_US    # Pull the plug! I'm drowning!
Cellos              en_US    # Doo da doo da dum dee dee doodly doo dum dum dum doo da doo da doo da doo da doo da doo da doo
Deranged            en_US    # I need to go on a really long vacation.
Fred                en_US    # I sure like being inside this fancy computer
Good News           en_US    # Congratulations you just won the sweepstakes and you don't have to pay income tax again.
Hysterical          en_US    # Please stop tickling me!
Junior              en_US    # My favorite food is pizza.
Kathy               en_US    # Isn't it nice to have a computer that will talk to you?
Pipe Organ          en_US    # We must rejoice in this morbid voice.
Princess            en_US    # When I grow up I'm going to be a scientist.
Ralph               en_US    # The sum of the squares of the legs of a right triangle is equal to the square of the hypotenuse.
Trinoids            en_US    # We cannot communicate with these carbon units.
Vicki               en_US    # Isn't it nice to have a computer that will talk to you?
Victoria            en_US    # Isn't it nice to have a computer that will talk to you?
Whisper             en_US    # Pssssst, hey you, Yeah you, Who do ya think I'm talking to, the mouse?
Zarvox              en_US    # That looks like a peaceful planet.

読み上げたいテキストは、別ファイルを読み込みことも可能です。「-f」オプションを付けて、ファイル名を渡してやると、用意したテキストファイルを読み上げます。

$ say -v kyoko -f sample.txt

読み上げた内容を音声ファイルに保存することも可能です。「-o」オプションを付けて、保存名を渡してやると、読み上げた内容が音声データとして保存されます。

$ say -v kyoko -f sample.txt -o result.aiff

英語と日本語を読み上げたサンプルをYouTubeにアップしました。

「スタイルズ荘の怪事件(アガサ クリスティ)」の導入部分のMacOS X(10.9.4)ターミナルでの読み上げ

say -v
Agnes The intense interest aroused in the public by what was known at 
the time as "The Styles Case" has now somewhat subsided. Nevertheless, 
in view of the world-wide notoriety which attended it, I have been asked, 
both by my friend Poirot and the family themselves, to write an account 
of the whole story. This, we trust, will effectually silence the 
sensational rumours which still persist. The Mysterious Affair at 
Styles by Agatha ChristieThe Mysterious Affair at Styles by Agatha Christie 
-o The_Mysterious_Affair_at_Styles.aiff


「羅生門 (芥川 龍之介)」の導入部分のMacOS X(10.9.4)ターミナルでの読み上げ

say -v kyoko 
"ある日の暮方の事である。一人の下人(げにん)が、羅生門(らしょうもん)
の下で雨やみを待っていた。
 広い門の下には、この男のほかに誰もいない。ただ、所々丹塗(にぬり)の
剥(は)げた、大きな円柱(まるばしら)に、蟋蟀(きりぎりす)が一匹
とまっている。羅生門が、朱雀大路(すざくおおじ)にある以上は、
この男のほかにも、雨やみをする市女笠(いちめがさ)や揉烏帽子(もみえぼし)が、
もう二三人はありそうなものである。それが、この男のほかには誰もいない。" 
-o rashoumon.aiff

2014/07/21

ローラーリストボールIMC-59の回し方を撮影しました。

上の子の握力強化のために、ローラーリストボールIMC-59を購入してみました。握力を鍛えるといったら、ハンドグリップぐらいしか思いつかなかったのですが、ハンドグリップだと単調な動きなので、飽きるのではないかと思いました。調べてみると、ローラーリストボールなるものがあり、手首・前腕部・指の筋肉・握力を鍛えることができるとあります。手に持った感触が面白いとのことなので、楽しめれば続くかと思い購入しました。



黄色い球が、青い殻の中に入っている構造のものです。 付属の赤い紐で、中の黄色い球を回転させます。黄色い球の穴に、赤い紐の端をいれて、球を回転させながら紐を巻きつけていきます。紐を思いっきり引っ張ると、黄色い球が回転をします。黄色い球の回転は、回転軸が移動するようで、重心がぐるぐると移動します。手の中で重心がぐるぐると移動する感覚が、確かに面白く、不思議な感覚です。

ローラーリストボールIMC-59を回す様子を動画で撮影しました。

回す感覚が楽しいので、下の子も一緒になって、 毎日、回しています。続けて何かしら効果が出ればいいですが、回すこと自体が結構楽しいので、それだけでもいいかなと思っています。

2014/06/15

PC DEPOT 岡山本店の自作組み立てキットを使って、自宅のパソコンを自作しました。

自宅でメインで使用しているパソコンが、4年経ち、スペックがきつくなってきました。4年前も色々検討して、結局自作することにしましたが、今回は作るのが面倒なので、出来れば、パーツのスペックアップでなんとかならないかとならないかと思っていました。

4年前の記事
自宅のパソコン Windows7マシンの購入を検討中 その11 購入しました。

しかし、パソコンショップで、色々話を聞くと、4年前のパーツがベースでは、スペックアップには限界があり、大した改善にならないことがわかったので、今回も自作することにしました。 しかし、パーツを一つ一つ選んで、パーツ同士の相性を調べるのも面倒なので、パソコンショップで用意されている自作キットにしました。自分で組み立てる分、同スペックのものより、幾分予算を圧縮出来ます。

PC DEPOT 岡山本店で、用意されている自作キットを購入しました。メモリの容量は8GB
だったので、16GBに変更しましたが、その他のスペックは用意されたままのものです。



    • CPU : Intel Core i7-4790 3.6GH 8M Haswell Refresh
    • Motherboard : GYGABYTE GA-H97-D3H
    • Memory : Silicon Power SP016GBLTU160N22 [DDR3 PC3-12800 8GB 2枚組]
    • HDD : WESTERN DIGITAL WD10EZRX [1TB SATA600]
    • DVD Drive : LITEON iHAS324-17
    • Graphicboard : ZOTAC GeForce GTX 760 4GB
    • Case : Zalman Z3 Plus
    • 電源 : FSP RA-650
    • OS : Windows7 Home Premium 64bit SP1

    購入の際、「このキットは、ドライブまわりのスペースがきついので、組み立てが少し大変です。」と教えていただいていました。そのとおり、場所によって、ねじ止めが難しい箇所がいくつかありました。ファンが4つもついていますが、思ったり静かなパソコンでした。





    人気の投稿 (過去 30 日間)