#! /bin/sh #---------------------------------------------------------------------------- # remove-group - remove a group # # Copyright (c) 2001-2003 Frank Meyer <frank@eisfair.org> # # Creation: 04.11.2001 fm # Last Update: 19.07.2003 fm # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. #---------------------------------------------------------------------------- clrhome colecho "Remove group" gn echo tty=`tty` echo -e "Group to remove (e.g. 'www'): \c" read group if [ "$group" = "" ] then echo /var/install/bin/anykey exit 0 fi line=`grep "^$group:" /etc/group` if [ "$line" = "" ] then echo colecho "Group $group does not exist" br x br echo /var/install/bin/anykey exit 0 fi IFS=':' set -- $line gid=$3 if [ $gid -lt 200 -o $gid -ge 65534 ] then echo colecho "It is not allowed to remove group $group, sorry" br x br echo /var/install/bin/anykey exit 0 fi while read line do set -- $line g="$4" if [ $g = $gid ] then echo colecho "Cannot remove group $group, user $1 is member of $group" br x br echo /var/install/bin/anykey <$tty exit 0 fi done </etc/passwd grep -v "^$group:" /etc/group >/tmp/group-$$ cp /tmp/group-$$ /etc/group # cp: keep inode & permissions rm -f /tmp/group-$$ echo /var/install/bin/anykey