Solaris 10サーバでscreenを使ってみる その2
かなり時間が経ってしまいましたがその1の続きです。
とりあえず使える状態にはなりましたが、実際に便利に使う際には他にもコマンドが必要です。
また、「.screenrc」という設定ファイルに、動作させる環境の情報を色々書くと便利になります。
ここでは、「.screenrc」の作成とその上での便利な使い方について書こうと思います。
なお、screenについてはこちらのように、マニアックに使おうと思えば更に出来るのですが、正直言って私は使いこなしているレベルではなく、とりあえず業務で便利に使っている程度ですので「これしか設定しないのかよ」とか思われるかもしれませんがご了承下さい*1。
.screenrcの作成
screenを実行するユーザのホームディレクトリに「.screenrc」という名前のファイルがあれば、実行時にそれを読み込んで動作させる事が出来ます。
とりあえず私は以下のような設定をしています。なお、#でコメントアウト出来ます。
#起動時のメッセージ表示をOFFにする startup_message off #文字コードをEUCに設定(これはお好みで) defencoding eucJP #画面下に「ホスト名、開いている画面の一覧、日付を表示させるようにする hardstatus alwayslastline "%{= bw}%H:%-w%{= kw}% %t%{= bw}%+w %=[%y/%m/%d %D %c]" #不意にネットワーク切断などが発生した際に自動でデタッチする(接続は保持される)ようにする autodetach on #バックスクロールできる行数 defscrollback 1000 #screenで使用するシェルをbashに shell bash
screenを日常使う方々的にはシンプルすぎると思いますがこんな感じで。
ホームディレクトリが「/home/hoge」であるhogeユーザで使用する場合、上記が記述された.screenrcというテキストファイルを、
/home/hoge/.screenrc
というように格納してやれば良いです。
ファイルが作成できた後にscreenを起動してみます。
screen
すると、以下のような画面になるはずです。下に青色の画面一覧などが表示されるようになっていますね。これで、
- 青色の帯が表示されていたらscreen使っている、という事がわかる
- 複数画面が存在したら一覧に表示される*2
という事ができるようになり、大変便利になります(デフォルトで複数画面を作成しても区別が付け辛いので)。
各種コマンドについて
screenで使用できるコマンドは色々あるようですが、これまた最小限のものしか私は使いこなせておりません。ので少ないですがつかっているものは以下の通りです。原則、
「Ctrl + A , なにかのキー」
という組み合わせになります。
動作 | コマンド | 備考 |
---|---|---|
画面の作成 | CTRL + A , C | |
画面の切替 | CTRL + A , {画面番号} | 画面番号は0〜9までが指定可能 |
画面の切替(昇順) | CTRL + A , N | |
画面の切替(降順) | CTRL + A , P | |
画面名の編集 | CTRL + A , SHIFT + A | 書いた後Enterで決定 |
デタッチ | CTRL + A , D | |
画面の削除 | CTRL + A , K |
また、起動前の状態で出来る事は以下の通りです。
動作 | キー | 備考 |
---|---|---|
デタッチしたscreenプロセスを確認 | screen -ls | |
screenセッションのアタッチ | screen -r | detachされたセッションが複数ある場合は画面で選択する |
起動時に特定の.screenrcファイル読み込み | screen -c {ファイル名} | 客先環境とかでひっそり使うときに便利 |
ではー。