Forum Linux.général Deadlock sur des fichiers NFS

Posté par  (site web personnel) .
Étiquettes : aucune
0
12
mar.
2008
Bien le bonjour à tous,
Je rencontre des petits problèmes avec un vieux SunOS 5.6 ;)
En fait le serveur n'a plus de baie de disque, alors ces données sont sur un point de montage NFS sur une redhat.
Et depuis quelques jours j'ai des comportements super bizarre !!!
Enfin en gros, je suis sur qu'il y a des locks sur des fichiers dans ce partage NFS et que c'est mon serveurs NFS qui me pose problème.
Bref, mais impossible de lister les fichiers qui sont en lock ?
Si quelqu'un a une idée, ça fait plus de 3 jours que je cherche, mais en vain... :(
Je vous remercie d'avance ;)
Et bonne journée ;)

CiaO ++
  • # Deadlock sur des fichiers NFS

    Posté par  (site web personnel) . Évalué à 2.

    Bien le bonjour,
    Je n'ai toujours pas résolu mon problème, mais j'ai un peu avancé, et j'ai trouvé des infos pour la Solaris.
    Malheureusement mon serveur NFS est sur une redhat, mais bon, peut-être que ces infos pourraient profiter un jour à quelqu'un :
    Sur Solaris vous pouvez voir via les commandes pstack et truss si les processus sont suspendus en état lock.

    client1% ps -eaf | grep SuperApp
    mre 23796 10031 0 11:13:22 pts/6 0:00 SuperApp
    client1% pstack 23796
    23796: SuperApp
    ff313134 fcntl (1, 7, ffbef9dc)
    ff30de48 fcntl (1, 7, ffbef9dc, 0, 0, 0) + 1c8
    ff30e254 lockf (1, 1, 0, 2, ff332584, ff2a0140) + 98
    0001086c main (1, ffbefac4, ffbefacc, 20800, 0, 0) + 1c
    00010824 _start (0, 0, 0, 0, 0, 0) + dc
    client1% truss -p 23796
    fcntl(1, F_SETLKW, 0xFFBEF9DC) (sleeping...)

    On peut utiliser la commande crash également qui pourrait être assimilé à un shell, mais avec des commandes internes du noyau afin d'examiner son état. Nous utiliserons la commande interne lck pour lock bien sur :

    spike# crash
    dumpfile = /dev/mem, namelist = /dev/ksyms, outfile = stdout
    > lck
    Active and Sleep Locks:
    INO TYP START END PROC PID FLAGS STATE PREV NEXT LOCK
    30000c3ee18 w 0 0 13 136 0021 3 48bf0f8 ae9008 6878d00
    30000dd8710 w 0 MAXEND 17 212 0001 3 8f1a48 8f02d8 8f0e18
    30001cce1c0 w 193 MAXEND -1 3242 2021 3 6878850 c43a08 2338a38

    Summary From List:
    TOTAL ACTIVE SLEEP
    3 3 0
    >

    Pour nettoyer l'état de lock :
    spike# cd /var/statmon/sm
    spike# ls
    client1 ipv4.10.1.0.25 ipv4.10.1.0.26 gonzo java

    spike# clear_locks gonzo

    Voilà, j'espère que ça pourra aidé quelqu'un un jour. C'est pas sur, mais bon...
    En tout cas, si quelqu'un sait comment lister ou même supprimer les lock sur des fichiers partagés via NFS, je suis toujours preneur.
    Pour info, je suis en Red Hat Linux release 7.2 (Enigma)

    Merci d'avance et bonne journée ;)
    • [^] # Re: Deadlock sur des fichiers NFS

      Posté par  . Évalué à 1.

      Oulah !
      RedHat 7.2, c'est un peu ancien...

      Est-ce qu'il y avait déjà strace (équivalent de truss) ?
      Tables des équivalences commandes système entre Unixes, déjà citée sur linuxfr.org : http://bhami.com/rosetta.html

      Je suppose que tu as déjà exploré les journaux système (/var/log/...)

      Tu as peut-être des paramètres noyau à revoir sur ta RedHat (Est-ce que sysctl existait déjà ? Sinon un "echo 1 >/proc/..le-paramètre-que-tu-découvrira", il me semble que /sys n'existait pas encore)

      Peut-être un autre point de vue serait de trouver ce que tu as changé sur les Sun, si le Linux n'a pas été changé. Un patch ? Un environnement réseau différent ?

      Enfin, prendre un Linux plus à jour, ça pourrait le faire aussi, d'autant que si tu as une panne grave, ta RedHat 7.2 aura du mal à reconnaître un matériel récent : sans disque dur ni carte réseau reconnue, ça ne le fait pas pour un serveur !!!
      Souvent dans les grandes entreprises, ils entreposent des PC insuffisants pour Windows 2000/XP/Vista mais encore très bien pour se faire une architecture de secours.
      Sinon, tente au moins de reconstituer ton paramétrage système avec une machine virtuelle, ta RedHat 7.2 devrait y être à l'aise (VMware, VirtualBox, QEmu...). Si tu retrouves encore les CD d'install de ta RedHat 7.2... Si tu as une documentation sur l'installation, vérifie que la part de liens vers Internet est encore valide - à sauvegarder, car tout ça disparaît d'un jour à l'autre.
    • [^] # Re: Deadlock sur des fichiers NFS

      Posté par  (site web personnel) . Évalué à 1.

      A défaut de réponse je vais me répondre à moi-même ;)
      Ca refonctionne :)
      Youhou !!!
      Je ne sais pas pourquoi !!! Youhou !!! lol :(
      Plus sérieusement, j'ai voulu arrêter mon serveur NFS pour remonter mon partage complétement, et là mon Serveur complet est tombé, j'ai du le redémarrer, j'en ai profité pour arrêter le serveur client.
      Et ça m'a supprimé tous mes locks. :)
      Pourquoi ne pas l'avoir fait avant ?? Parce que c'ést 2 serveurs en productions et que je ne pouvais pas les arrêter comme ça.
      En tous cas, merci à ceux qui ont pris la peine de lire mon problème :)
      Passez une bonne journée :)
      Que le libre soit avec vous !!!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.