2012年12月31日月曜日

2012年大晦日オフロードツーリングへ行ってきたよ

1年ぶりのツーリング

今年はなかなか時間が取れず行けなかった山へのお散歩に久しぶりに行ってきました。メンバーは4人で、自分と前から一緒に行ってるオフーロードの先生、今回初めてお会いする先輩、それと自分の会社の後輩です。

天気もよく、気持ちよかったです

My machine RM-85 


これが私のバイクです2ストロークの85ccで結構パワーがあっていい感じです

先生の今日のマシン TM-100



外国のバイクでエンデューロレースでは活躍しているTMです、パワーもありますが下も粘りがあり凄い乗りやすいバイクです。その他にもRMX-250、XLR-80改など変なバイクも多数所有しています、さすが先生です



XR-250にKLX-125とセブンで待ち合わせ


真ん中は2002年式XR-250です、シュラウド、倒立サスでカチッと決待った感じで落ち着いた感じのXRでした。右は僕の会社の後輩で新車のKLX-125です、去年も一緒に行ったのですが今回は自分のマシンで参戦です、綺麗なのでチョット汚すのは気が引けるのですが、オフローダーがそんなことを行ってる場合ではありません、頑張って逝きましょうか 笑...



やはりXRはいいですね、まとまったデザインが好きです、でセブンで燃料補給しました

2012年、走り納め



山頂に到着、支度して走る前です


ひと山駆け上がると、こんな綺麗な景色の山頂へさらに登れます、意外と中伊豆の景色は富士山もみえ、天気がいいと素晴らしいです。

