Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # usuariosLin.sh
- # angeldp
- ############################################
- ## Script que se encarga de crear usuarios##
- ## Sin utilizar los comandos useradd ##
- ############################################
- clear
- #Con la funcion error la creamos para que si queremos llamarla alguna vez que supongamos que
- #pueda producirse un error
- function error(){
- clear
- echo "Se a producido un error"
- echo "Se finalizará el Script"
- exit
- }
- #Creamos una funcion llamada ordenar que lo que hace es coger del archivo que nosotros
- #llamemos, corte el campo 3 y lo ordene de menor a mayor y que quite el ultimo numero que no
- #vale y después con el mismo nombre lo que hacemos es que al último número le sume uno más.
- function ordenar(){
- ORDENUID=`more $1 | cut -d":" -f3 | sort -n | tail -2 | head -1`
- ORDENUID=`expr $ORDENUID + 1`
- }
- #Comprobamos que /etc/passwd exite el fichero para empezar el Script y si no existe llamamos
- #a la función error para que salga del Script
- if [ -f /etc/passwd ]
- then
- echo "Introduzca el nombre de usuario"
- read USUARIO
- else
- error
- fi
- #Se comprueba con la variable USU que busque a ver si tiene algún usuario en el Sistema que se llama igual que el usuario
- USU=`more /etc/passwd | grep "^${USUARIO}:" | cut -d: -f1`
- #En caso de que hubiese un usuario en el sistema con el mismo nombre que
- # el usuario introducido en este Script daria un error y saldria del Script.
- if [ "${USU}" == "${USUARIO}" ]
- then
- echo "El usuario ya existe, se finalizará el Script"
- exit
- fi
- echo "Introduzca una contraseña encriptada o una (x)"
- read CONTRASENA
- echo "El identificador de usuario (UID) se añadirá automáticamente"
- echo "El identificador de grupo (GID) se correspone con el grupo $USUARIO"
- echo "Los comentarios no se añadirán"
- echo "La ruta al directorio personal es:/home/$USUARIO"
- echo "la shell es: /bin/bash"
- #Llamamos a la variable ordenar para que se ejecute con el archivo /etc/passwd
- ordenar /etc/passwd
- #Introducimos los datos recogidos a /etc/passwd para que se cree el usuario
- echo "$USUARIO:$CONTRASENA:$ORDENUID:$ORDENUID::/home/$USUARIO:/bin/bash" >> /etc/passwd
- echo "Pulse una tecla para proceder a la creación del grupo"
- read -n1 -s NADA
- clear
- #Empezamos la creación del grupo
- echo "Se procede a crear el grupo al que se va a añadir el usuario"
- echo "El nombre del grupo es $USUARIO"
- echo "Introduzca una contraseña encriptada o una (x)"
- read $CONTRASENA1
- echo "El identificador de grupo se añadirá automáticamente"
- #Para que cree el grupo con un GID que no existe comprobamos de nuevo ordenando los GId que
- #hay y eleguimos un número más del ultimo creado
- GID=`more /etc/group | cut -d: -f3 | sort -n | tail -2 | head -1`
- GID=`expr $GID + 1`
- echo "La lista de usuarios será el usuario añadido anteriormente"
- #Pasamos los datos introducidos al archivo en el que se encuentran los grupos del sistema
- echo "$USUARIO:$CONTRASENA1:$GID:$USUARIO" >> /etc/group
- echo "El usuario y el grupo se han creado correctamente podrá ver los usuarios en /etc/passwd"
- echo "Y los grupos en /etc/group"
- echo "Pulse una tecla para finalizar el Script"
- read -n1 -s BASURA
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement