100回見ても忘れるものをメモる

金言

rbenv installで新しいrubyが見えない

cd ~/.rbenv/plugins/ruby-build/ && git pull
rbenv install -l |grep jruby

rbenv install後にbundleが見えない

rbenv which gem    # OK
rbenv which bundle # ERR
gem install bundler
rbenv which bundle # OK

sbt

set scalacOptions += "-deprecation"

vm

[SERVER] LANG=C virt-manager
[CLIENT] Xming

SL6でgdmを止める

initctl stop prefdm
mv /etc/init/prefdm.conf /etc/init/prefdm.conf-disabled
mv /etc/init/splash-manager.conf /etc/init/splash-manager.conf-disabled
initctl reload-configuration
http://www.triumf.info/wiki/DAQwiki/index.php/SLinstall#Disable_gdm_and_X11_.28OPTIONAL.29

オブジェクト指向の原則

PostgreSQLでディスク消費が多いテーブルを探す

SELECT relname, relpages FROM pg_class ORDER BY relpages DESC;

外からFW内のDNSを使いつつ接続する(with Firefox)

1. 例: hostAにSOCKSのダイナミック転送(port:8080を利用)のproxyを貼る (-N:shellなし, -v:debug)
  % ssh -D 8080 hostA -N -v

2. FirefoxでSOCKS proxyを有効にする
  URLで "about:config" を指定
  "network.proxy.socks_remote_dns" を "true" に設定

3. FirefoxでSOCKS proxyの設定をする
  [オプション]-[詳細]-[ネットワーク]-[接続設定]-[手動でプロキシを設定する]
  SOCKSホスト: localhost  ポート: 8080

4. Firefoxを再起動
  (FWの内部のURLを直接指定してアクセスできる)

[git]最後のcommit実行直前の状態に戻る

git reset HEAD^
# ここからさらに git commit すれば NOP

[git]派生元を切り替える (範囲rebase)

# man git-rebase

                                       H---I---J topicB
                                      /
                             E---F---G  topicA
                            /
               A---B---C---D  master


       then the command

           git rebase --onto master topicA topicB

       would result in:

                            H'--I'--J'  topicB
                           /
                           | E---F---G  topicA
                           |/
               A---B---C---D  master
# baseはブランチ名だけでなくコミットも指定可能なので、
# 直近の5個をまとめてcherry-pickみたいな使いた方もできる

[git]今のコミットを一つ前のコミットに入れてしまう

# 変更対象のコミットの1つ前のコミットを指定する (そこに戻って歴史を変更する)
# (直近の2変更に対する修正なので3つ前のコミット: 1:HEAD, 2:HEAD~1, 3:HEAD~2)
git rebase -i HEAD~2
pick 61690cf Added "engines" setting to summary config
pick 3592501 Added comments
# 上の方が古いコミット。2行目の"pick"を"s"に修正してエディタを終了
# さらにエディタが起動し、新しいコミットメッセージの入力になる

emacsで突然c-x c-sでセーブできなくなった

screenでいつの間にか"C-a f"してるのが原因。トグルなのでもう一度実行する。

今動いてるUbuntuのディストリビューション名を確認

% lsb_release -c
Codename:       oneiric

Ubuntuで後からtimezoneを変更する

# dpkg-reconfigure tzdata

Ubuntuでavconv使ったら謎のエラー

* Ubuntuでffmpegでmp3に変換できない
Encoder (codec id 0) not found for output stream #0:0

↓CODECを入れる

aptitude install ubuntu-restricted-extras

cygwinのsshでkeepalive

# vi /etc/defaults/etc/ssh_config
Host *
  ServerAliveInterval 60

fsck阻止

 tune2fs -c 0 -i 0 /dev/sdi

grub2のせい?Ubuntuのせい?ブートメニューが出ない

# GRUB_HIDDEN_TIMEOUT=0

osxにemacsのCtl-spaceを奪われるのを阻止

 # osx で spotlight のインデクシングを停止 (10.6で実行できることを確認)
 mdutil -i off /
 # osx で spotlight のショートカットキーがemacsと衝突しているので何とかしたい
 # [システム環境設定]->[Spotlight]

scala bench

def bench(code: => Any, times: Int = 1) {
  val start = System.nanoTime
  for(_ <- 1 to times) code
  println(format("%.4f", (System.nanoTime - start)/1000000000.0))
}
URL: http://gist.github.com/401958

puttyはどれ使うんだっけ?

ICE IV + putty

AutoHotKeyで「無変換」キーを同属窓のringに

;; 無変換
vk1Dsc07B::
  WinGetClass, className, A
  WinActivateBottom, ahk_class %className%
  return
download: http://www.autohotkey.com/download/

まっさらのUbuntuでやること(ec2)

Locale

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_TIME = "C",
        LANG = "ja_JP.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
# apt-get install language-pack-ja
# dpkg-reconfigure locales
Generating locales...
  en_US.ISO-8859-1... done
  en_US.UTF-8... done
  ja_JP.UTF-8... up-to-date
Generation complete.
via http://www.hbirds.net/linux/ubuntuserver/ubuntu-server-ppc-9-10/perllocale-warning/6172

TimeZone

dpkg-reconfigure tzdata
crontab -e
45 23 * * * /usr/sbin/ntpdate ntp.nict.jp

SUN Java

vi /etc/apt/sources.list
# sun jvm
deb http://archive.canonical.com/ lucid partner

Applications

aptitude install
lv zsh keychain git-core
ruby irb rubygems ruby1.8-dev ruby1.8-elisp libopenssl-ruby1.8
apache2-mpm-prefork
emacs yasnippet windows-el
#sun-java6-jre sun-java6-jdk
openjdk-6-{jdk,jre,lib,doc,demo}
"g++"

Ruby gems

gem install thor open4 rack rack-test thin monk monk-glue rspec rr

Apache

aptitude install libapache2-mod-ruby
a2enmod rewrite 
a2enmod proxy_http
a2enmod proxy_balancer
vi /etc/apache2/mods-available/proxy.conf
                Allow from all

sqlite3

aptitude install libsqlite3-dev libsqlite3-ruby1.8 sqlite3-doc

sinatra

gem install sinatra sinatra_more haml -V

tokyocabinet

aptitude install zlib1g-dev libbz2-dev
./configure
make
make install
gem install tokyocabinet tokyotyrant -V

nokogori

aptitude install libxml2-dev libxslt-dev

HTTPレスポンスコード

http://www.tohoho-web.com/ex/http.htm

wota.jpサーバメモ

db

start

mongod --dbpath /data/mongodb run &
# redis-server > log/redis.log
cd /var/www/apps/mob3 && ./server.rb -p 9096 &
cd /var/www/apps/saka6 && merb -p 9101 >| log/server.log
cd /var/www/apps/downloader && thor monk:start --port=9111 production &
cd /var/www/wota/news/others/sinatra && ruby jserver.rb -p 9095 &
ruby -Ku -rubygems -Ilib bin/ircbot -f config/wota.yml

services

ubuntu

filename 2 package

boot log old env mcz