Trucs et astuces variés
Accueil  Informatique  Tutoriels et marches à suivre  Trucs et astuces variés
Dans cette section:
Problème d'authentification MySQL / PHP
Déplacer le contenu d'une partition vers une autre
Monter un fichier ISO sous Solaris
Erreur d'utilisation de la commande sar
Comment déterminer si votre Solaris est en 32 bit ou 64 bit?
Trouver la version de Solaris sur un CD/DVD
Désactiver le login graphique sous Solaris
Activer le Fair Share Scheduler live sous Solaris
Sujets connexes:
Installer MySQL 5.0.19 sous Solaris 10
Installer PHP 5.1.2 sous Solaris 10
Les commandes SMTP
Trucs et astuces variés
Les incontournables:
Le Nikon D700
Le Nikon D3S
Le Nikon D300
Jouer avec les courbes du Nikon D70/D70s
Galeries d'images
Il arrive que je sois confronté à certains petits problèmes à l'occasion, ou que je découvre des petits trucs qui facilitent grandement la vie, côté technoligie.  Ponctuellement, au fur et à mesure que je ferai des découvertes par rapport à cela, je les partagerai ici.

Problème d'authentification MySQL / PHP haut
 

Récemment, je devais faire communiquer un serveur Cobalt RAQ4, fonctionnant avec PHP 4.4.4, avec un serveur MySQL 5.0.12, qui lui tourne sur une machine distante, en Solaris 10.  Tout semble assez standard jusqu'ici, excepté le fait que, lorsque j'ai essayé de faire communiquer le client MySQL compilé avec PHP 4.4.4 par défaut, celui-ci ne fonctionnait pas sur le serveur distant.

Après avoir vérifié les noms d'utilisateurs, les mots de passe et m'être assuré que le serveur Cobalt voyait bien le serveur de base de données MySQL distant, je suis allé voir les logs, et j'y ai vu la petite ligne sympathique suivante: 

 
Error no. 1251: "Client does not support authentication protocol requested by server - consider upgrading MySQL client"
 

Ça m'embêtait un peu, puisque le serveur Cobalt sur lequel le "client" MySQL semblait trop vieux, est un serveur web qui est en production pour beaucoup de clients, et on ne peut donc pas trop taponner dessus sans risque.  Donc, mettre à jour la configuration de PHP, ainsi que de recompiler une version de client MySQL sur cette machine, ça me paraissait un peu improbable.

Mais en fouillant un peu du côté de MySQL, j'ai trouvé une solution potentielle, qui consiste à créer un mot de passe "à l'ancienne mode", pour que les vieux clients MySQL puissent bin s'authentifier quand même.  Voici la commande à utiliser dans ces cas là:

 
SET PASSWORD FOR 'nom_utilisateur'@'hote_distant' = OLD_PASSWORD('mot-de-passe');
 
Sur le serveur MySQL distant, je me suis connecté en root dans MySQL, et j'ai donc exécuté la commande en question.  Pour la valeur "hote_distant", j'ai simplement ajouté "%" (qui signifie "tous les serveurs distants") et tout a fonctionné superbement!!  Donc, si jamais vous êtes confrontés à ce type de problème, cette petite procédure toute simple vous sauvera peut-être quelques recherches fastidieuses!!
 
Déplacer le contenu d'une partition vers une autre haut
 
Sous Solaris, lorsque vous désirez transférer le contenu d'une partition complète vers une autre partition, il est possible de le faire de plusieurs manière, mais 2 moyens sont à privilégier, parce qu'utilisant le monde "archivage".  Le premier moyen fait appel la commande "tar" (et est utilisable sous Linux ou BSD également):
 
# tar cf - . | (cd /nouvelle_partition; tar xfBp - )
 
La deuxième méthode fait l'usage de deux commandes natives à Solaris, utilisées pour effectuer respectivement la sauvegade et le recouvrement d'un système de fichiers.  Dans ce cas-ci, on s'en sert pour transférer le contenu de la première partiton vers la deuxième:
 
# ufsdump -0f - /premiere_partition | (cd /deuxieme_partition; ufsrestore xf -)
 
Monter un fichier ISO sous Solaris haut
 

Au lieu d'être obligé de graver un fichier ISO que vous auriez téléchargé, si vous ne désirez qu'accéder au contenu de ce fichier ISO sous Solaris, il est possible de le monter par le biais d'un fichier device de type "loopback". Pour se faire, utilisez la commande "lofiadm" pour créer votre premier device "loopback", qui se nommera "/dev/lofi/1".

La commande suivante est utilisée pour se faire, en admettant que votre fichier ISO soit localisé sous: "/export/home/test/fichier1.iso": 

 
# lofiadm -a /export/home/test/fichier1.iso /dev/lofi/1
 
et une fois le fichier device "/dev/lofi/1" créé, il est possible de le monter au sein de l'arborescence du système avec la commande "mount":
 
# mount -F hsfs -o ro /dev/lofi/1 /mnt
 

