screen? tmux? byobu?
screenは1つのターミナルで複数のウィンドウを開いて切り替えながら作業することができるソフトウェアです。
また似たようなものとしてbyobuやtmuxというものもあります。
それぞれの関係性がよくわからないので調べてみました。
結論
tmuxはscreenとは一切関係のないソフトウェア。screenと比較して画面分割できるのがメリット
byobuはscreenの設定を簡単に行うためのソフトウェア。標準である程度便利な設定がしてある。
実はbyobuにはtmuxの設定も用意されている。(byobu-tmuxで起動)
既にscreenやtmuxの設定を自分好みに設定している人はbyobuを使う必要はない。
ということみたいです。
以降それぞれを使うまでの設定をご紹介します。
インストール、設定方法
CentOSの場合
screen
- インストール
yum -y install screen
- 設定ファイル
vi ~/.screenrc
デフォルトのエスケープシーケンスがCTrl+bでemacsのショートカットと衝突するので、エスケープシーケンスをCtrl+aからCtrl+tに変更
escape ^t^t
- 起動方法
screen
- 基本的な使い方
Escはエスケープシーケンスの意味です。標準ではCtrl+a、上記の設定を行うとCtrl+t。エスケープキーの意味ではありません。
ショートカット | 機能 |
---|---|
Esc ? | ショートカットキーのリストを表示 |
Esc c | 新しいウィンドウを作成 |
Esc n | 次のウィンドウへ移動 |
Esc p | 前のウィンドウへ移動 |
Esc d | セッションのデタッチ |
セッションのデタッチから復帰はscreen -rで可能です。
tmux
- 依存ライブラリのインストール
yum -y install ncurses-devel yum -y install libevent-devel
- インストール
RPMForge導入済みの場合は
yum -y install tmux
ソースインストール
VERS=1.6 mkdir /usr/local/src/tmux cd /usr/local/src/tmux wget http://jaist.dl.sourceforge.net/project/tmux/tmux/tmux-$VERS/tmux-$VERS.tar.gz tar zxf tmux-$VERS.tar.gz cd tmux-$VERS ./configure make make install
- 設定ファイル
vi ~/.tmux.conf
デフォルトのエスケープシーケンスがCTrl+bでemacsのショートカットと衝突するので、エスケープシーケンスをCtrl+bからCtrl+tに変更
unbind-key C-b
set-option -g prefix C-t
bind-key C-t send-prefix
tmux-1.5/examplesにサンプルがあります。
- 起動方法
tmux
- 起動時に自動的にtmuxを起動、セッションがある場合はアタッチ
- 対話型シェルでない場合は処理をしない
- TMUXが起動済みの場合は処理をしない
- TMUXが起動しておらず、セッションリストが存在しない場合はtmuxを起動
- TMUXが起動しておらず、セッションリストが存在する場合はtmuxをアタッチ
- vi ~/.bash_profile
if [ -z "$PS1" ]; then return ; fi if [ -z $TMUX ] ; then if [ -z `tmux ls` ] ; then tmux else tmux attach fi fi
- 基本的な使い方
Escはエスケープシーケンスの意味です。標準ではCtrl+b、上記の設定を行うとCtrl+t。エスケープキーの意味ではありません。
ショートカット | 機能 |
---|---|
Esc ? | ショートカットキーのリストを表示 |
Esc c | 新しいウィンドウを作成 |
Esc n | 次のウィンドウへ移動 |
Esc p | 前のウィンドウへ移動 |
Esc w | ウィンドウの選択メニューを表示 |
Esc % | ウィンドウを左右のペインに分割 |
Esc " | ウィンドウを上下のペインに分割 |
Esc o | 次のペインへ移動 |
Esc x | ペインの破棄 |
Esc d | セッションのデタッチ |
セッションのデタッチから復帰はtmux attachもしくはtmux aで可能です。
- その他詳細
端末の中で仮想端末を管理するtmux(GNU screenの代替)について(概要・実行・操作) - 試験運用中なLinux備忘録
http://d.hatena.ne.jp/kakurasan/20100310/p1
Ubuntu Weekly Recipe:第127回 ターミナルマルチプレクサ tmuxを使ってみよう|gihyo.jp … 技術評論社
http://gihyo.jp/admin/serial/01/ubuntu-recipe/0127?page=3
Manpage of TMUX
https://bytebucket.org/ns9tks/tmux-ja/wiki/tmux-ja.html
byobu
- 数日おきに最新版がリリースされていきます。
- インストール
mkdir /usr/loca/src/byobu cd /usr/loca/src/byobu wget http://launchpad.net/byobu/trunk/4.49/+download/byobu_4.49.orig.tar.gz tar zxf byobu_4.49.orig.tar.gz cd byobu-4.49 ./configure make make install vi /usr/local/bin/byobu 先頭行に BYOBU_PREFIX=/usr/local を追加
- 起動方法
- screenを起動したい場合
byobu byobu-screen(byobuと同じ)
-
- tmuxを起動したい場合
byobu-tmux