2012年2月2日木曜日

インフラエンジニアのMacBookAir 11 その4

最低限のアプリはインストールできたので、設定周りを中心に書いていきます。

まず、やっておかないといけないのが、ターミナルのログ取得
Macのデフォルトのターミナルもそうですが、
iTerm2なんかでもログの取得がデフォルトでない。。。
まあ、Macを普通に使う人は必要ないですもんね。

以前、ubuntuでやっているときは、zshrcに
alias ssh='~/scripts/sh/ssh_wrapper.sh'
として、シェルの中で、screen使ってssh接続のみログをとってました。
こんな感じで。
screen -q -c "ssh -l user $HOST" $LOG
これをそのまま流用しようとしたのですが、OSXのscreenコマンドには"-c"オプションがないようで使えませんでした。

色々試して、ターミナルの環境設定の中の起動時にシェルを実行する部分に、
screenのコマンドを入れたスクリプトを設定して、
ターミナル起動時からの ログをすべて取ることにしました。
シェルの内容は以下の通りです。

#!/bin/sh
DATE=$(date +'%Y%m')
DATETIME=$(date +'%Y%m%d_%H%M%S')
LOG_DIR=${HOME}/.ssh_log/${DATE}
LOG_FILE=${LOG_DIR}/${DATETIME}.log 
[ ! -d ${LOG_DIR} ] && mkdir -p ${LOG_DIR}
settitle ${HOST}
script ${LOG_FILE}

スマートではないのですが、とりあえず、これでログの取得はできるので、
一旦これでスタートしようと思ってます。いい方法があれば改善していこうと思います。


次に、tmuxの設定とtmuxのコピー&ペーストについて

デフォの状態では、tmuxからpbcopyが使用できないのが問題で(たぶん)、
vimでのヤンク時や通常のコピー(command + c)時にクリップボードに入ってこない。
なので、ブラウザとかで調べ物するときとか、貼り付けることができない。
ここを参考に設定を行う。

過去にこのブログでも書いていて、
それみてやったけど、「date | pbcopy」やってもうまくいなかい。
USBのLANが認識しなかったので、あきらめて再起動した後に再度試したらうまくいった。
やりかたに問題はなかったみたい。
ターミナルを正常に終了させないといけなかったのか、そもそも再起動が必要だったのか不明。

私のtmuxの設定は以下のような感じです。

# prefix key 設定
unbind C-b
set-option -g prefix C-t
bind C-t send-prefix
 
# 256 color
set-option -g default-terminal screen-256color
 
# 日本語環境なら今のところ必須。
set-window-option -g utf8 on
 
# clipbordへのコピー&ペースト
set-option -g default-command "reattach-to-user-namespace -l zsh"
bind C-q run-shell 'reattach-to-user-namespace tmux-pbcopy'
 
# vi mode
set-window-option -g mode-keys vi
 
# ウィンドウ名が自動的に更新されないように
set-window-option -g automatic-rename off
 
# 保持するhistoryの行数
set-option -g history-limit 20000
 
# color関連
set -g status-fg white
set -g status-bg blue
set -g status-left '#[fg=white,bg=blue]#H#[fg=white]:#[fg=white][#S#[fg=white]][#[blue]'
setw -g window-status-current-fg white
setw -g window-status-current-bg blue
setw -g window-status-current-attr bold#,underscore
set -g pane-active-border-fg white
set -g pane-active-border-bg blue

今日はこのへんで。

0 件のコメント:

コメントを投稿