2004-01-01 あけおめ
_ あけましておめでとうございます。
本年もいがいが日記をどうぞよろしくお願いします。m(_ _)m
年末年始は実家の群馬でのんびり過ごすことができました。
まずは群馬であった出来事をちょっとずつupしていきます。
_ logの見積もり方法
学生に混乱を与えながらもギャグ用語の1つに好んで加えられるlog。
実生活でも結構よく使う(使わない?)便利なやつです。
でも、logの値の見積もりって苦手でした。
物理だと底が自然対数eのlogをよく使いますが、私は式変形はしても見積もりはあんまりしませんでした。
先日ふと二分検索の文を読んで発見しました。
例えば"log_a x"(底がa)だったら、値を見積もるには「xをaで何回割って1になるか」だと!
例えばlog_2 10 だったら10を2で割っていって、4回割ると1を切るので3〜4の間のどっかだな、てな感じで。
いや、定義考えれば当たり前なんですが。(^^;)
そーいえば昔、高校生の数学教科書を見せてもらったら「ログの底を変換する」という練習問題が載ってました。
私の人生では今のところログの底を変えるような場面には遭遇してないのですが、これってどういうときに使うんでしょうね?
2005-01-01
_ お正月
神社でおはらいしてもらう。
毎年してもらっているのでこれをやるとお正月って感じがする。
お昼はお店があまりやっていなかったけど、
スマイルスマイルがやってたのでオムライスを食す。
家族にも好評。
2006-01-01
_ あけましておめでとうございます
新年明けましておめでとうございます。
本年もどぞよろしくお願いします。
年末は風邪ひいて寝込んでました。(^^;)
みなさんもお気を付けください。
復活したので今日は実家に帰ります。
ニューイヤー駅伝では今ちょうど伊勢崎を走ってますね。
「伊勢崎絣」という着物が昔は有名だったそうなのですが、
実物を初めて(TVで)みました。
暖かくなる工夫のあるものだとか。やるなぁ。
2007-01-01 おだやかな新年
_ 謹賀新年
新年明けましておめでとうございます。
本年もどうぞよろしくお願い致します。
群馬はおだやかな新年を迎えてます。
実家のコタツでぬくぬくしてます。
ニューイヤー駅伝走ってますねー。
午後は神社に行きます。
お正月の過ごし方って小さいころから変らないですねー。
そんなわけで今年もいがいが日記をどぞご贔屓に〜。
2008-01-01 晴れ、雪舞う寒い日
_ 2008年の目標
あけましておめでとうございます。
本年もいがいが日記をどうぞご贔屓に。(^^ゞ
# ところで今年は喪中なのですが、
# あけおめ以外のお正月の挨拶ってなんかないのかな?
ということで昨年のふりかえりと今年の目標を。
---
■雑誌への寄稿
今年も書けるようにがんばる。
書籍へ携わるのも長期的な目標だけど、
実現よりも今年は自分の中に知識を蓄積したい。
■健康増進
体調が悪くて、良い時期が短かった。
薬膳茶健康法はあまり効果無し?
何か新しいTryをみつけたい。
■ストレスを減らす
心のコントロールはもうちょい技術でなんとかできるんじゃないかなー。
最近のストレスの感じ方はひどいのでなんとかしたい。
■英語
去年は駆け込みで英語MLデビューを果たす。
ただ、会話力はあきらかに落ちたなぁ。
今年は読むスピードの向上と語彙量の増加。
単語は覚えてもすぐに忘れちゃうのでなんかいい覚え方を考えるべきかも。
情報発信も頭の片隅に。
■卓球
まだまだやればやるだけうまくなるレベルなので楽しいところ。
裏面をふれるようにしたいです。
まずは健康に留意して毎週ちゃんと練習したいなー。
---
神社でお払いしてもらいながら目標考えてみたんですが、
思ったよりも思い浮かばないなぁ。
また思いついたら加筆します。
昨年もみなさんのお力添えでこの日記にて成長させて頂きました。
今年も面白いネタが書けるようにがんばりますので、
みなさんぜひ遊びにきてください。(^^)
2009-01-01
_ 2009年の目標
あけましておめでとうございます。
本年もいがいが日記をどうぞご贔屓に。(^^ゞ
さて、新年なので新しい目標を。
■英語
読むスピードをあげたい。
なので引き続き簡単な文をたくさん読む。
技術webにももっと手を出したい。
#↑どのへんをひっかけてれば面白いのかなー?
日本語への翻訳や、英語での発信を目標とする。
今年は英語を最重要項目にしたいですね。
■健康
健康で過ごせますように。(-人-)
今年の目標は「休憩をうまくとる」かな。
■書くこと
じっくり調べて何かを書く、をやりたい。
↑はすぐには成果がでなくてもいい。蓄積フェイズ。
何を書けるかを提案する。
■高専カンファレンス
開催を支援できるインフラ作り。
■卓球
レシーブ力の向上とドライブでコースをつけるように。
■お笑い
今年はボケに挑戦したいです。
#既にボケでしょ?!的な指摘があると複雑な気分です。(笑)
2010-01-01
_ 2010年の目標
あけましておめでとうございます。
本年もいがいが日記をどうぞご贔屓に!
---
最初に去年の目標をふりかえってみます。
(2009年12月31日の日記にもふりかえり在り)
■健康:「休憩をうまくとる」
→努力はしたが、うまくとれたかな?
でも(たぶん)健康で過ごせて、体調不良では今年も1日も休まなかったのは高評価。
ストレス対策は今年も「道は開ける」がバイブルでした。
■英語
読むスピードをあげたい。
→技術webを読む量を増やせてたので少し達成できたかも。
日本語への翻訳や、英語での発信を目標とする。
→うーん、これはできなかったなぁ。
■書くこと
特に成果無しかな。
「書く」というくくりではなくて今年は「発信する」というくくりにしよう。
■高専カンファレンス
みなさんの活躍で大きく飛躍した1年でしたね。
■卓球
レシーブ力の向上もドライブでコースをつけるようにも達成できず。
でもいろいろ身についてはいるので精進したい。
■お笑い:今年はボケに挑戦したいです。
うーん、どうだったんだろ。もっとキレのあるボケをかましたい。(笑)
---
以上を踏まえまして2010年の目標を。
■総論
今年は新しい挑戦の年に。
目標がまだ形にならないので、もうちょい具体化したい。
■健康
ひきつづき健康でありたい。
ちょっとした体の異変は体からのメッセージなので、早めに休むようにしたいです。
■英語
英語と日本語を意識せずに情報を吸収していきたい。
直近はヒヤリング力の向上に力をいれたい。
■Ruby
Rubyコミュニティに貢献できる方法を考えていきたい。
あと、海外のRubyイベントに参加したい。これは目標ってより希望。(笑)
■発信する
去年と同じ目標、発信に向けて力を蓄えたい。
■高専カンファレンス
何か新しいアイデアを出して実行したい。
来た人が、その場だけでなく、戻ってからも継続できるような。
今はまだ形にできないのだけど。
■卓球
得意型を作る。サーブからこの流れで点を取れる、という形を作っていきたい。
■英語
直近はヒヤリング力の強化。
引き続き英語webをたくさん読みたい。
2011-01-01
_ 2011年の目標
あけましておめでとうございます!
本年もどうぞよろしくお願いします。
来年の目標を。
■総合
今年は商売について考えて行動を起こしたい。
万葉のみなさんを巻き込んで活動できるとなおいい。
あと、先年末に「減らす技術」を社長から借りて読んでよかったので、今年は実践したい。
朝一でコツコツ続けるタスクをやってみる、とかとか。
■健康
ひきつづき健康でありたい。
いろんなことがもっと楽に気楽に楽しくできるようになるといいな。
■英語
読むのは文をたくさん読んで文の善し悪しと自然さが分かるようになりたい。
聞くのはカンファレンスで言ってることが半分以上分かるようになりたい。
はてぶで人気のこのページの「英語上達完全マップ」に沿ってやってみようと思う。
■Ruby
EuRuKoに参加してヨーロッパのRuby文化にふれたい!
と、それ以外にも目標を立てたいと思ったのだけど、うまく思いつかないので保留。
■高専カンファレンス
教育について考えて行動したい
■卓球
もっと練習したい・・・
■お笑い
ラーメンズのお笑いを研究したい
■ライブ
去年は音楽のライブにあんまりいかなかったので今年は行きたい
お芝居にもいきたい
この辺は目標じゃなくて願望か。(笑)
2012-01-01
_ 今年もどうぞよろしくお願いします!
今年の目標。
■総合
今年は「伝える」がテーマです。
具体的なアクションももう起こしているのですが、
ここでの発表はもう少し動き始めてからにします。
■健康
ひきつづき健康第一。
あと、いつも脳CPUに余裕を持たせておいてスッキリ思考するようにする。
そういえば去年は徹夜すると翌日ぼろぼろになることが分かったので、
もう徹夜はできんのだなぁ。
■英語
今年は文法!
■Ruby
Rails3.2や4.0が今年はくるのかな。積極的にいじりたい。
■高専カンファレンス
小粒でいくつかなんかやりたい。計画はあるので近々お知らせできると思います。
EM高専カンファレンスは第2号を出せるといい。
■卓球
もう試合は無理かもしれないけど、練習してうまくなりたい!
健康のためにも練習行きたい。
■日記
今年はせめて去年よりは書きたいです・・・。^^;
2015-01-01
_ Sakura VPS で Ubuntu14.04 + nginx + unicorn + tDiary4.1.1 構築
新年あけましておめでとうございます。本年もどうぞよろしくお願いします!
ということで年末にOSごと壊してしまったので、年末から年始にかけて0から再構築。まちゅさんから「式年遷宮ですね」と言われたけど確かにその通り。昔tdiaryをCGIで動かしてたころの設定も消せたし、結果として大掃除になりました。それにしてもLinuxマシンの構築は何回もやってるけど、そのたびに使うミドルウェアは変わっていて、今回はとうとうapacheを使わなくなった。
社会人になったばかりの頃にunix技術を教えてもらったり学んだりしてきたけど、間違いなく一番長く使ってる技術だし、これからも長く使うのだろう。(その次はRubyかも。)
次回の式年遷宮はubuntu 14.04 のサポート期限終了の2019年かな。
以下、メモ。
VPSコンソールにてカスタムOS Ubuntu 14.04 amd64 を選択。
ssh でログインして作業
- $ ssh username@XXX.XXX.XXX.XXX
ssh設定
公開鍵設置
自分のマシンの id_rsa.pub をコピーして、sakuraマシンで以下
- $ mkdir -m 700 ~/.ssh
- $ echo 公開鍵ファイルの中身 > ~/.ssh/authorized_keys
- $ chmod 600 ~/.ssh/authorized_keys
- ssh でパスなしで接続できることを確認
rootのログイン禁止 & パスワード方式のログイン禁止 & SSHのポート変更 & 自動切断防止
- $ sudo vim /etc/ssh/sshd_config
- Port 22
+ Port 22222
+ ClientAliveInterval 30 # Prevent auto disconnection
- PermitRootLogin without-password
+ PermitRootLogin no
- PasswordAuthentication yes
+ PasswordAuthentication no
- $ sudo vim /etc/services
- ssh 22/tcp # SSH Remote Login Protocol
- ssh 22/udp
+ ssh 22222/tcp # SSH Remote Login Protocol
+ ssh 22222/udp
上記設定チェック
- $ sudo sshd -t
sshd再起動
- $ sudo service ssh restart
ローカル : .ssh/config
Host sakura
HostName xxxxx.sakura.ne.jp
User igaiga
Port 22222
OS設定
FW設定
- $ sudo ufw status
- $ sudo ufw default deny
- $ sudo ufw allow 22222
- $ sudo ufw allow 80
- $ sudo ufw allow 443
- $ sudo ufw enable
- $ sudo ufw status
locale設定
設定した方がvimなども日本語で表示されて使い易い。日本語が表示されない端末などでは en_US.UTF-8 などにすればいい。
- $ locale
- LANG=en_US.UTF-8
- $ sudo locale-gen ja_JP.UTF-8
- $ sudo update-locale LANG=ja_JP.UTF-8 再ログイン後
- $ locale
- LANG=ja_JP.UTF-8
apt 更新
- $ sudo apt-get update
- $ sudo apt-get upgrade
apt 基本パック
$ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion zsh screen vim tmux
標準エディタ設定
- $ sudo update-alternatives --config editor
- $ select-editor crontab -e などで起動確認
git 最新版
apt にリポジトリ追加して更新
- $ sudo aptitude install software-properties-common
- $ sudo add-apt-repository ppa:git-core/ppa
- $ sudo apt-get update
- $ sudo apt-get upgrade
diff-highlight を git log などで使うのでセットアップ
- $ mkdir ~/tools
- $ cd ~/tools
- $ git clone git@github.com:git/git.git
- $ sudo cp git/contib/diff-highlight/diff-highlight /usr/local/bin/.
github
- $ ssh-keygen -t rsa -C "igaiga@sakura.ubuntu.14.04" ssh agent を設定する
- $ eval "$(ssh-agent -s)"
- $ ssh-add ~/.ssh/id_rsa
github で公開鍵鍵追加
https://github.com/settings/ssh
bitbucket で公開鍵追加
https://bitbucket.org/account/user/igaiga/ssh-keys/
Github SSH connections over HTTPS
~/.ssh/config
Host github.com
Hostname ssh.github.com
Port 443
Host bitbucket.org
Hostname bitbucket.org
Port 22
github 確認
- $ ssh -T git@github.com だめなら以下も確認(以下がOKなら.ssh/configが悪そう)
- $ ssh -T -p 443 git@ssh.github.com
rbenv, ruby-build
- $ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
- $ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
- $ ln -s ~/.rbenv/plugins/ruby-build ~/.ruby-build
- $ echo 'export PATH="~/.rbenv/bin:$PATH"' >> ~/.bashrc
- $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
- $ source ~/.bashrc
- $ rbenv install -l
- $ sudo apt-get install libffi-dev # ruby2.2.0 special
- $ rbenv install 2.2.0
- $ rbenv global 2.2.0
zsh
- $ vim ~/.zshrc
export PATH="/home/igaiga/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
デフォルトzshへ
- $ chsh -s $(which zsh)
nginx & unicorn
$ sudo apt-get install nginx $ gem install unicorn
nginx
sudo vim /etc/nginx/sites-available/igarashikuniaki.net
upstream tdiary.unicorn {
server localhost:8080;
}
server {
server_name igarashikuniaki.net;
access_log /var/log/nginx/localhost.access.log;
location / {
root /var/www/;
index index.html index.htm;
}
location = / {
rewrite ^ /diary/ redirect;
}
location = /diary {
rewrite ^ /diary/ redirect;
}
location = /tdiary {
rewrite ^ /diary/ redirect;
}
location ~ ^/tdiary {
rewrite ^/tdiary/(.*)$ /diary/$1 redirect;
}
location ~ ^/[0-9\-]+\.html$ {
rewrite ^ /diary$request_uri redirect;
}
location ~ ^/diary/ {
try_files $uri @unicorn;
}
location @unicorn {
rewrite /diary/([0-9\-]+)\.html$ /diary/index.rb?date=$1 last;
proxy_pass http://igarashikuniaki.net;
}
}
server {
server_name www.igarashikuniaki.net;
rewrite ^ $scheme://igarashikuniaki.net$request_uri redirect;
}
nginx 設定ファイルを有効にする
$ sudo rm /etc/nginx/sites-enabled/default $ sudo ln -s /etc/nginx/sites-available/igarashikuniaki.net /etc/nginx/sites-enabled/. $ sudo /etc/init.d/nginx restart
tdiary
- $ sudo mkdir -m /var/tdiary/
- $ cd /var/tdiary
- $ git clone git@github.com:tdiary/tdiary-core.git
- $ git clone git@github.com:tdiary/tdiary-contrib.git
- $ git clone git@github.com:tdiary/tdiary-theme.git
- $ mkdir data -m 777
tDiary core へ移動して以下。bundler と gem をインストール。
- $ git checkout v4.1.1 #最新版へ
- $ gem install bundler
unicorn & GFM style用に以下を追加
- $ vim Gemfile.local
gem 'unicorn'
gem 'tdiary-style-gfm'
- $ bundle install --without test development
tdiary.conf を tdiary-core の下のサンプルをコピーしてつくる。以下を変更。
- $ cd tdiary-core
- $ cp tdiary.conf.sample tdiary.conf
- $ vim tdiary.conf
@data_path = '/var/tdiary/data'
@options['sp.path'] = [
'/var/tdiary/tdiary-core/misc/plugin',
'/var/tdiary/tdiary-contrib/plugin',
]
@options['makerss.file'] = 'index.rdf'
@options['makerss.no_comments.file'] = 'no_comments.rdf'
@style = 'GFM'
config.ru を編集
- $ vim config.ru
base_dir = '/diary'
theme を tdiary-core/theme 以下へコピー
.htpasswd を tdiary-core 以下へ作成(管理画面へ入る際にこのファイルを自動でみてくれる模様)
- $ sudo apt-get install apache2-utils
- $ htpasswd -d -c .htpasswd igaiga
RSSの出力方法は以下のまちゅさんのページを参考にした。もしも出力がうまくいかない場合はプラグインのRSSタブでチェックするといい。 参照:http://www.machu.jp/diary/20120504.html#p01
tdiary データファイル配置
- /var/tdiary/data/
Unicorn
起動設定ファイル tdiary-core/unicorn.conf
worker_processes 4
listen 8080, :tcp_nopush => true
pid "unicorn.pid"
stderr_path "log/unicorn.stderr.log"
stdout_path "log/unicorn.stdout.log"
preload_app true
GC.respond_to?(:copy_on_write_friendly=) and GC.copy_on_write_friendly = true
ログフォルダ作成
- $ mkdir /var/tdiary/tdiary-core/log/
単体起動テスト
- $ bundle exec unicorn -c unicorn.conf
エラーがでないことを確認 参考情報
- restart
- $ kill -s USR2
cat #{current_path}/tmp/pids/unicorn.pid
- $ kill -s USR2
- stop
- $ kill -s QUIT
cat tmp/pids/unicorn.pid
- $ kill -s QUIT
cat #{current_path}/tmp/pids/unicorn.pid
- $ kill -s QUIT
起動用スクリプト
- $ sudo vim /etc/init.d/unicorn_tdiary
#!/bin/sh
NAME="Unicorn for tdiary"
ROOT_DIR="/var/tdiary/tdiary-core"
PID="${ROOT_DIR}/unicorn.pid"
CONF="${ROOT_DIR}/unicorn.conf"
BUNDLE_DIR="/home/igaiga/.rbenv/shims/"
CMD="${BUNDLE_DIR}/bundle exec unicorn -c ${CONF} -D"
start()
{
if [ -e $PID ]; then
echo "$NAME already started"
exit 1
fi
echo "start $NAME"
cd $ROOT_DIR
$CMD
}
stop()
{
if [ ! -e $PID ]; then
echo "$NAME not started"
exit 1
fi
echo "stop $NAME"
kill -QUIT `cat ${PID}`
}
force_stop()
{
if [ ! -e $PID ]; then
echo "$NAME not started"
exit 1
fi
echo "stop $NAME"
kill -INT `cat ${PID}`
}
reload()
{
if [ ! -e $PID ]; then
echo "$NAME not started"
start
exit 0
fi
echo "reload $NAME"
kill -HUP `cat ${PID}`
}
restart()
{
stop
# Unicorn が停止し切らない内に起動しようとしないように
sleep 3
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
force-stop)
force_stop
;;
reload)
reload
;;
restart)
restart
;;
*)
echo "Syntax Error: release [start|stop|force-stop|reload|restart]"
;;
esac
起動確認
- $ sudo /etc/init.d/unicorn_tdiary start
http://igarashikuniaki.net/diary/ でアクセスできればOK
OS起動時に自動起動
- $ sudo update-rc.d unicorn_tdiary defaults # 自動起動
- (sudo update-rc.d -f unicorn_tdiary remove # 自動起動解除)
追記: @sora_h さんより「rbenvサーバーで使うならusr/share/rbenvオススメ、あとはupstartのほうが簡単だったりしないかなあ」とツッコミいただきました(ありがとうございます!)。確かに /usr/share/rbenv の方がみんなのものぽくてよかったなー。あと、upstartも便利そうなので次回使ってみたい!
2016-01-01
_ tDiary4.2.1 + Ruby2.3.0
今年もいがいが日記をよろしくお願いします。m(_ _)m お正月なので恒例の肉の日リリースされていたtDiary4.2.1と、クリスマスリリースのRuby2.3.0へupdateしました。特にトラブルなくバージョンアップ。開発者のみなさんいつもありがとうございます!
2018-01-01
_ tDiary5.0.7 + Ruby2.5.0
新年明けましておめでとうございます。本年もigaiga diaryをよろしくお願いします。 この日記、今年でもう15年。すごい。開発者のみなさんありがとうございます! 毎年恒例の新年メンテ、tDiaryとRubyのバージョンを上げました。
Before...
_ rojin-h [明けましておめでとうございます。 今年もよろしく。]
_ shiba [あけおめー いつ札幌来んの?w 今年もよろしく!]
_ いが [おお!みなさんコメントありがとです! 今年もどぞご贔屓に! 明日、戸田に帰ります。 >サトイモさん 風邪はもう問題..]