et votre fichier ISO sera alors monté sous "/mnt" (dans mon exemple, j'ai pris "/mnt", mais vous pouvez évidemment le monter ailleurs!). C'est très pratique et ça peut aider à ne pas faire baisser trop les stocks de CD vierges!

Une fois que vous n'en aurez plus besoin, vous pouvez démonter le ISO avec "umount", et pour détruire le fichier device "/dev/lofi/1", il s'agit simplement de faire la commande suivante: 

 
# lofiadm -d /dev/lofi/1
 
et tout sera revenu comme au point de départ; vous pourrez ainsi redisposer de votre fichier ISO comme bon vous semblera!
 
Erreur d'utilisation de la commande sar haut
 
Vous désirez, sous Solaris, utiliser la commande "sar" afin d'effectuer du monitoring ou de l'analyse de performance sur votre serveur, mais quand vous exécutez la commande, vous obtenez une erreur semblable à la suivante:
 
# sar -A -o test.out
sar: can't open /var/adm/sa/sa03
No such file or directory
 
la réponse se trouve dans le manpage pour "sadc", mais comme c'est pas évident, je vous donne la réponse! ;) Vouc devez exécuter la commande suivante, et vous devriez être en mesure d'exécuter la commande sans problème, après avoir exécuté ceci:
 
# su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa`date +%d`"
 
Comment déterminer si votre Solaris est en 32 bit ou 64 bit? haut
 

Vous avez une installation de Solaris quelque part - et ce que ce soit sous l'architecture SPARC ou x64/x86 - et vous vous demandez si elle est en 32 bit ou en 64 bit?  Rien de plus facile!!  Tout d'abord, si vous êtes sous SPARC et que c'est Solaris 10, c'est uniquement en 64 bit.

Mais plus précisément (et plus sérieusement), la commande "isainfo" vous permet d'effectuer cette vérification.  Donc, exécutez simplement la commande suivante: 

 
# isainfo -v
 
et si le système est en 64 bit, vous aurez quelque chose comme ceci qui apparaîtra, donc vous affichant le support conjoint de 64 bit et de 32 bit:
 
64-bit sparcv9 applications
        vis
32-bit sparc applications
        vis v8plus div32 mul32
 
et si votre système n'est qu'en 32 bit, alors vous devriez n'avoir que la ligne "32 bit" apparaissant.  C'est simple, non?
 
Trouver la version de Solaris sur un CD/DVD haut
 

Vous avez un CD ou un DVD de monté sur un serveur Solaris, ou encore vous avez un répertoire contenant un média d'installation sous Jumpstart qui est mal identifié, et vous désirez savoir exactement de quelle version de Solaris il s'agit?  Voici le truc pour trouver la version précise!

Sur le CD (ou DVD), rendez-vous dans l'arborescente suivante: 

 
# cd ./Solaris_10/Product/SUNWsolnm/reloc/etc
 
et sous ce répertoire, tapez la commande suivante:
 
# cat release
 
et vous devriez obtenir quelque chose de semblable à ceci:
 
                       Solaris 10 5/08 s10s_u5wos_10 SPARC
           Copyright 2008 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                             Assembled 24 March 2008
 
Dans l'exemple ci-haut, on constate qu'il s'agit de la version Solaris 10, release "5/08" (pour "mai 2008"), et que c'est le "update 5" (u5wos), et qu'il s'agit de la version pour plateforme SPARC.  Ça peut être pratique, ça m'a récemment servi...
 
Désactiver le login graphique sous Solaris haut
 

Sous Solaris, quand vous faites une installation avec un "cluster" (ou niveau d'installation) incluant l'interface graphique, par défaut lorsque vous démarrez le système, celui-ci lancera les services graphiques, notamment pour le login.

Si vous désirez que cette fonction soit désactivée de manière ponctuelle (donc seulement le temps nécessaire), la commande suivante peut vous être utile, qui désactivera donc la fonction de login graphique sur votre instance de Solaris: 

 
# /usr/dt/bin/dtconfig -d
 
et quand vous voudrez réactiver cette fonction de login graphique, vous n'aurez qu'à exécuter la commande suivante:
 
# /usr/dt/bin/dtconfig -e
 

Ces commandes vous aideront pour à peu près toutes les versions de Solaris.  Cependant, si vous êtes sous Solaris 10 et que vous fonctionnez - donc - avec les services du FMRI (SMF), alors en redémarrant, vous vous rendrez compte que le login graphique (celui de CDE), vous sera représenté.

Comment faire, donc, pour désactiver le login graphique sous Solaris 10?  Avec les services, bien sûr!  Voici la commande pour y arriver: 

 
svcadm disable svc:/application/graphical-login/cde-login:default
 

et normalement, si vous avez tapé cette commande directement dans une fenêtre graphique sur la console de votre machine Solaris, vous allez en sortir assez rapidement...  ...et au prochain redémarrage de Solaris, vous n'aurez plus l'interface graphique comme accueil.

Pour réactiver la chose, il vous faut évidemment réactiver le service, et vous pourrez y arriver avec la commande suivante: 

 
svcadm enable svc:/application/graphical-login/cde-login:default
 
Et voilà!  Vous reviendrez en mode graphique.
 
Activer le Fair Share Scheduler live sous Solaris haut
 
Pour activer le "scheduling class" FSS (pour Fair Share Scheduler) sous Solaris - qui n'est pas la classe séquencielle par défaut, on peut le faire via ces commandes toutes simples:
 
# dispadmin -d FSS
# priocntl -s -c FSS -i class TS
# priocntl -s -c FSS -i pid 1
 
 
Version imprimable

Accueil Photographie Aviation Informatique Autres trucs Galeries d'images Liens Pour me joindre

Copyright © 2017, Benoit Audet (www.benoitaudet.com), tous droits réservés.
Protégé par les lois du copyright des États-Unis et du Canada et par des traités internationaux.
Benoit Audet