Talvez eu esteja sentindo falta de algo, mas por que excluir e recriar o usuário, se tudo que você quer é limpar o diretório inicial?
Você não pode simplesmente fazer um
rsync -a --delete /etc/skel/ /home/student/
sempre que um usuário faz logout?
Talvez também mate todos os processos do usuário, se houver, mas é isso.
UPDATE: Para mudar o dono dos arquivos, você deve simplesmente executar
chown -R student:student /home/student/*
após o rsync.
Eu duvido que as permissões tenham que ser mudadas, mas se assim for, você terá que fazer isso arquivo por arquivo, algo como
chmod +x /home/student/bin/*