
Résumé
Bienvenue sur cet article de présentation de SUN Solaris 9. Ici nous feront ensemble un rapide tour sur le dernier OS de Sun Microsystem.
Sommaire Introduction
1. Présentation
1.1. Premières remarques
1.2. Différence avec Unix
2. Architecture
2.1. Arborescence
2.2. Logiciels & commandes utiles
3. Configuration
3.1. Configuration des interfaces réseau
3.2. Configuration de inetd
4. Administration
4.1. Configurez Apache
4.2. Test réseau
Conclusion
 Introduction
Pour commencer voici quelques caractéristiques des machines Sun :
Architecture 64 bits
Cache CPU important ( 2Mo, 4Mo ou 8 Mo)
Beaucoup de RAM
OBP (OpenBootProm)
Pas forcement PCI (souvent SCSI)
Interface Graphique (CDE)
UNIX powered
 Vue éclatée d'une unitée SUN Blade 100
 1. Présentation
Pour faire fonctionner convenablement Solaris 9 vous devez disposer au minimum :
Un processeur UltraSparc/SPARC 32 (fonctionne aussi sur des x86 & AMD Opteron)
2,3 Go d'espace disque
68 MB voir 128 MB de ram
1.1. Premières remarques
Même si une partie de l'installation se passe dans un shell Solaris 9 (aka SunOS 2.9) dispose d'une interface graphique (CDE/Gnome) permettant de facilement installer et prendre en main le serveur.
 Les habitués de Linux ne seront pas dépaysés, Solaris est un UNIX mais avec quelques petites subtilités :
Un peu de BSD
Une touche de SystemV
Nommage des partitions propre à Solaris
Pas d'autocomplétion dans la console
1.2. Différence avec Unix
Quelques unes des différence avec UNIX :
Pas de recompilation de kernel (système de patchs et de modules)
Les paramètres du noyau sous peu souvent modifiés
/etc/vfstab équivalent de fstab linux
Vous trouvez les similitudes avec vos OS préféré et le cas échéant les équivalents des principales commandes sur unixporting.com.
2. Architecture
La commande man permet d'afficher le manuel des commandes de shell, pour de plus amples informations sur le système de fichier tapez la commande man -s5 filesystem.
2.1. Arborescence
Chaque fichier possède un nom associé à un inode composé de 2 parties :
Des informations sur le fichier (UID,GID,permissions,taille)
Des pointeurs vers les blocs de données associés au fichier
2.1.1. Différents types de fichiers
Fichiers ordinaires
- Répertoires (d)
- Liens symboliques (l)
Fichiers spéciaux
Les fichiers spéciaux permettent l'accès aux périphériques. Ils sont crées sous Solaris 9 avec la commande devsadm qui vérifie la présence de nouveaux périphériques et crée des fichiers spéciaux pour eux.
Mode bloc " b " Dans le cas d'un disque dur, les fichiers spéciaux en mode bloc invoquent des opérations d'I/O selon une taille de bloc définie (pour UFS : 8ko)
Mode caractère " c " Dans le cas d'un disque dur, les fichiers spéciaux en mode caractère invoquent des opérations d'I/O selon la plus petite unité adressable d'un disque, à savoir un secteur (512 octets)
2.1.2. Présentation du filesystem / La racine du filesystem. /bin Lien vers /usr/bin /platform Les modules noyaux dépendants de la plateforme /opt Les applications supplémentaires /kernel Contient les modules noyaux /tmp est par défaut un répertoire en ram (tmpfs)
/dev contient des liens vers d'autres dans /devices /dev/dsk/ Disques en mode bloc /dev/rdsk/ Disques en mode raw /dev/fd/ Descripteurs de fichier /dev/md/ Périph de gestion de LVM /dev/rmt/ Lecteurs de bande
/etc/init.d/ Scripts de démarrage et d'arrêt /etc/vfstab équivalent de /etc/fstab /etc/lib/ Bibliothèques dynamiques /etc/dfs/ Fichiers de configuration de NFS /etc/default/ Informations par défaut de différents programmes
/usr/ccs/ Bibliothèques et programmes de compilation C /usr/dt/ Interface graphique CDE /usr/kernel/ Modules du noyau non nécessaires lors du démarrage /usr/opt/ Informations de configuration des packages /usr/java/
2.2. Logiciels
Il existe 3 types de composants logiciel :
- Les packages
- Les clusters (groupe de packages)
- Les groupes, aka métaclusters (groupe de clusters)
Pour vous renseigner sur les package déja installés utilisez la commande Pkginfo. Sous Solaris les commandes sont semblables à celle de UNIX, de nombreux logiciels sont portés et peuvent être compilé pour Solaris (top, wmaker, mc, nmap, DooM ;), de plus en plus de libs sont portés et on parle même d'ourir le code source depuis quelques temps...
Pour obtenir des informations sur les packages essayez aussi les commandes showrev -p et patchadd -p.
Voici maintenant un petit tour des commandes utiles sous cet OS.
Format
|
Comme son nom l'indique cette commande permet de formater, sous Solaris le premier secteur du disque ouù est stockée la table de partition s'appelle la VTOC (Volume Table of Content).
|
Fsck
|
Permet de vérifier l'intégrité du filesystem (ne jamais le faire sur un filesystem monté)
# fsck /dev/rdsk/c0t0d0s7
|
Mount
|
Commande nécessaire pour pouvoir utiliser une partition ou partage réseau. Permet de monter un device sur un point de montage. tapez mount -v pour afficher les montage en cours. |
Newfs
|
Permet de formater une partition en UFS, le format de donnée de Solaris.
# newfs /dev/rdsk/c1t3d0s0
|
Fstyp
|
Affiche des informations concernant la partition passée en argument.
# Fstyp -v /dev/rdsk/c0t0d0s0
|
Tunefs
|
Cet utilitaire permet modifier les attributs dynamique d'une partition.
|
Du, df, quot
|
Ces commandes permettent de surveiller l'utilisation d'un système de fichier, espace utilisé, espace libre, utilisation d'un répertoire ...
|
cat
|
Affiche le contenu d'un fichier dans un shell |
smc
|
Solaris Managemant Console, il s'agit d'un en Java permettant de configurer un serveur sous Solaris. |
 3. Configuration
