Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

FreeBSD 5 + NFS + locks ?

4 réponses
Avatar
F. Senault
B'soir.

J'étais en train de gaiement vaquer à mes occupations sur une nouvelle
machine en FreeBSD 5(.3) quand un message d'erreur à la noix m'a gâché
ma soirée :

| + aclocal -I .
| autom4te: cannot lock autom4te.cache/requests with mode 2 (perhaps you
| are running make -j on a lame NFS client?): Operation not supported
| aclocal: autom4te failed with exit status: 1
| + exit 1

Alors, non, je n'utilise pas make -j, et mon client NFS, jusqu'à
aujourd'hui, m'a toujours très bien convenu.

Du coup, j'ai essayé de jouer un peu sur le client et le serveur pour
voir s'il y a moyen de mettre en place un système de locks (en fait, on
dirait que l'opération de locks n'est pas permise par NFS ?), mais que
pouic, soit je n'y arrive pas, soit ça ne sert à rien, je ne sais pas
trop.

Des pistes ? Pour préciser, le serveur est aussi en FreeBSD 5(.4). Et,
faisons fi des éventuels trolls, mais sur une NetBSD dans les mêmes
circonstances (même répertoire monté, même commande lancée), ça passe.
Hélas, ce n'est pas une solution à long terme pour moi...

Fred
--
Bien recu Tous les messages Ils disent qu'ils ont compris
Qu'il n'y a plus le choix Que l'esprit qui souffle Guidera leurs pas
Qu'arrivent les derniers temps où Nous pourrons parler
Alors soyons désinvoltes N'ayons l'air de rien (Noir Désir, Tostaky)

4 réponses

Avatar
Olivier Brisson
F. Senault schrieb:
B'soir.

J'étais en train de gaiement vaquer à mes occupations sur une nouvelle
machine en FreeBSD 5(.3) quand un message d'erreur à la noix m'a gâché
ma soirée :

| + aclocal -I .
| autom4te: cannot lock autom4te.cache/requests with mode 2 (perhaps you
| are running make -j on a lame NFS client?): Operation not supported
| aclocal: autom4te failed with exit status: 1
| + exit 1

Alors, non, je n'utilise pas make -j, et mon client NFS, jusqu'à
aujourd'hui, m'a toujours très bien convenu.

Du coup, j'ai essayé de jouer un peu sur le client et le serveur pour
voir s'il y a moyen de mettre en place un système de locks (en fait, on
dirait que l'opération de locks n'est pas permise par NFS ?), mais que
pouic, soit je n'y arrive pas, soit ça ne sert à rien, je ne sais pas
trop.

Des pistes ? Pour préciser, le serveur est aussi en FreeBSD 5(.4). Et,
faisons fi des éventuels trolls, mais sur une NetBSD dans les mêmes
circonstances (même répertoire monté, même commande lancée), ça passe.
Hélas, ce n'est pas une solution à long terme pour moi...

Fred


Bonjour Fred,

A mon avis, tu utilises une application qui gère mal la fonction
flock().

J'ai eu des problèmes similaires avec spamassassin monté via NFS.

Cordialement,

Olivier
--

Avatar
F. Senault

Bonjour Fred,

A mon avis, tu utilises une application qui gère mal la fonction
flock().


C'est GNU autoconf / automake, l'application. Un peu gênant puisque
j'essaie de partager un arbre de sources entre quatre machines, pour
tester un développement en multi-plateformes...

Fred
--
A groan of tedium escapes me, startling the fearful. Is this a test ?
It has to be, otherwise I can't go on. Draining patience, drain
vitality. This paranoid, paralyzed vampire act's a little old. But I'm
still right here, giving blood, keeping faith (Tool, The Patient)

Avatar
F. Senault

l'astuce est de truander les verrous (comme avec le serveur NFS de FriBi
4.x) ou d'avoir un démon auxiliaire rpc.lockd qui gère les verrous (il ne
semble pas démarré par défaut même sur 5.x).


J'ai essayé de lancer le rpc.lockd, mais je manque d'infos là dessus -
il est nécessaire sur le serveur, sur le client, ou sur les deux ?

Sur le serveur, j'ai essayé de mettre les variables qui vont bien dans
rc.conf, de lancer /etc/rc.d/nfslocking start, il tente bien de démarrer
le démon, qui échoue ensuite avec un message dans les logs :

vodka rpc.lockd: 100024 RPC: Program not registered

rpcinfo -s me dit :

program version(s) netid(s) service owner
100000 2,3,4 local,udp,tcp rpcbind superuser
100005 3,1 tcp,udp mountd superuser
100003 3,2 tcp,udp nfs superuser
100021 4,3,1,0 tcp,udp nlockmgr superuser

Où j'ai donc remarqué qu'il y a un lockmgr... ?

Dans /etc/rpc, j'ai un status 100024 ; je viens d'essayer à tout hasard
de rajouter rpc.lockd à côté, mais ça reste pareil.

Une idée de comment le faire marcher ?

un pis-aller est d'utiliser la variable WRKDIRPREFIX dans /etc/make.conf
pour garder une arborescence des ports sur le serveur NFS, mais compiler
sur une arborescence locale (en plus, ça peut aller plus vite).


Hélas, ce n'est pas (que) pour les ports.

TfH


Fred
--
The most horrifying thing about Unix is that, no matter how many times
you hit yourself over the head with it, you never quite manage to lose
consciousness. It just goes on and on. (Patrick Sobalvarro)

Avatar
F. Senault

Du coup, j'ai essayé de jouer un peu sur le client et le serveur pour
voir s'il y a moyen de mettre en place un système de locks (en fait, on
dirait que l'opération de locks n'est pas permise par NFS ?), mais que
pouic, soit je n'y arrive pas, soit ça ne sert à rien, je ne sais pas
trop.


Alors, pour me répondre : c'est en parcourant la doc de NetBSD (!) que
j'ai entrevu la réponse ; en plus du serveur rpc.lockd, il faut un
rpc.statd => rpc_statd_enable = "YES" suivi de rpc_lockd_enable = "YES"
dans le rc.conf, lancement sur le serveur et le client, et ça marche !

Whee !

Fred
--
You're breathing faster when you close your eyes
You seem to enter a room of delight
And I can guess what happens under your skin (Front 242,
Yes, i think i can guess what you're diving in. Body To Body)