Questions sur l'installation et la configuration de Manjaro Linux.
Répondre

Désactivation optionnelle du beep au démarrage

#1Messageil y a 11 ans

Bonsoir,

C'est peut-être une question bête :saispas:

Le beep, normalement, m'est utile et que je souhaite le conserver par défaut.

Cependant, je voudrais le désactiver quand je sélectionne un mode de démarrage en particulier dans mon grub2 (je veux le désactiver quand je suis chez moi, et pour cet endroit-là je dois déjà désactiver déjà l'IPv6)? Est-ce qu'il existe un paramètre du kernel que je pourrais passer au boot pour désactiver le beep? Pour le moment, il faut que je pense à taper "xset -b" dans un terminal.

J'ai bien pensé aussi à utiliser tout simplement mon autostart en ajoutant cette ligne "xset -b", mais il faudrait pour cela que je charge un autostart différent en fonction du démarrage choisi. Je ne sais pas si c'est possible.

J'ai aussi pensé à blacklister pcspkr dans /etc/modprobe.d/blacklist.conf, mais même question que pour autostart: comment ne le blacklister que pour un unique mode de démarrage?

J'ai un noyau 3.4.35-1.

Merci!

Au cas où, voici l'entrée correspondante dans /boot/grub/grub.cfg (créée par copier/coller dans /etc/grub.d/40_custom, ce qui explique le 3.4.33-2 que je n'ose toucher):

menuentry 'Manjaro Linux sans IPv6' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.4.33-2-MANJARO x64-true-d5925558-0f0f-4744-9693-82acc2911d57' {
   savedefault
   load_video
   set gfxpayload=keep
   insmod gzio
   insmod part_gpt
   insmod ext2
   set root='hd0,gpt6'
   if [ x$feature_platform_search_hint = xy ]; then
     search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6  8504fc63-18b7-4b75-b233-d957164972d9
   else
     search --no-floppy --fs-uuid --set=root 8504fc63-18b7-4b75-b233-d957164972d9
   fi
   echo   'Chargement de Linux MANJARO x64…'
   linux   /vmlinuz-34-x86_64 root=UUID=d5925558-0f0f-4744-9693-82acc2911d57 ro ipv6.disable=1
   echo   'Chargement du disque mémoire initial…'
   initrd   /initramfs-34-x86_64.img
}
Dernière modification par GillesCil y a 11 ans, modifié au total 1 fois.

Désactivation optionnelle du beep au démarrage

#2Messageil y a 11 ans

:bjr:

Une solution serait de générer un grub.cfg avec le paramètre GRUB_INIT_TUNE en commentaire, un autre en le décommentant, et de faire un diff des deux fichiers, voir si qqch change.

Désactivation optionnelle du beep au démarrage

#3Messageil y a 11 ans

si j'ai bien compris:
-chez toi: pas d'IPV6 et pas de beep
-ailleurs: IPV6 et beep

ma foi, pourquoi trifouiller le Grub pour générer une entrée supplémentaire pour ça ? ça peut être bien plus simple, et sans aucune intervention de ta part au démarrage (100% automatique).
il suffit de faire un script qui détermine si tu es chez toi ou pas, et qui en fonction de ça, active ou désactive beep et IPV6; tu vas me dire, comment le script peut-il détecter si tu es chez toi ? très simple il y a une chose que tu as chez toi et pas ailleurs: ton réseau et surtout ton wifi...
le script fait un "iwlist wlan0 scan", détecte les ESSID des réseaux présents, et s'il trouve le tien, il désactive tout...
l'avantage, c'est que tu n'as rien à faire, c'est automatique.

d'ailleurs, pour l'IPV6, ça pourrait se gérer dans Network-manager ou Wicd, pas besoin d'autre chose.

si ça te tente, on voit comment faire ce script...

Désactivation optionnelle du beep au démarrage

#4Messageil y a 11 ans

Salut Loubrix :bjr:

On voit tout de suite le spécialiste à l’œuvre :clap

Désactivation optionnelle du beep au démarrage

#5Messageil y a 11 ans

@Loubrix : j'ai essayé pas mal de méthodes pour désactiver l'IPv6 de manière (semi-automatique), mais simplement désactiver via les options du noyau est le plus simple que j'aie trouvé;

Pas mal l'idée du script :clap ... mais en général (du genre 99,9% du temps...) je suis connecté en filaire, et le wifi n'est même pas activé.

Y aurait-il une requête qui me permette de connaître précisément le nom de mon routeur? Ce ne serait pas plus simple? Un route-e ne me renvoie que livebox.home, pas assez précis, à moins que je ne choisisse de désactiver l'IPv6 à chaque fois que je vais chez quelqu'un qui a une livebox, mais pourquoi pas après tout?

Désactivation optionnelle du beep au démarrage

#6Messageil y a 11 ans

En plus, même l'adresse IP externe doit changer... Sauf si elle est fixe chez toi, auquel cas ce serait "facile".

Désactivation optionnelle du beep au démarrage

#7Messageil y a 11 ans

Àprès réflexion et quelques recherches, j'ai bien mieux: l'adresse MAC du routeur, renvoyée par

arp -a
. Mais un souci me taraude: est-il nécessaire d'avoir établi la connexion pour avoir cette information, et dans ce cas faut-il la couper, puis la réactiver pour « débrancher » l'IPv6?

