Se trata de crear un árbol de directorios,
Y tengo estas condiciones:
a. Los profesores solamente pueden entrar en los Dpto. donde tengan carga docente. Los permisos que tendrán serán de lectura, escritura y ejecución.
b. Los profesores únicamente podrán acceder a aquellos módulos que impartan con permisos de lectura, escritura y ejecución además de la carpeta public de aquellos ciclos donde impartan con los mismos permisos.
c. Los alumnos solamente podrán acceder a los módulos de los ciclos que reciban clase con el permiso de lectura.
d. En las carpetas public ya sean generales a los ciclos como pertenecientes a algún nivel (1º o 2º), solamente podrán escribir los delegados de cada clase y los profesores que impartan docencia en dichos ciclos.
yo lo he planteado de manera que he creado varios grupos:
- ProfesoresDistancia
- ProfesoresPresencial
- Profesores
- Alumnos
- Delegados
Con la idea de que cualquier profesor de distancia también lo sea del grupo profesores e igual con los de presencial, para solucionar el primer punto de las condiciones ya que en el enunciado pone que puede haber profesores que impartan en los dos departamentos.
Luego he creado una serie de usuarios de prueba, en definitiva este es el script que me he hecho para esta tarea (mi segundo script en Linux, supongo que será muy mejorable ):
Código:
#! /bin/tcsh
# creamos los grupos
sudo groupadd profesores
sudo groupadd delegados
sudo groupadd alumnos
# creamos los usuarios
#la contraseña de cualquier usuario será: usuario
# empezamos con los profesores
echo "Creando usuario profeFOLpre"
sudo useradd -g profesores -d /home/profeFOLpre -m profeFOLpre
sudo passwd profeFOLpre
echo "Creando usuario profeSIpre"
sudo useradd -g profesores -d /home/profeSIpre -m profeSIpre
sudo passwd profeSIpre
echo "Creando usuario profePROGdist"
sudo useradd -g profesores -d /home/profePROGdist -m profePROGdist
sudo passwd profePROGdist
# usuarios alumnos
echo "Creando usuario alumPepePrimero"
sudo useradd -g alumnos -d /home/alumPepePrimero -m alumPepePrimero
sudo passwd alumPepePrimero
echo "Creando usuario alumJuanSegundo"
sudo useradd -g alumnos -d /home/alumJuanSegundo -m alumJuanSegundo
sudo passwd alumJuanSegundo
# usuarios delegados
# usamos -G en las siguientes ordenes para indicar que el delegado
# que creamos esta a la misma vez en el grupo alumnos y el grupo delegados
echo "Creando usuario delegadoPrimero"
sudo useradd -g delegados -G alumnos -d /home/delegadoPrimero -m delegadoPrimero
sudo passwd delegadoPrimero
echo "Creando usuario delegadoSegundo"
sudo useradd -g delegados -G alumnos -d /home/delegadoSegundo -m delegadoSegundo
sudo passwd delegadoSegundo
A la hora de ponerme a asignar permisos he hecho esto, ejecutado desde las ubicaciones adecuadas para cada caso:
Código:
#! /bin/tcsh
# creamos los grupos
sudo groupadd profesores
sudo groupadd delegados
sudo groupadd alumnos
# creamos los usuarios
#la contraseña de cualquier usuario será: usuario
# empezamos con los profesores
echo "Creando usuario profeFOLpre"
sudo useradd -g profesores -d /home/profeFOLpre -m profeFOLpre
sudo passwd profeFOLpre
echo "Creando usuario profeSIpre"
sudo useradd -g profesores -d /home/profeSIpre -m profeSIpre
sudo passwd profeSIpre
echo "Creando usuario profePROGdist"
sudo useradd -g profesores -d /home/profePROGdist -m profePROGdist
sudo passwd profePROGdist
# usuarios alumnos
echo "Creando usuario alumPepePrimero"
sudo useradd -g alumnos -d /home/alumPepePrimero -m alumPepePrimero
sudo passwd alumPepePrimero
echo "Creando usuario alumJuanSegundo"
sudo useradd -g alumnos -d /home/alumJuanSegundo -m alumJuanSegundo
sudo passwd alumJuanSegundo
# usuarios delegados
# usamos -G en las siguientes ordenes para indicar que el delegado
# que creamos esta a la misma vez en el grupo alumnos y el grupo delegados
echo "Creando usuario delegadoPrimero"
sudo useradd -g delegados -G alumnos -d /home/delegadoPrimero -m delegadoPrimero
sudo passwd delegadoPrimero
echo "Creando usuario delegadoSegundo"
sudo useradd -g delegados -G alumnos -d /home/delegadoSegundo -m delegadoSegundo
sudo passwd delegadoSegundo
Total que he llegado hasta aqui:
como podeis ver he conseguido que en las carpetas donde esta el usuario del profesor de su asignatura correspondientes los otros (que podian ser los alumnos entre con permiso de solo lectura, pero no se como llegar mas hallá, hacer lo de los delegados).
Espero que me podaís ayudar, si el planteamiento inicial con los grupos es el correcto, y como puedo asignar permisos diferentes a usuarios de otro grupo sobre la misma carpeta, si esto no se puede hacer supongo que mi planteamiento inicial es incorrecto. Gracias