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

Encore des problèmes avec le software suspend

2 réponses
Avatar
François Valenduc
Bonsoir à tous,

Je croyais avoir réussi à faire fonctionner le software suspend sur mon
portable ACER mais je suis confronté à un problème pour le moins
étrange. En fait, si je lance directement la commande hibernate pour
mettre mon portable en veille, l'ordi se plante complètement et le
message "unregister netdevice waiting for eth0 to become free" se répète
indéfiniment. Il m'avait alors été conseillé de stopper tous les
services liés au réseau et ensuite de lancer la commande hibernate.

J'ai donc réussi à identifier tous les services à stopper au préalable
et je lance donc les commandes /etc/rc.d/init.d/smb stop (et idem pour
sshd, webmin, tmdns, ntpd, netfs, internet et network). Ensuite, je peux
lancer la commande hibernate et mon portable se met en veille
correctement. J'ai donc crée un script qui ressemble à ceci;
#!/bin bash
/etc/rc.d/init.d/smb stop
...
hibernate
Mais, même si je mets dans ce script les mêmes commandes que celle que
je tape manuellement et que je les place dans le même ordre, lorsque je
l'exécute, j'ai droit au même blocage et au message "unregister...". Je
trouve çà extrêmement étrange.Serait-il possible que si les commandes
sont exécutées via un script, elles le soient trop rapidememnt pour que
la carte réseau soit effectivement libérée, ce qui bloquerait la
suspension ? Dans ce cas, y aurait-il un moyen d'y remédier en
introduisant une pause quelque part ?


Merci d'avance pour vois conseils.
--
François Valenduc

Mon adresse e-mail est bien sur truquée
Enlever le deuxième c à la fin et mettre un point après francois pour me
répondre

2 réponses

Avatar
J. Mayer
On Fri, 05 Dec 2003 00:45:06 +0100, François Valenduc wrote:

Bonsoir à tous,

Je croyais avoir réussi à faire fonctionner le software suspend sur mon
portable ACER mais je suis confronté à un problème pour le moins
étrange. En fait, si je lance directement la commande hibernate pour
mettre mon portable en veille, l'ordi se plante complètement et le
message "unregister netdevice waiting for eth0 to become free" se répète
indéfiniment. Il m'avait alors été conseillé de stopper tous les
services liés au réseau et ensuite de lancer la commande hibernate.

J'ai donc réussi à identifier tous les services à stopper au préalable
et je lance donc les commandes /etc/rc.d/init.d/smb stop (et idem pour
sshd, webmin, tmdns, ntpd, netfs, internet et network). Ensuite, je peux
lancer la commande hibernate et mon portable se met en veille
correctement. J'ai donc crée un script qui ressemble à ceci;
#!/bin bash
/etc/rc.d/init.d/smb stop
...
hibernate
Mais, même si je mets dans ce script les mêmes commandes que celle que
je tape manuellement et que je les place dans le même ordre, lorsque je
l'exécute, j'ai droit au même blocage et au message "unregister...". Je
trouve çà extrêmement étrange.Serait-il possible que si les commandes
sont exécutées via un script, elles le soient trop rapidememnt pour que
la carte réseau soit effectivement libérée, ce qui bloquerait la
suspension ? Dans ce cas, y aurait-il un moyen d'y remédier en
introduisant une pause quelque part ?


C'est possible. Essaye de rajouter un
sleep 1 ;
(ou plus) après ta série de stop...

Avatar
François Valenduc
On Fri, 05 Dec 2003 00:45:06 +0100, François Valenduc wrote:


Bonsoir à tous,

Je croyais avoir réussi à faire fonctionner le software suspend sur mon
portable ACER mais je suis confronté à un problème pour le moins
étrange. En fait, si je lance directement la commande hibernate pour
mettre mon portable en veille, l'ordi se plante complètement et le
message "unregister netdevice waiting for eth0 to become free" se répète
indéfiniment. Il m'avait alors été conseillé de stopper tous les
services liés au réseau et ensuite de lancer la commande hibernate.

J'ai donc réussi à identifier tous les services à stopper au préalable
et je lance donc les commandes /etc/rc.d/init.d/smb stop (et idem pour
sshd, webmin, tmdns, ntpd, netfs, internet et network). Ensuite, je peux
lancer la commande hibernate et mon portable se met en veille
correctement. J'ai donc crée un script qui ressemble à ceci;
#!/bin bash
/etc/rc.d/init.d/smb stop
...
hibernate
Mais, même si je mets dans ce script les mêmes commandes que celle que
je tape manuellement et que je les place dans le même ordre, lorsque je
l'exécute, j'ai droit au même blocage et au message "unregister...". Je
trouve çà extrêmement étrange.Serait-il possible que si les commandes
sont exécutées via un script, elles le soient trop rapidememnt pour que
la carte réseau soit effectivement libérée, ce qui bloquerait la
suspension ? Dans ce cas, y aurait-il un moyen d'y remédier en
introduisant une pause quelque part ?



C'est possible. Essaye de rajouter un
sleep 1 ;
(ou plus) après ta série de stop...

Merci pour le truc. En fait, pour être sur que çà fonctionne, il faut

rajouter un sleep 3 entre les commandes. Maintenant, il ne me reste plus
qu'à régler un problèmes de droit pour pouvoir qu'un utilisateur
non-root puisse lancer le script qui déclenche la mise en veille. En
fait, j'ai ajouter le fichier de script dans /etc/sudoers de cette manière:
Host_Alias ICI=localhost
User_Alias ROOT_FRIENDS=francois
Cmnd_Alias SHUTDOWN = /sbin/resume ...
ROOT_FRIENDS ICI = NOPASSWD: SHUTDOWN

Avec çà, je peux lancer le script /sbin/resume sans être loggé en tant
que root mais je ne peux pas lancer les commandes qui sont dedans. J'ai
donc aussi rajouter des lignes comme
Cmnd_ALIAS STOPNETWORK=/etc/rc.d/init.d/smb
ROOT_FRIENDS ICI = NOPASSWD: STOPNETWORK
Mais même avec çà un simple utilisateur ne peut pas lancer les commandes
comme /etc/rc.d/init.d/smb stop
Cà me semble un peut étrange à moins qu'il ne soit totalement impossible
de donner la permission à un simple utilisateur de lancer des commandes
de ce genre.

--
François Valenduc

Mon adresse e-mail est bien sur truquée
Enlever le deuxième c à la fin et mettre un point après francois pour me
répondre