Pippi Life

主に仕事に関連するITのことや、プライベートもちょいちょい書きます。

Rasbian入れたら最初にすること

久しぶりの投稿。 Rasberry piの初期セットアップって、いつもモニターからやってて 画面をどう見せるのがいいんかわかりません。

とりあえず起動した後にやっている設定をメモメモ。

起動後、だーっと画面にメッセージが表示された後に config toolが起動する。

1.Expand FileSystem  を選択してエンター 2.Change User Password を選択してエンター。  ユーザーpiのパスワードを設定する。

4.Internationalisation Options Change locale ja_JP.UTF-8をにカーソルを合わせてスペースキー ラズパイ搭載のHDMI出力だとうまく表示されないので、設定後はコンソールからリモートで扱うのが良い・   Change Timezone Asia→Tokyo  JapanではなくてTokyo

Change Keybord Layout Generic 105-key PCを選択

で左右のキーをでFINISHを選択するとRebootされる。

再起動後に sudo apt-get update

とりあえずこんあものではないでしょうかね。

Raspberry Pi2 に RASPBIANを入れる

なんかラズパイを触ることになったので、 起動までをめもめもめも。

全体の流れとしては ・OSイメージのDL ・microSDにimageを焼く ・microSDをラズパイにぶっさして起動 って感じです。

1.OSイメージファイルのダウンロード&解凍 Downloads | Raspberry Piから好きなイメージをダウンロードする。 今回はRASPBIAN。

2.OSイメージファイルを作業用PCでmicroSDカードへコピー 解凍して、SDカードに焼く。

以下はMacでの実施方法

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage                         250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.1 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *249.8 GB   disk1
                                 Logical Volume on disk0s2
                                 DD60EE5D-5717-4626-AF18-299AA9D31971
                                 Unlocked Encrypted
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *15.5 GB    disk2
   1:             Windows_FAT_32 NO NAME                 15.5 GB    disk2s1

今回はマウントしているのはdisk2なので

$ diskutil unmountDisk /dev/disk2
Unmount of all volumes on disk2 was successful

以下のコマンドで書き込み bs=1mでスピードアップなんだそう。

$ sudo dd if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk2 bs=1m

Ctrl+Tで進捗が確認可能 imgファイルのサイズが 3276800000バイトなので以下みたいになったら完了。

3276800000 bytes transferred in 368.013262 secs (8904027 bytes/sec)

これで書き込み完了。

あとはこのSDをラズパイにさして、 HDMIケーブル作成して起動。

参考サイト http://techblog.clara.jp/2015/02/raspberry-pi-2-model-b_install_and_ssh_connect/ https://www.generation.ne.jp/topics/raspberry01/

rake db:migrateで作ったDBにアクセスする時にエラー

rake db:migrate で作成したあと rails sで起動して、http://192.168.33.10:3000/Userにアクセスしたら出たエラー

Cannot render console from 192.168.33.1! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255

これは

vi config/application.rb

で、以下を追加

config.web_console.whitelisted_ips = '0.0.0.0/0'

で解決した。

でもまだエラーがあって、

ActionController::RoutingError (No route matches [GET] "/User1"):

これはいろいろやってみたけど developmet.rbとか書き換えてみたり。。なぞ。

もう今日はおわりーと思って db:migrateでつくったやつ戻そうとコマンド調べて実行

rake db:migrate:reset
== 20150909130346 CreateUsers: migrating ======================================
-- create_table(:users)
   -> 0.0012s
== 20150909130346 CreateUsers: migrated (0.0026s) =============================

!?!!!!

users? ほうほう http://192.168.33.10:3000/users

見れますた。ちゃんとメッセージは見ましょうってことですな。

scaffoldの使い方

Railsには、scaffordという仕組みがあるらしいです。 なんかいい具合に、DBに反映してくれるらしい。

rails generate scaffold User name:string score:integer

これはdb/migrateに string型でnameと integer型でsocreという項目のあるUserってDB作ってよってことらしい。

そして

rake db:migrate

でDBが作成されるんだそうだ。

Rails sで起動したサーバーにローカルPCから接続できない

Ruby on Railsを勉強中です。 いや、Rubyも書いたことないけど、まぁなんとかなるでしょ、と始めましたが、 環境作りで手間取っております。

とりあえずVagrant upで落としてきたイメージを起動するところは到達。

rails new

コマンドもたどり着いた。

で、

rails s

でhttpサーバーが起動されるところまできたのだけど、 ブラウザから接続できない。。。。

ipも間違ってない、ポートフォワーディングの設定もあっている。。。 なんかオプションか?とおもいつつ

rails s -h

と打ったら、--binding=IP を発見。

    -p, --port=port                  Runs Rails on the specified port.
                                     Default: 3000
    -b, --binding=IP                 Binds Rails to the specified IP.
                                     Default: localhost
    -c, --config=file                Uses a custom rackup configuration.
    -d, --daemon                     Runs server as a Daemon.
    -u, --debugger                   Enables the debugger.
    -e, --environment=name           Specifies the environment to run this server under (test/development/production).
                                     Default: development
    -P, --pid=pid                    Specifies the PID file.
                                     Default: tmp/pids/server.pid

    -h, --help                       Shows this help message.

このPCってlocalhostだよなと思いつつ、 ふとAWSのanywhereの表現の0.0.0.0にのっとって

rails s -b 0.0.0.0

にしてみたら、つながった。 PCはMacなので、ifconfigとかしてみたらわかるかと思ったけど、、

rails s -b en0のip
rails s -b vboxnet0のip

でも繋がらなかった。 まぁ動くからいいか。。。