さらに、山奥へ入って行きます、えらい急坂のダウンヒルからそのままヒルクライムで汗だくです、(@Д@; アセアセ・・・


ちなみに、しかもここで穴にフロントがおちて前のめりにコケました。山は下に何があるか分からないので皆さんバイクで入るときは気をつけてください(えっ?入らない、そうだよね)

さらに山奥へ....

さらに林道を奥へ進みます、林道っていってもケモノ道です。


よく分からないところでこけてました、笑


よく分からないところでこけてました

ここは傾斜角45度位あって結構きつい上り坂です、みなさんこんな感じで登って逝きました 笑


KLX-125ヒルクライム、笑えます


XR-250ヒルクライム、安定しています



ベテランのスピードです

残念ながら私の動画はありません、残念です

しばし、休憩...

走ってばかりではありません、坂の上でチョット休憩です。世間話など楽しい話題で盛り上がりました。くだらない話の方が多かったような、覚えていません。




そこも絶景です


今日は走りやすいです、清々しい

皆さんよい年をお迎えください

今年も大晦日に走ってきました、いつも2人で走っていましたが、今年は4人で一緒に走れて楽しかったです、伊豆はほんとに綺麗で走るところが充実しているとつくづく思い知らされます。


2山越えて3時間あまり爆走してきました、川もあり、ガレ場、ケモノ道、テクリカルなダウンヒル、パワー全開のヒルクライム、ケツは滑るし、腰は痛いし、でもすっきりデス。

運動不足のプログラーマーから、暇人のプータローでも、メンバー募集中です。

また来年1月2日に走りに行ってきます、伊豆に在住のオフローダーの皆さん一緒に逝きませんか?。笑

2012年12月30日日曜日

LXCのネットワーク設定...続き

LXCのネットワーク設定の不具合を解決

前回作成したLXC(Linux Container)でしたがネットワーク設定がいまいちだったので見直してみた。これで良いのかは微妙なのですが、うまく行ってるっぽいので報告まで
LXCのインストールは前のネタを参照して下さい

まず、ホスト側の設定ファイルのネットワークの設定と、sysfsの設定値をいじくってこんな感じでコメントアウトされている2行を有効にする

karky7 ~ # diff /opt/lxc-gentoo/gentoo2.conf /opt/lxc-gentoo/gentoo2.conf.ORG
16c16
< lxc.network.link = br0
---
> #lxc.network.link = br0
26c26
< lxc.mount.entry=sys /opt/lxc-gentoo/gentoo2/sys sysfs defaults 0 0
---
> #lxc.mount.entry=sys /opt/lxc-gentoo/gentoo2/sys sysfs defaults 0 0
で起動してみる

karky7 ~ # lxc-start -f /opt/lxc-gentoo/gentoo2.conf -n gentoo2

INIT: version 2.88 booting
   OpenRC 0.11.8 is starting up Gentoo Linux (x86_64) [LXC]


 * /proc is already mounted
 * /run/openrc: creating directory
 * /run/lock: creating directory
 * /run/lock: correcting owner
 * Creating user login records ...
 [ ok ]
 * Cleaning /var/run ...
 [ ok ]
 * Wiping /tmp directory ...
 [ ok ]
 * Updating /etc/mtab ...
 [ ok ]
 * Bringing up interface lo
 *   127.0.0.1/8 ...
 [ ok ]
 *   Adding routes
 *     127.0.0.0/8 via 127.0.0.1 ...
 [ ok ]
 * setting up tmpfiles.d entries ...
 [ ok ]
INIT: Entering runlevel: 3
 * Starting local
 [ ok ]

gentoo2 login: root (automatic login)
gentoo2 ~ #

無事コンテナにログインできる

net.eth0を作成する


この設定をやらないと、「sshdとかがnetが無い!」としかられて起動しませんでした
gentoo2 ~ # cd /etc/init.d/
gentoo2 init.d # ln -s net.lo net.eth0
...
...
gentoo2 ~ # /etc/init.d/sshd start
 * Starting sshd ...
 [ ok ]
gentoo2 ~ #

 

LXCにおけるゲスト側のIP、Gatewayなどの設定


Gentooでネットワークの設定は/etc/conf.d/netで設定するのが普通ですが、コンテナのネットワーク設定は基本的にホスト側のgentoo2.confへ書かれているので、得にコンテナ内の/etc/conf.d/netは編集しなくてもい良いらしいです

/opt/lxc-gentoo/gentoo2.conf抜粋

# set arch
lxc.arch = x86_64

# set the hostname
lxc.utsname = gentoo2

# network interface
lxc.network.type = veth
lxc.network.flags = up
# - name in host (max 15 chars; defaults to 'tun'+random)
lxc.network.veth.pair = gentoo2
# - name in guest
lxc.network.name = eth0
# enable for bridging
# (eg. 'brctl addbr br0; brctl setfd br0 0; brctl addif br0 eth0')
lxc.network.link = br0
lxc.network.ipv4 = 192.168.11.125/24
lxc.network.ipv4.gateway = 192.168.11.1
...
...

ホスト側に、コンテナのIPの設定が記載されています
  • lxc.network.ipv4
    • コンテナのIPアドレス
  • lxc.network.ipv4.gateway
    • コンテナのGateway
という感じになっています、ちなみにコンテナ内の/etc/conf.d/netは

gentoo2 ~ # cat /etc/conf.d/net
config_eth0="null"

となっていて、得に設定は必要無いようです、最後にresolv.confの設定を忘れないように...

まぁ適当にやる前に、しっかりドキュメント読めって言われそうだが....



GentooでPersistent-MySQLのebuildを作ってみた

Persistent-MySQLのebuildを作ってみたよ

Yesodをやっててどうも一番使いたいpersistent-mysqlのモジュールがhaskellのoverlayに無さげなので自分で作ってみました(もしあったらごめんなさい)
ghcのバージョンは7.6.1でやってますのでご注意下さい。

dev-haskell/persistent-mysqlのインストール 

手前みそのパッケージなので利用する方は自己責任でお願いします。
まず、laymanで私めのoverlayをインポートして下さい。

overlayを追加

karky7 ~ # layman -L | grep karky7
*karky7                    [Git       ] (git://github.com/karky7/karky7-ove...)

マスクを撤去

/etc/portage/package.keywordsへ以下を追加(ここは自分の設定に合わせて下さい)
#####################
# Persistent MySQL
#####################
dev-haskell/persistent-mysql ~amd64
dev-haskell/mysql ~amd64
dev-haskell/mysql-simple ~amd64
dev-haskell/pcre-light ~amd64

persistent-mysqlをemerge

karky7 ~ # emerge -pv persistent-mysql

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ~] dev-haskell/mysql-0.1.1.4::gentoo-haskell  USE="doc hoogle -hscolour -profile" 0 kB
[ebuild  N    ~] dev-haskell/mysql-simple-0.2.2.4::gentoo-haskell  USE="doc hoogle -hscolour -profile" 0 kB
[ebuild  N    ~] dev-haskell/persistent-mysql-1.1.0:0/1.1.0::karky7  USE="doc -hscolour -profile" 0 kB
karky7 ~ # emerge persistent-mysql

Yesodから利用する

テストプロジェクトの作成、MySQLを選択する
karky7 ~ # yesod init
Welcome to the Yesod scaffolder.
I'm going to be creating a skeleton Yesod project for you.

What do you want to call your project? We'll use this for the cabal name.

Project name: pstest   
Yesod uses Persistent for its (you guessed it) persistence layer.
This tool will build in either SQLite or PostgreSQL or MongoDB support for you.
We recommend starting with SQLite: it has no dependencies.

    s      = sqlite
    p      = postgresql
    mongo  = mongodb
    mysql  = MySQL
    simple = no database, no auth
    url    = Let me specify URL containing a site (advanced)

So, what'll it be? mysql
...
...

Developでyesodを起動してみる

karky7 pstest # yesod devel
Yesod devel server. Press ENTER to quit
Configuring pstest-0.0.0...
Warning: This package indirectly depends on multiple versions of the same
package. This is highly likely to cause a compile failure.
package ghc-7.6.1 requires Cabal-1.16.0
package bin-package-db-0.0.0.0 requires Cabal-1.16.0
package yesod-1.1.7 requires Cabal-1.16.0.3
Rebuilding application... (using Cabal library)
Starting development server...

on the commandline: Warning:
    -package-confdist/package.conf.inplace is deprecated: Use -package-db instead
Starting devel application
Devel application launched: http://localhost:3000
Migrating: CREATE TABLE `user`(`id` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,`ident` TEXT CHARACTER SET utf8 NOT NULL,`password` TEXT CHARACTER SET utf8 NULL)
Migrating: ALTER TABLE `user` ADD CONSTRAINT `unique_user` UNIQUE(`ident`(200))
Migrating: CREATE TABLE `email`(`id` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,`email` TEXT CHARACTER SET utf8 NOT NULL,`user` BIGINT NULL REFERENCES `user`,`verkey` TEXT CHARACTER SET utf8 NULL)
Migrating: ALTER TABLE `email` ADD CONSTRAINT `unique_email` UNIQUE(`email`(200))
Migrating: ALTER TABLE `email` ADD CONSTRAINT `email_user_fkey` FOREIGN KEY(`user`) REFERENCES `user`(`id`)


でMySQLへ接続しているっぽい、もうチョット調べてみます