Désactivation optionnelle du beep au démarrage

#8Messageil y a 11 ans

Intéressant, oui. :bien

Par contre, il faudrait aussi que le script soit lancé avant le démarrage.

Désactivation optionnelle du beep au démarrage

#9Messageil y a 11 ans

pour le beep, tu peux ajouter ceci dans ton /etc/rc.local

# a remplacer par la bonne adresse mac
MAC="e0:a1:d7:01:bf:e4"

ARPA=$( arp -a | awk '{print $4}' )

if [ $ARPA == $MAC ]; then
     xset -b off
else
     xset -b on
fi

et donc, tu fais un "arp -a" pour connaitre l'adresse MAC de ta box, et mettre la bonne valeur au début du script.

pour l'ipv6, c'est un peu plus compliqué, parce que c'est inclus au noyau; on peut effectivement le désactiver en mettant "ipv6.disable=1" sur la ligne de commande du noyau, mais ça n'empêchera pas des applications tierces de lancer des requêtes en ipv6.
la méthode la plus simple reste celle de Netwok-manager; pour chaque point d'accès ethernet (ex: "connexion filaire 1"), tu as une configuration distincte, et quand tu cliques sur "modifier", tu vas dans l'onglet "ipv6" et tu le désactives.

Désactivation optionnelle du beep au démarrage

#10Messageil y a 11 ans

Loubrix a écrit :pour le beep, tu peux ajouter ceci dans ton /etc/rc.local

# a remplacer par la bonne adresse mac
MAC="e0:a1:d7:01:bf:e4"

ARPA=$( arp -a | awk '{print $4}' )

if [ $ARPA == $MAC ]; then
     xset -b off
else
     xset -b on
fi

et donc, tu fais un "arp -a" pour connaitre l'adresse MAC de ta box, et mettre la bonne valeur au début du script.


Merci pour le script; c'est bien à peu près ce que j'avais en tête, mais il m'aurait fallu probablement pas mal de temps pour y arriver!

pour l'ipv6, c'est un peu plus compliqué, parce que c'est inclus au noyau; on peut effectivement le désactiver en mettant "ipv6.disable=1" sur la ligne de commande du noyau, mais ça n'empêchera pas des applications tierces de lancer des requêtes en ipv6.
la méthode la plus simple reste celle de Netwok-manager; pour chaque point d'accès ethernet (ex: "connexion filaire 1"), tu as une configuration distincte, et quand tu cliques sur "modifier", tu vas dans l'onglet "ipv6" et tu le désactives.

J'avais bien pensé à ça aussi, mais tous les réseaux auxquels je me connecte sont en DHCP (même à la maison: j'ai parfois jusqu'à 4, voire 5 machines qui se connectent simultanément et vont et viennent). Je n'ai donc qu'un seul point d'accès ethernet...

PS : Peu importe que des applications tierces tentent de lancer des requêtes en IPv6. Le problème des livebox est qu'elles semblent les accepter, mais (de mémoire) renvoient des codes erronés. Bref, tout part dans des boucles de dialogues de sourds. En désactivant l'IPv6 au niveau de mon système, les applications jettent l'éponge plus vite, et je n'ai pas besoin de rafraîchir 4 fois chaque page Web que je consulte...

Désactivation optionnelle du beep au démarrage

#11Messageil y a 11 ans

Petite correction: il faut faire xset b on (et respectivement xset b off)

Désactivation optionnelle du beep au démarrage

#12Messageil y a 11 ans

oui, c'est vrai, le tiret se met uniquement quand l'option est utilisée seule (encore un soft qui respecte pas les habitudes):

# a remplacer par la bonne adresse mac
MAC="e0:a1:d7:01:bf:e4"

ARPA=$( arp -a | awk '{print $4}' )

if [ $ARPA == $MAC ]; then
     xset b off
else
     xset b on
fi

pour l'ipv6, évidemment, si on trouve une ligne de commande pour le désactiver, on peut l'ajouter dans le script (en dessous de "xset b off"); mais ce n'est pas simple...

edit: tu peux toujours essayer comme ça:

# a remplacer par la bonne adresse mac
MAC="e0:a1:d7:01:bf:e4"

ARPA=$( arp -a | awk '{print $4}' )

if [ $ARPA == $MAC ]; then
     xset b off
     echo '1' > /proc/sys/net/ipv6/conf/all/disable_ipv6 && systemctl restart NetworkManager.service
else
     xset b on
fi


edit: et puis il faut ré-activer le rc.local, voir ici

Désactivation optionnelle du beep au démarrage

#13Messageil y a 11 ans

Avec un peu de retard: merci, je vais essayer ça demain. Je me disais bien aussi que je devais faire quelque chose de travers!

Désactivation optionnelle du beep au démarrage

#14Messageil y a 11 ans

En parlant de bip moi j'en est un très agacent. Il se fait entendre lorsque que je clic sur déconnexion( XFCE) je peu utiliser la même astuce ?

Désactivation optionnelle du beep au démarrage

#15Messageil y a 11 ans

si c'est bien un bip système, et que tu veux le désactiver de façon permanente, tu peux te contenter de mettre la commande "xset b off" dans "applications au démarrage"
Répondre