Tâche #21270
Scénario #21165: Traitement express MEN (37-39)
Scribe 2.5 suite migration Erreur logon
Description
Nous avons avons des Scribes 2.5.2 qui suite à des migrations de fin d'année présentent le symptôme :
---------
Machine à l’ouverture de session tombe systématique dans le groupe esu :
grp_eole
Le Nom Machine n'est pas remontée dans le main.log
Le test_port test_port_user" self.logon : Passage 0 => timed out
-------
erreur dans /var/log/samba/log.smbd
Traceback (most recent call last):
File "/usr/share/eole/fichier/dyn-logon.py", line 70, in main
logon(user, ostype, machine, adresse_ip, pid)
File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 124, in logon
gen_ftpdir(uid, homedir, shares)
File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 217, in gen_ftpdir
create_ftpsymlink()
File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 211, in create_ftpsymlink
symlink(share['path'], join(ftpdir, share['name']))
OSError: [Errno 17] File exists
-----
fichier cores dans /var/log/samba/
Script utilisateur dans /home/netlogon @vide pour 2 scribes.
Révisions associées
gérer les liens symboliques cassés dans le répertoire .ftp (ref #21270)
ajout d'un test pour les liens cassés (ref #21270)
gérer le cas ou le fichier .distribues est autre chose qu'un fichier (ref #21270)
modification des tests pour refleter les nouveaux comportements (ref #21270)
Gestion des liens symboliques brisés dans les répertoires ".ftp" et ".distribues"
Ref: #21270 (cherry-pick from 2.5.2 commits)
Gestion des liens symboliques brisés dans les répertoires ".ftp" et ".distribues"
Ref: #21270 (cherry-picked from 2.5.2 commits)
Historique
#1 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
- Tracker changé de Demande à Tâche
- Statut changé de Nouveau à En cours
- Assigné à mis à Emmanuel GARETTE
- Temps estimé mis à 3.00 h
- Tâche parente mis à #21165
- Restant à faire (heures) mis à 3.0
Pour reproduire :
root@scribe:~# rm /home/p/prenom.eleve112/.ftp/c31 rm : supprimer lien symbolique '/home/p/prenom.eleve112/.ftp/c31' ? y root@scribe:~# ln -s /pouet /home/p/prenom.eleve112/.ftp/c31 root@scribe:~# /usr/share/eole/fichier/dyn-logon.py -u prenom.eleve112 -o vista -m pouet -i 1.1.1.1 -p 10 Traceback (most recent call last): File "/usr/share/eole/fichier/dyn-logon.py", line 70, in main logon(user, ostype, machine, adresse_ip, pid) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 124, in logon gen_ftpdir(uid, homedir, shares) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 217, in gen_ftpdir create_ftpsymlink() File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 211, in create_ftpsymlink symlink(share['path'], join(ftpdir, share['name'])) OSError: [Errno 17] File exists None [Errno 17] File exists root@scribe:~#
#2 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
Pour aller plus loin, le lien ne devrait pas être créé si le répertoire de destination n'existe pas :
root@scribe:~# rm -rf /home/workgroups/c31 root@scribe:~# /usr/share/eole/fichier/dyn-logon.py -u prenom.eleve112 -o vista -m pouet -i 1.1.1.1 -p 10 root@scribe:~# ls -ald /home/p/prenom.eleve112/.ftp/c31 lrwxrwxrwx 1 root root 20 sept. 8 14:49 /home/p/prenom.eleve112/.ftp/c31 -> /home/workgroups/c31
#3 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
- % réalisé changé de 0 à 100
- Restant à faire (heures) changé de 3.0 à 0.25
Les 2 cas sont traités.
#4 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
- % réalisé changé de 100 à 90
- Restant à faire (heures) changé de 0.25 à 1.0
Commit fait dans un branche à partir de 2.5.2.
Voir sur quelle version on backport.
#5 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
Backport fait en 2.5.2, a faire en 2.6.0 et 2.6.1.
#6 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
Autre problème constaté :
File "/usr/share/eole/fichier/dyn-logon.py", line 77, in main logon(user, ostype, machine, adresse_ip, pid) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 128, in logon gen_devdir(user, uid, homedir, userclass) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 191, in gen_devdir symlink(dev_dist_dir, link) OSError: [Errno 17] File exists
#7 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
J'ai eu du mal a reproduire ...
Il faut que .distribues soit un répertoire et non un fichier :
# rm -f /home/p/prof.6a/devoirs/.distribues # mkdir /home/p/prof.6a/devoirs/.distribues # /usr/share/eole/fichier/dyn-logon.py -u prof.6a -o vista -m pouet -i 1.1.1.1 -p 10 Traceback (most recent call last): File "/usr/share/eole/fichier/dyn-logon.py", line 70, in main logon(user, ostype, machine, adresse_ip, pid) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 128, in logon gen_devdir(user, uid, homedir, userclass) File "/usr/lib/python2.7/dist-packages/scribe/login.py", line 194, in gen_devdir symlink(dev_dist_dir, link) OSError: [Errno 17] File exists
#8 Mis à jour par Emmanuel GARETTE il y a presque 7 ans
Correction fait pour ce nouveau cas, reste à voir le backport
#9 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- % réalisé changé de 90 à 100
- Restant à faire (heures) changé de 1.0 à 0.25
- scribe-backend 2.6.1-12
- scribe-backend 2.6.0-17
- (scribe-backend 2.5.2-32)
- http://jenkins.eole.lan/jenkins/job/2.6.1/job/test-moduletests-amonecole-2.6.1-amd64/122/
- http://jenkins.eole.lan/jenkins/job/2.6.1/job/test-moduletests-scribe-2.6.1-amd64/135/
- http://jenkins.eole.lan/jenkins/job/2.6.0/job/test-moduletests-scribe-2.6.0-amd64/156/ (NB : pas d'AmonEcole en 2.6.0)
- http://jenkins.eole.lan/jenkins/job/2.5.2/job/test-moduletests-amonecole-2.5.2-amd64/59/
- http://jenkins.eole.lan/jenkins/job/2.5.2/job/test-moduletests-scribe-2.5.2-amd64/60/
#10 Mis à jour par Scrum Master il y a plus de 6 ans
- Statut changé de En cours à Résolu
#11 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Statut changé de Résolu à Fermé
- Restant à faire (heures) changé de 0.25 à 0.0