UP | HOME

S-username must have mode 700.

目次

1 エラー

screen をインストールし、実行すると以下のエラーが出る

# apt-cyg install screen
# screen
Directory /tmp/uscreens/S-username must have mode 700.

2 原因

screen-4.1.0-cygwin-sock-permission.patch が反映されていない。

3 対処方法

screen v4.2.1 1 をソースから持ってきて、screen-4.1.0-cygwin-sock-permission.patch を当てて、インストールする。

# apt-cyg install gcc4 autoconf automake libncurses-devel
# mkdir ~/tmp
# cd ~/tmp
# wget http://git.savannah.gnu.org/cgit/screen.git/snapshot/v.4.2.1.tar.gz
# tar xzvf v.4.2.1.tar.gz
# cd v.4.2.1/patches
# wget https://gist.githubusercontent.com/pasela/3401354/raw/4357422e6589ed2bef5a40deb9244ae05ab7057a/screen-4.1.0-cygwin-sock-permission.patch
# cd ~/tmp/v.4.2.1/src
# patch -u screen.c < ../patches/screen-4.1.0-cygwin-sock-permission.patch
# ./autogen.sh
# ./configure --enable-colors256
# cp Makefile Makefile.orig
# emacs -Q Makefile
# diff Makefile.orig Makefile
89c89
<       -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
---
>       -chown username $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
# mkdir /usr/lib/terminfo/s
# cp ./terminfo/screencap /usr/lib/terminfo/s/
# make
# make install
# screen -v
Screen version 4.02.01 (GNU) 28-Apr-14
# screen

4 環境

  • Windows 7 64bit
  • gnupackdevel-13.06-2015.11.08
  • Screen version 4.03.01 (GNU) 28-Jun-15

5 参考

脚注:

1

最新の v4.3.1 だと make で以下のように出力され失敗する(解決方法不明)。

utmp.c:634:4: エラー: ‘ struct utmp ’ は ‘ ut_tv ’ という名前のメンバを持っていません
 u->ut_tv.tv_sec = now;
  ^
Makefile:82: ターゲット 'utmp.o' のレシピで失敗しました
make: *** [utmp.o] エラー 1

著者: clothoid

Created: 2021-10-09 Sat 11:11

Validate