Estoy ayudando a enseñar dos cursos de Unix la próxima semana. A los usuarios se les otorgará una cuenta en una máquina RHEL 5, durante la cual agregarán archivos a su /home
carpeta, actualizarán sus .bashrc
y otros archivos de puntos y realizarán otros desordenes generales que deben limpiarse.
Los estudiantes en la segunda sesión reutilizarán las cuentas de usuario de las personas en la primera sesión. Me gustaría automatizar la limpieza de sus cuentas, para que los nuevos usuarios puedan comenzar de nuevo.
Estoy seguro de que podría escribir un script de shell que ejecute su -u $USER_ID
ay establezca un conjunto "original" de buenos archivos en su homedir, y elimine todo lo que encuentre. ¿Hay otras herramientas que me ayudarán con esta operación de limpieza / reinicio? No tengo ninguna experiencia con Puppet, Chef u otras herramientas. ¿Serían útiles para hacer algo como esto?
Para proporcionar un alcance del problema, hay alrededor de 30 cuentas de usuario, conozco todos los ID de usuario / contraseñas, y todos están creados en el mismo cuadro RHEL.
fuente
Respuestas:
Hay muchas maneras que ayudarían:
/etc/skel
nuevo al homedir. Cambiar los permisos después.tar
el directorio de inicio antes de la lección, eliminar el inicio después, restaurar desdetar
Y aprender otras herramientas como Puppet / Chef es un poco demasiado si quieres resultados la próxima semana.
fuente
tar
y restauraré, y trataré de aprender una herramienta como Puppet cuando no esté en apuros.Digamos que todos sus estudiantes tenían un UID entre 1000 y 65000
Una frase rápida como esta funcionaría. Awk imprimirá un comando rsync y un comando chown para cada usuario en el rango. Enviar la salida del awk a bash ejecutará todos los comandos para restablecer directorios y permisos.
fuente
Si está utilizando gdm para su administrador de inicio de sesión, puede agregar algo como este archivo: / etc / gdm / PostSession / Default
fuente
El conjunto "original" de archivos de cuenta generalmente se encuentra en / etc / skel en sistemas unix.
Aparte de esto, no conozco ninguna herramienta para automatizar la limpieza. Probablemente termine escribiendo algún script bash simple.
fuente
Prueba esto
fuente
Puede haber alguna buena herramienta que ayude, pero probablemente solo (a) coloque las cosas deseadas en un repositorio de git, y (b) escriba un script que itere sobre los usuarios y rm las cosas deseadas y extraiga del repositorio de git .
fuente
Esto funciona para Ubuntu gnome: pico /usr/local/bin/cleanup.sh
rm -rf / home / user / Descargas / *
haz lo mismo si quieres eliminar Documentos
salga de chmod 511 /usr/local/bin/cleanup.sh
pico / etc / gdm / PostSession / Default
! / bin / bash
/usr/local/bin/cleanup.sh salida 0
fuente