I'm in the late stages of developing a Linux based computing lab for CS students at my university. In my undergraduate days I remember being able to submit my homework assignments with a command like:
submit [classname] [projectname] [source files]
which would then copy all my files to a directory students couldn't access but the instructor could.
I was imagining adding a submit user and group account, and then developing a world executable script owned by this group with the setuid bit set. Students could then execute the script which only whisked those files off somewhere as the submit user but that students couldn't get at late. Starting with this approach I've gotten hung up on the fact that my Linux distribution ignores setuid on scripts.
I would appreciate advice on approaches to solving this problem that involved:
1) Students being able to submit their own code to someplace other than their home directory. 2) Students can't see other students' submitted code. 3) Low administrative overhead (I'd like to avoid creating sets of directories for each class) 4) Does not involve a root user trouncing through directories in order to examine submissions.
Thanks for any help!