Windows Subsystem for Linux (WSL) でscreenを動かす


このエントリーをはてなブックマークに追加

現象

Windows Subsystem for Linux (WSL) で動かしているUbuntu 16.04にてscreenを動かそうとすると以下のエラーが出ました。

$ screen
Cannot make directory '/var/run/screen': 許可がありません

解決策1 (推奨)

screenが使用するディレクトリを環境変数で指定する方法があります。例えば~/.screendirをそのディレクトリとして指定するとします。以下のコマンドでディレクトリを用意します。

$ mkdir ~/.screendir
$ chmod 700 ~/.screendir

そして、以下に示す環境変数の指定を、.bashrcや.zshrcなどに書けばOKです。

export SCREENDIR=$HOME/.screendir

解決策2 (非推奨)

ベストではない解決策としては/var/run/screenディレクトリを作成する方法があります。

$ sudo mkdir /var/run/screen
$ sudo chmod 777 /var/run/screen

この方法で一時的にscreenを使うようになりますが、OSを再起動すると/var/run/screenディレクトリが消えてしまうので、根本的な解決にはなっていません。

参考URL