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
俺の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をまとめて書くと下記のような感じです
余談ですが、.tmux.confに記載する際に利用するset-option(セッションの設定)とset-window-option(ウィンドウの設定)は
と略して書くことが出来ます。見やすい設定のために書式を統一しておきましょう。
サンプルから記載方法を学ぶ
.tmux.confのサンプルは私の利用するRHEL系OSの場合
/usr/share/doc/tmux-1.4/examples /usr/share/doc/tmux-1.5/examples |
などの配下にあるので、それを参考にすると良いかと思います。
外観を修正する際にしておくと便利な設定
外観をカスタムする際に、.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) |
tmuxをyumのアップデート対象から外した
tmuxを 1.5にしたら、マウスでのテキスト選択と、puttyとかMacのターミナルの右クリックでペーストができなくなっていたので1.4に戻した。
yum updateした際に、またいつの間にか1.5にアップデートしていたら嫌だったので、/etc/yum.confに
exclude=tmux* |
を記載。
.tmux.confの設定で回避出来そうだけど、dotfilesをgithubで一元管理して、どのサーバでも同じ設定で利用しており、古いバージョンのtmuxで動作しなくなったら面倒なので.tmux.confをいじるのはやめておいた。