Dans cette partie nous verrons comment sont attribué les adresses aux différentes interfaces réseau, nous apprendrons à changer le hostname par défaut ainsi qu'à configurer le démon inetd.
3.1. Configuration des interfaces réseau
Sous Solaris on on peut afficher l'adresse IP et MAC d'une interface avec la commande ifconfig -a, on utilise également cette commande pour attribuer une adresse et un masque de sous-réseau à une interface, ajouter une passerelle...
Le répertoire /etc/ contient un ou plusieurs fichiers hostname.* en fonctions du nombre d'interfaces réseau, par exemple une fichier /etc/hostname.dnet0 pour l'interface dnet0, un autre fichier /etc/hostname.hme0 pour l'interface hme0, etc... Chacun de ces fichiers contient une entrée qui configure une interface correspondante :
# cat /etc/hostname.dnet0 172.16.0.42
Comment changer le Hostname (unknown)
Normallement la commande hostname nom_du_serveur fonctionne, mais lors du prochaine reboot elle ne sera plus effective.
Vous pouvez aussi utiliser les commandes Solaris sys-unconfig ou sysidconfig, la commande sys-unconfig permet de supprimer la configuration de la machine et de la reconfigurer, la machine redémarre après l'utilisation de cette commande.
Sinon vous pouvez aussi éditer les fichiers suivants (tous) et modifier le hostname ;
/etc/hostname.[nom de l'interface interface ( dnet0, hme0, le0, ...)] /etc/nodename /etc/defaultrouter /etc/netmasks
Problème de Hostname en DHCP
Si en DHCP vous n'obtenez pas le bon hostname localisez les lignes suivantes dans le fichier /etc/rcS.d/S30network.sh :
if [ -z "$hostname" ]; then hostname="unknown" fi
| et modifiez le ainsi pour utiliser le hostname spécifié dans /etc/nodename :
if [ -z "$hostname" ]; then hostname="unknown" if [ -f /etc/nodename ]; then hostname="`shcat /etc/nodename 2>/dev/null`" fi fi
|
3.2. Configuration de inetd
L'installation ouvre par défaut des services potentiellements dangereux, votre première action sera donc d'éditer le fichier /etc/inetd.conf et de commentrer les services dont vous n'avez pas d'utilité cas ils peuvent éventuellement être exploité par des personnes mailveillantes pour attaquer votre serveur.
Pour ce faire entrez les commandes suivantes dans un shell :
# cd /etc/
# cp inetd.conf inetd.conf.old
# gedit inetd.conf Vous devriez avoir un affichage similaire ...
Modifiez le fichier en ajoutant des # devant tous les services dont vous n'avez pas besoin (telnet, in.fingerd..) puis fermez gedit et redémarrez inetd : # Pkill -HUP inetd
 4. Administration
Cette partie concerne la configuration du serveur apache et les différents test de la configuration réseau.
4.1. Configuration de Apache
Le célèbre serveur apache est normallement installé par défaut dans Solaris 9, nous allons nous intérresser ici à son fonctionnement.
Le fichier de configuration du serveur, httpd.conf devrais se trouver dans le dossier /usr/local/apache/conf/, si vous navez jamais configuré ce serveur auparavant le fichier de conf doit s'appeller http.conf-dist. Nous allons le renommer, l'éditer et lancer le serveur.
Dans un shell tapez les commandes suivantes :
# cd /usr/local/apache/conf/ # cp httpd.conf.dist httpd.conf
# gedit httpd.conf
Normallement vous n'avez pas grand chose à modifier dans ce fichier, la variable trés importante est sans doutes DocumentRoot qui désigne l'emplacement de vos fichiers à placer sur le serveur Web. Faites en sorte qu'elle désigne le répertoire qui doit être la racine de votre site web. Vous pouvez définir un emplacement différent pour les fichier de log access_log et error_log qui ont tendance à grossir rapidement sur des sites actifs.
Une fois que votre fichier de configuration vous conviens sauvez le puis retournez dans la console et déplacez vous dans le répertoire des binaires d'apache et repérez le script apachectl. Vous pouvez tester votre configuration en tapant apachectl configtest et si aucune erreur n'est renvoyé vous pouvez lancer le serveur avec la commande : # ./usr/local/apache/bin/apachectl start
4.2. Test Réseau
Pour afficher la table de routage entrez la commande netstat -r. On utilise aussi la commande netstat -a pour visualiser les connexions réseau en cours et en attente.
Le ping, commande universelle pour tester la connexion au réseau existe aussi sous Solaris, ainsi la commande ping ceasar renverra ceasar is alive si votre configuration est opérationelle et que le serveur ceasar répond aux requêtes ICMP.
La commande snoop est équivalente au tcpdump de Linux, pour obtenir encore plus d'informations ajoutez le flag -v (verbose) :
# snoop solaris9 gw1
Cela affichera tous les échanges réseaux entre les machines 'solaris9' et 'gw1'.
Conclusion
Même si les performances globales ne sont pas toujours importantes, les machines Sun se caractérisent par une grande disponibilité et une montée en charge importante.
Une des choses les plus sympathique est comme dans la plupart des architectures multi-processeurs, on a la possibilité d'allouer n processeurs à un processus spécifique et de créer des serveurs virtuels...
sun.com Présentation de Solaris 9 www.sunfreeware.com Téléchargez les derniers freeware pour Solaris www.sunstuff.org Online Sun Information ArcHive everythingsolaris.org Site assez complet traitant de Solaris sysunconfig.net Des tonnes de tips pour Solaris
|