Tâche #31124
Scénario #30934: Traitement express MEN (46-48)
Vérifier les droits dans /home/adhomes après une migration en 2.8
100%
Description
Problème remonté par le CD74 (mail du 10/11/2020) :
Les utilisateurs qui ont migré de la version 2.4 vers la version 2.7
dans /home/adhomes ont leur répertoire en 770 et en root:rootdrwxrwx---+ 8 root root 4096 nov. 3 12:53 xxxxxxxx/
Si on exécute le script /usr/share/eole/backend/droits_user.py sur l'un de ces
utilisateurs, cet utilisateur n'a plus d'accès à son home mais le prof oui.
Son répertoire est passé en 710 mais toujours en root:root.
Si nous repassons le répertoire en 770, toujours pas d'accès.
Pour avoir accès, il est nécessaire que l'utilisateur soit propriétaire de son répertoire.
Associated revisions
create_adhome : the user should be the owner of his homedir
Ref: #31124
History
#1 Updated by Joël Cuissinat almost 3 years ago
- Status changed from Nouveau to En cours
#2 Updated by Joël Cuissinat almost 3 years ago
- Assigned To set to Joël Cuissinat
#3 Updated by Joël Cuissinat almost 3 years ago
Dans le test Jenkins https://dev-eole.ac-dijon.fr/jenkins/job/2.7.1/job/test-migration27sh-acascribe-27-restauration-2.7.1-amd64/ (exemple : job n°331), le répertoire n'appartient pas à l'élève (mais il y a des ACLs qu'on ne voit pas ici) :
20:04:22 ************************************************************ 20:04:22 * Vérification des répertoires 20:04:22 ************************************************************ 20:04:22 lrwxrwxrwx 1 root root 19 nov. 18 20:04 /home/6/6b.01 -> /home/adhomes/6b.01 20:04:22 Machine aca.scribe 2.7.1 : /home/6/6b.01 est bien un lien 20:04:22 drwxrwx---+ 5 root root 4096 nov. 14 06:27 /home/adhomes/6b.01 20:04:22 Machine aca.scribe 2.7.1 : /home/adhomes/6b.01 est bien un répertoire
#4 Updated by Joël Cuissinat almost 3 years ago
Sur un aca.scribe-2.7.1.2-instance-AvecImport
, le répertoire appartient bien à l'élève :
root@scribe:~# ll /home/adhomes/6b.01 -d drwxrwx---+ 5 6b.01 root 4096 nov. 18 22:42 /home/adhomes/6b.01/
Les ACL sont les suivantes :
root@scribe:~# getfacl /home/adhomes/6b.01 getfacl : suppression du premier « / » des noms de chemins absolus # file: home/adhomes/6b.01 # owner: 6b.01 # group: root user::rwx user:6b.01:rwx group::--- group:professeurs:--x mask::rwx other::--- default:user::rwx default:user:6b.01:rwx default:group::--- default:mask::rwx default:other::---
#5 Updated by Joël Cuissinat almost 3 years ago
Sur un aca.scribe-2.6.2.2-instance-AvecImport, l'élève n'est pas propriétaire (de l'ancien répertoire) mais, il y a une ACL "user" :
root@scribe:~# ll /home/6/6a.01 -d drwxrwx---+ 5 root root 4096 nov. 14 06:27 /home/6/6a.01/ root@scribe:~# getfacl /home/6/6a.01 getfacl : suppression du premier « / » des noms de chemins absolus # file: home/6/6a.01 # owner: root # group: root user::rwx user:6a.01:rwx group::--- group:professeurs:--x mask::rwx other::--- default:user::rwx default:user:6a.01:rwx default:group::--- default:mask::rwx default:other::---
#6 Updated by Joël Cuissinat almost 3 years ago
En rejouant la procédure de migration, on voit que l'ACL est bien présente :
root@scribe:~# getfacl /home/adhomes/6b.01 getfacl : suppression du premier « / » des noms de chemins absolus # file: home/adhomes/6b.01 # owner: root # group: root user::rwx user:6b.01:rwx group::--- group:professeurs:--x mask::rwx other::--- default:user::rwx default:user:6b.01:rwx default:group::--- default:mask::rwx default:other::---
Mais, l'ajout d'un chown serait certainement mieux !
#7 Updated by Joël Cuissinat almost 3 years ago
- Status changed from En cours to Résolu
- % Done changed from 0 to 100
Suite à cette correction, la sortie affichée dans le test Jenkins devrait ressembler à ça :
drwxrwx---+ 5 6b.01 root 4096 nov. 14 06:27 /home/adhomes/6b.01/
#8 Updated by Gilles Grandgérard almost 3 years ago
- Status changed from Résolu to Fermé
- Remaining (hours) set to 0.0