Pages : 1
#1 Le 28/06/2012, à 05:06
- Rickey0169
lsusb différentiel
modération: En raison d'un bug de MSI sous Ubuntu 11.04 et qui persiste encore sous Ubuntu 11.10 et Ubuntu 12.04, le port USB 3.0 n'est pas fonctionnel pour cette version (ce qui suit ne s'applique donc pas à Ubuntu 10.10 puisque le port USB3.0 marche avec cette version). Afin de rendre le port usb 3.0 opérationnel, il est pour l'instant nécessaire de désactiver la fonction MSI du noyau en modifiant la configuration du grub.
Ce script va donc demander à modifier votre grub de plus il n'est pas fonctionnel, il manque un "sudo update-grub" puis un redémarrage
pour retourner en arrière il faut éditer votre fichier /etc/default/grub et effacer "pci=nomsi"
_____________________________________________________________________________________________________________________________________________
Edit:
Avant toute chose:
/!\ /!\ /!\Le script suivant n'est qu'une ébauche et n'est pas fonctionnel, n'essayez même pas de le lancer car il causerait des dommages sur votre configuration quand même./!\ /!\ /!\
_____________________________________________________________________________________________________________________________________________
Bonjour à tous,
suite certains problème sur mon Alienware, je suis en train de créer un script pour régler de manière automatique (à mes risque et périls bien sûr)
L'un de mes 2 port USB 3.0 ne fonctionnait pas mais en appliquant ceci (qui est censé être fait pour les Asus!) tout est (apparemment) rentré dans l'ordre.
Je recherche un moyen pour faire un lsusb différentiel automatique [Edit]en modifiant les option de boot de grub[/Edit], je développe:
- faire un lsusb
- demander à l'utilisateur de branché un périphérique
- refaire un lsusb
- regarder si il y a un nouveau périphérique
- demander à l'utilisateur de débranché
- refaire un lsusb pour le second port
- re demander à l'utilisateur de connecter un périphérique
- refaire un lsusb
- regarder si il y à un changement
- si pas de changement ou problème détecté > action
un début de script:
# Fix de l'USB 3.0
sleep 5s
echo 'nous allons vérifier que vos port USB 3.0 fonctionnent'
sleep 5s
echo ''
echo 'je vais lancer un lsusb, regardez bien le nombre de périphérique connecté'
sleep 5s
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
sleep 10s
echo "brancher un disque dur USB 3.0 et regardez si il apparait"
sleep 5s
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
sleep 10s
echo "nous allons recommencer pour le second port USB 3.0"
echo ""
echo 'débranchez tous les périphérique usb'
echo ''
echo 'je vais lancer un lsusb, regardez bien le nombre de périphérique connecté'
sleep 5s
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
sleep 10s
echo "brancher un disque dur USB 3.0 et regardez si il apparait"
sleep 5s
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
sleep 10s
echo -n "avez-vous un port USB 3.0 non fonctionnel? Y/N : "
read ouinon
if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ]; then
sudo sed -i '/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/c GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi"\' /etc/default/grub
elif [ "$ouinon" = "n" ] || [ "$ouinon" = "N" ]; then
echo "Ok "
else
echo "Il faut taper Y ou N!! Pas $ouinon"
fi
Cordialement.
Edit:
Un peu d’explication
La commande "sed -i" sert à trouver une occurrence/expression l'option "/c" sert à remplacer cette occurrence par celle qui suit:
sed -i '/l'expression que l'on cherche/c on remplace l'expression par celle ci\' /fichier/de/sortie
si par accident vous avez lancer le script alors que l'on vous avait prévenu, editer le fichier /etc/default/grub
dans un terminal
sudo nano /etc/default/grub
ou en méthode graphique
gksudo gedit /etc/default/grub
et remplacer
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi"
par
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
lancer
sudo update-grub
et redémarrez.
Dernière modification par Rickey0169 (Le 28/06/2012, à 13:13)
Hors ligne
#2 Le 28/06/2012, à 05:23
- Compte supprimé
Re : lsusb différentiel
Bonjour,
peux-tu expliquer étape par étape ce que tu fais ici s'il-te-plaît ?
sudo sed -i '/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/c GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi"\' /etc/default/grub
Dernière modification par Compte supprimé (Le 28/06/2012, à 05:24)
#3 Le 28/06/2012, à 12:05
- Rickey0169
Re : lsusb différentiel
Bonjour,
Pour commencer, pas sur la tête S.V.P.
Je suis en train de créer un script pour régler certains problème sur mon Alienware pas de manière automatique (à mes risque et périls bien sûr).
L'un de mes 2 port USB 3.0 ne fonctionnait pas mais en appliquant ceci (qui est censé être fait pour les Asus!) tout est (apparemment) rentré dans l'ordre.
la commande:
sed -i '/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/c GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi"\' /etc/default/grub
à pour but de chercher l'expression (occurrence) avec l'option "-i " "GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" et de la remplacer (substituer) par GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi" avec l'option "/c"
je n'ai pas fais attention que j'avais mis la ligne original je voulais la remplacer par
echo "ceci est un test de l'usb 3.0" >> test.txt
echo "ceci est encore un test de l'usb 3.0" >> test.txt
sed -i '/ceci est encore un test de l'usb 3.0/c ceci est encore un test de l'usb 3.0 "avec un ajout d'option"\' test.txt
par contre si il est incomplet, ceci est volontaire car ce n'est qu'une ébauche pour le moment.
Milles excuses pour ces oublis je ne suis qu'un simple amateur.
Dois-je éditer mon 1er post?
Cordialement.
Hors ligne
#4 Le 28/06/2012, à 12:13
- Compte supprimé
Re : lsusb différentiel
Je ne sais pas, tu fais comme tu veux, j'y vois mieux.
Tu devrais peut-être éditer ton post#1 et signaler que ce script modifie la séquence de Grub pour ce que tu viens d'expliquer.
Ensuite ton script est ingérable je trouve à cause de "sleep". Que penses-tu de :
#! /bin/sh
# Fix de l'USB 3.0
echo 'Nous allons vérifier que les ports USB 3.0 fonctionnent'
echo "Appuyer sur Entrée pour continuer..."
read a
echo ''
echo 'je vais lancer un lsusb, regardez bien le nombre de périphériques connectés'
echo "Appuyer sur Entrée pour continuer..."
read a
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
echo "Appuyer sur Entrée pour continuer..."
read a
echo "brancher un disque dur USB 3.0 et regardez s'il apparaît"
echo "Appuyer sur Entrée pour continuer..."
read a
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
echo "Appuyer sur Entrée pour continuer..."
read a
echo "nous allons recommencer pour le second port USB 3.0"
echo ""
echo 'débranchez tous les périphérique usb'
echo ''
echo 'je vais lancer un lsusb, regardez bien le nombre de périphériques connectés'
echo "Appuyer sur Entrée pour continuer..."
read a
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
echo "Appuyer sur Entrée pour continuer..."
read a
echo "brancher un disque dur USB 3.0 et regardez s'il apparaît"
echo "Appuyer sur Entrée pour continuer..."
read a
echo '__________________________________________________________________________'
lsusb
echo '__________________________________________________________________________'
echo "Appuyer sur Entrée pour continuer..."
read a
echo -n "avez-vous un port USB 3.0 non fonctionnel? Y/N : "
read ouinon
if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ]; then
sudo sed -i '/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/c GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pci=nomsi"\' /etc/default/grub
elif [ "$ouinon" = "n" ] || [ "$ouinon" = "N" ]; then
echo "Ok "
else
echo "Il faut taper Y ou N!! Pas $ouinon"
fi
exit 0
Maintenant à toi de trouver une recette pour avoir un compteur de ligne pour lsusb... ça doit être faisable.
Dernière modification par Compte supprimé (Le 28/06/2012, à 12:18)
Pages : 1