#!/bin/sh # $Id: init,v 1.3 2004/03/16 01:43:45 zal Exp $ # # Script to remove stale screen named pipes on bootup. # ### BEGIN INIT INFO # Provides: screen-cleanup # Required-Start: $remote_fs # Required-Stop: $remote_fs # Default-Start: S # Default-Stop: # Short-Description: screen sessions cleaning # Description: Cleans up the screen session directory and fixes its # permissions if needed. ### END INIT INFO set -e test -f /usr/bin/screen || exit 0 SCREENDIR=/run/screen case "$1" in start) if test -L $SCREENDIR || ! test -d $SCREENDIR; then rm -f $SCREENDIR mkdir $SCREENDIR chown root:utmp $SCREENDIR [ -x /sbin/restorecon ] && /sbin/restorecon $SCREENDIR fi find $SCREENDIR -type p -delete # If the local admin has used dpkg-statoverride to install the screen # binary with different set[ug]id bits, change the permissions of # $SCREENDIR accordingly BINARYPERM=`stat -c%a /usr/bin/screen` if [ "$BINARYPERM" -ge 4000 ]; then chmod 0755 $SCREENDIR elif [ "$BINARYPERM" -ge 2000 ]; then chmod 0775 $SCREENDIR else chmod 1777 $SCREENDIR fi ;; stop|restart|reload|force-reload) ;; esac exit 0