http://blog.glidenote.com
に移転しました

Archive for "12月 2011"

移転しました

http://blog.glidenote.com
に移転しました。

今後はhttp://blog.glidenote.comの方を更新していきますので、今後ともよろしくお願いします。
feedはリダイレクトをかけているので、RSS Readerなどの登録し直しなどは不要かと思います。

caca-utilsで勉強会のデモにネタを仕込む

勉強会とかでターミナル作業のデモをやるときに仕込むと効果的です。

導入方法

sudo yum -y install caca-utils


使い方

使い方としては、cacaviewかimg2txtコマンドを使って

img2txt -W `tput cols` path/to/image.jpg
 
cacaview path/to/image.jpg
 
img2txt -W 100 path/to/image.png

てな感じ。一番上はtput colsで画面サイズを引数に渡してる感じです

~/.ssh/rc に

img2txt -W 60cols path/to/image.jpg"

とか書いておくと、sshアタッチしたときに画像が出ます。ちょっとした小ネタにどうぞ。

tmuxの外観をカスタムして、運用と開発を加速させる

ターミナルマルチプレクサ Advent Calendar 2011の16日目です。
15日目はdodaさんのリモートの tmux でコピーした内容のローカルのクリップボードへの反映でした。

tmuxを利用し、

  • sshでリモートサーバに接続するたびに、ホスト別にwindowを生成
  • エディタ用、コマンド操作用、負荷監視用など用途別にwindowを生成し、paneを増やし画面分割

などをしていると、今は「どのwindow」の「どのpane」で作業をしているのか分からなくなることがあります。

これは意図せず他のサーバで作業をしてしまい、事故を引き起こしてしてしまう可能性があるため、私はtmuxの外観をカスタムすることで、「どのwindow」の「どのpane」にいるか瞬時に判断出来るようにしています。

デフォルトのtmux

.tmux.confをいじらずに利用している場合

俺のtmux

俺のtmuxステータスバー

俺のこだわり

  • ステータスの色を変更 ( status-fg status-bg )
  • 画面左下にtmuxを起動しているマシンのホスト名を表示 ( status-left )
  • 画面右下に時計を表示( statu-right )
  • 今作業をしているアクティブなwindowだけ色をつける ( window-status-current-fg window-status-current-bg window-status-current-attr)
  • 今作業をしているアクティブなpaneの外枠に色をつける ( pane-active-border-fg pane-active-border-bg )
  • 長時間利用するので目に優しい配色

.tmux.confをまとめて書くと下記のような感じです

# status
set -g status-fg cyan
set -g status-bg black
 
set -g status-left-length 30
set -g status-left '#[fg=white,bg=black]#H#[fg=white]:#[fg=white][#S#[fg=white]][#[default]'
set -g status-right '#[fg=black,bg=cyan,bold] [%Y-%m-%d(%a) %H:%M]#[default]'
 
# window-status-current
setw -g window-status-current-fg black
setw -g window-status-current-bg cyan
setw -g window-status-current-attr bold#,underscore
 
# pane-active-border
set -g pane-active-border-fg black
set -g pane-active-border-bg cyan
view raw .tmux.conf This Gist brought to you by GitHub.

余談ですが、.tmux.confに記載する際に利用するset-option(セッションの設定)とset-window-option(ウィンドウの設定)は

set-option => set
set-window-option => setw

と略して書くことが出来ます。見やすい設定のために書式を統一しておきましょう。

サンプルから記載方法を学ぶ

.tmux.confのサンプルは私の利用するRHEL系OSの場合

/usr/share/doc/tmux-1.4/examples
/usr/share/doc/tmux-1.5/examples

などの配下にあるので、それを参考にすると良いかと思います。

外観を修正する際にしておくと便利な設定

外観をカスタムする際に、.tmux.confの再読みをキーバインドで割り当てておくと便利です。
設定を修正し、再読み込みをさせるですぐに結果が分かります。
私は下記のようにキーバインドを割り当てています

# prefix + r で設定ファイルを再読み込み
unbind r
bind r source-file ~/.tmux.conf

より良いターミナル、tmux環境へ

最近、社内で@banyanさんと一緒に「ターミナルマルチプレクサ勉強会」を
開催した際に、 @banyanさんのプレゼンの言葉に共感したのでそれを書いて締めたいと思います。

tmux では、空気を吸うように
画面分割をする。
動作を意識せず、直感で行う。

良いターミナル、tmux環境は、運用と開発を加速させるので、みんなでより良いものを目指していきましょう!
それでは!

自宅サーバをFedora 15からFedora 16 アップグレード


自宅のサーバをFedora15から16にアップグレードしたので、作業メモ。
手順は公式ページに載ってるそのまま
Upgrading Fedora using yum – FedoraProject

cat /etc/redhat-release
Fedora release 15 (Lovelock) 
 
sudo rpm --import https://fedoraproject.org/static/A82BA4B7.txt
sudo yum update yum
sudo yum clean all
sudo yum --releasever=16 --disableplugin=presto distro-sync

上位ネットワークにFWを入れているので、iptablesは無効にしておく。会社のPCではこれを忘れて再起動してしまい、iptablesが有効になって他からssh接続出来ない状態に。

sudo systemctl stop iptables.service
sudo systemctl stop ip6tables.service
 
sudo systemctl disable iptables.service
sudo systemctl disable ip6tables.service

これで無事16にアップグレード完了

cat /etc/redhat-release
Fedora release 16 (Verne)

About

@glidenote

このブログは個人的なものです。ここで述べられている内容は私の個人的な意見に基づくものであり、私の雇用者に一切の関係はありません