玄箱Pro Debianにscreenをインストールする
screenが便利だよと教えてもらってAtomマシン(FreeBSD)ではscreenを使うようにしていたので、どうせなら玄箱Pro(debian)でも使えるようにしようとインストールしてみた。
インストールはapt-getで
# apt-get install screen
でOK。
ホームディレクトリに.screenrcを作成して
defencoding utf-8 encoding utf-8 utf-8 escape ^z^z autodetach on caption always "%{= wg} %-w%{=bu dr}%n %t%{-}%+w %= %{=b wb}%y/%m/%d(%D) %{=b wm}%c" startup_message off vbell off
試しに一般ユーザでscreenを起動してみるとエラーらしきメッセージが出てscreenに入れない。
No more PTYs. Sorry, could not find a PTY.
rootでも.sreenrcを作成してやってみたらscreenに入れるようなのでパーミッション関係の問題らしい。
ググって見てみると解決するのに次の2種類のものがあった。
- /etc/fstabにある/dev/ptsのmodeを620にする方法。
- /dev/ptmxのパーミッションを666に変更する方法
前者についてはデフォルトで
devpts /dev/pts devpts gid=5,mode=622 0 0
こんな感じだったので問題なさそうなので後者の設定変更を試した
# chmod 666 /dev/ptmx
これで一般ユーザでもscreenを起動できるようになりました。
screenを使うと得られるメリットはWikipediaの項目でも見てもらえばわかると思います。
sshの接続が突然切れても、sshを再接続後にscreenのPIDを調べて
# screen -r %PID%
とすると、接続が切れる直前の状態で再接続できる。長時間かかるカーネルのコンパイルなどで不慮の切断なんかにも対応できるようです。
引っ越し以来無線LANが時々切れることがあるので重宝してます。