PASE (AIX "like" sur IBM i)
|
PASE (option 33 de l'OS)
était un produit facturable en V5R10 et devient intégré à l'OS et dont
l'installation est conseillée par IBM (pour java, DNS V5, etc...)
il s'agit de tous les binaires AIX (5L) sur l'AS/400 rendant celui-ci
très compatible avec une machine UNIX.
Cette fonctionnalité s'appuie sur le processeur commun à la gamme
Iseries et Pseries (POWER4 64 bits) et à la capacité de ce dernier
à "switcher" d'un mode, d'un environnement à l'autre
(I5/OS fonctionne sur un mode 64 bits "protégé")
l'année 2004 voit arriver le POWER5 et les partitions AIX
sur Iseries.
viendront ensuite les POWER6 (2008) des machines de convergence,
puis les Power7 en 2010 et Power8 en 2014.
|
|
pour lancer un "shell" PASE (voyez aussi le cours QSH en 5.10) :
> CALL QP2TERM (pour une saisie utilisateur)
> CALL QP2SHELL (pour exécuter un script)
> l'API Qp2RunPase, pour lancer Pase depuis un pgm ILE.
+ le répertoire de PASE est /QOpenSys/usr/bin
Si un exécutable n'est pas trouvé dans le chemin indiqué, PASE essai
en ajoutant "/QOpenSys" devant la racine ("/") du chemin,
sauf à renseigner la variable d'env. "PASE_EXEC_QOPENSYS" à "N"
Les fonctions PASE qui retournent les utilisateurs et les groupes,
retournent les noms en minuscules sauf "PASE_USRGRP_LOWERCASE" à "N"
Le shell lancé par PASE est le Khorn shell (/QOpenSys/usr/bin/sh)
pour voir la liste des commandes placez vous dans /QOpenSys/usr/bin
par cd (vérifiez par pwd ,que vous n'y êtes pas déja) et lancez ls .
|
|
A cette liste, vous devez ajouter les commandes "internes" comme cd, ...
un certain nombre d'utilitaires ne pourront pas s'exécuter à partir
d'une session 5250.(type de terminal non compatible)
vous devrez peut-être recourir à un environnement X11 (inclus dans PASE)
depuis un serveur X (non fourni) à installer sur PC (ou Linux) .
Pour lancer une application X, démarrer un serveur X11/Xwindow
(XthinPro ou Hummingbird Exceed ou bien un poste sous Linux)
-> renseignez la variable d'environnement DISPLAY avec l'adresse IP
du serveur X, puis lancez ( xterm par exemple) depuis Qp2Term.
sinon, regardez les commandes suivantes : (extrait, bien sûr ...)
cat - affiche le contenu d'un fichier
ln - créé un lien symbolique sur un fichier existant
mkdir - création d'un répertoire
rm - destruction de fichier(s)
mv - déplace ou renomme un fichier
|
|
Ne confondez pas QSH (le shell de l'OS/400) et PASE (compatible AIX)
PASE possède plus de fonctionnalités, et quelques différences:
il peut tenir compte des retours chariot à l'affichage (F11)
il est sensible à la casse (différence minuscules/MAJUSCULES), pas QSH.
il ne transforme pas EBCDIC/ASCII sauf pour stdin,stdout et stderr,
si vous fixez QIBM_PASE_DESCRIPTOR_STDIO à T (QSh utilise les CCSID)
par exemple :
------------
cat /qsys.lib/bdvin.lib/qsqlsrc.file/crt_base.mbr | grep -c date
compte le nombre de ligne du membre crt_base contenant le mot "date"
(le fichier QSQLSRC est dans la bibliothèque BDVIN)
QSH donne 3 (il y a bien trois lignes) PASE indique 0 (data en EBCDIC)
il en sera de même pour wc (compte le nombre de mots), sort (tri),
split (éclatement de fichiers) et sed (edition de fichier)
|
|
Exemples d'utilisation de PASE :
Aller chercher des binaires compilés pour AIX et les faire tourner
sur votre machine.
voyez http://bio.gsi.de/DOCS/AIX/aixpdslib.seas.ucla.edu/ par exemple
vous trouverez sur ce site zip.2.3.tar.Z et unzip.5.50.tar.Z
Placez ces fichiers dans /QopenSys, puis lancez un terminal PASE
call Qp2term
décompressez le fichier par uncompress zip.2.3.tar.Z
puis restaurez par tar -xvf zip_2_3.tar
cela doit vous créer un répertoire user et des sous répertoires
placez vous dans /QopenSys/usr/local/bin (par cd)
|
|
tapez zip -h
cela doit vous afficher l'aide
#
> zip -h
Copyright (C) 1990-1999 Info-ZIP
Type 'zip "-L"' for software license.
Zip 2.3 (November 29th 1999). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi
list]
vous pouvez maintenant zipper des fichiers par :
zip fichier-zip-à-créer fichier(s)-à-zipper
ou bien par : (depuis un CL ou une ligne de commande)
CALL QP2SHELL PARM('/QopenSys/usr/local/bin/zip' +
'/chemin/archive.zip' +
'/chemin/fichier(s)-à-zipper/')
|
|
Vous pouvez aussi utiliser 7zip,sur http://www.scottklement.com/p7zip/
Attention QP2SHELL n'est pas un shell, il en joue, en partie, le role :
il lance l'exécutable.
vous ne pourrez pas profiter de certains services du shell
- globing (caractères génériques comme *)
- tubes [|] ou redirections [>], et commandes multiples [:]
dans ce cas demandez à QP2SHELL de lancer sh (le shell lui même)
avec l'option -c (exécution d'une commande en paramètre)
CALL PGM(QP2SHELL) PARM('/QOpenSys/usr/bin/sh' +
'-c' 'cp /repertoire1/*.txt /sauvegardes')
en CL
CALL PGM(QP2SHELL) PARM('/QOpenSys/usr/bin/sh' +
'-c' &CDE)
|
|
Les exécutables sous PASE n'envoient pas de messages d'erreur interceptables
par MONMSG, ils envoient un code retour.Pour le tester :
DCL VAR(&RCVVAR) TYPE(*CHAR) LEN(200)
DCL VAR(&RCVVARLG) TYPE(*CHAR) LEN(4)
CHGVAR VAR(&CDE) VALUE('cp /repertoire1/*.txt /sauvegardes')
CALL PGM(QP2SHELL) PARM('/QOpenSys/usr/bin/sh' '-c' &CDE)
CHGVAR VAR(%BIN(&RCVVARLG)) VALUE(200) /* taille de RCVVAR */
CALL PGM(QUSRJOBI) PARM(&RCVVAR +
&RCVVARLEN +
'JOBI0600' +
'*' +
' ' )
IF (%BIN(&RCVVAR 109 4) *NE 0) THEN(DO)
SNDPGMMSG MSGID(CPF9898) MSGTYPE(*ESCAPE) MSGF(QCPFMSG) +
MSGDTA('commande de copie en erreur')
ENDDO
|
|
Pour lancer un script nommé "shell.sh", utilisez la syntaxe suivante :
CALL PGM(QP2SHELL) PARM('/QOpenSys/usr/bin/sh' +
'/tmp/shell.sh')
Attention si vous saisissez ce shell sous I5/OS (EDTF ou WRKLNK puis "2")
- demandez bien à ce que le fichier soit en ASCII 819
(faites F15, option 3 et saisissez 819 à la place de 297
particulièrement en cas de création)
- demandez aussi à ce que les fins de lignes soient marquées par le
caractère LF (standard unix) et non CRLF (standrad PC et I5/OS)
(faites F15, option 5 et choisissez *LF)
- commencez votre script par "#! /usr/bin/sh" et donnez le droit *RX
|
|
|
Troisème exemple : PHP en mode CGI, avant l'arrivée de ZendCore for I5/OS.
a/ téléchargez les sources depuis http://www.php.net
et compilez avec un compilateur (pour AIX ou gcc)
ou b/ téléchargez une version déja compilée sur http://www.deloli.net
décompressez et restaurez les fichiers dans /QopenSys/php (par exemple).
(les exécutables seront dans /QOpenSys/php/bin)
paramétrez votre serveur Apache avec les directives suivantes :
ScriptAlias /php-bin/ /QOpenSys/php/bin/
# définition d'un nouveau type mime
AddType application/x-httpd-php .php
# forcer exécution pour un type donné (php-bin remplacé par ScriptAlias)
Action application/x-httpd-php /php-bin/php
<Directory /QOpenSys/php/bin>
Options +ExecCGI
order allow,deny
allow from all
</Directory>
|
|
Quatrieme exemple : OpenSSH/OpenSSL
Ce produit (5733SC1) est obligatoire si vous installez la version
officielle (et supporté par Zend) de PHP : Zend Core for I5/OS.
regardons ici OpenSSL, qui permet de générer des certificats afin de
crypter des fichiers (pour transmission à un tiers, par exemple)
sous QP2TERM
openssl genrsa -out private.key 512|1024|2048 (lg de la clé, 2048 est bien)
-> cela génère votre clé privée dans un fichier private.key
puis
openssl req -new -days 365 -key private.key -x509 -out certificat.pem
cela génère un certificat (pour 365 jours) représentant votre société
(clé publique)
il faut répondre à des questions interactives :
|
|
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
>FR
State or Province Name (full name) [Some-State]:
>Bretagne
Locality Name (eg, city) []:
>Nantes
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
>société
Organizational Unit Name (eg, section) []:
>division
Common Name (eg, YOUR name) []:
>moi
Email Address []:
>moi@societe.com
|
|
vous devez ensuite générer un fichier ".rnd", qui servira pour initialiser
les fonctions aléatoires de cryptage
a/ saisissez des données par EDTF (commande OS/400)
ou
b/ passez la commande ls /* > .rnd
le certificat ainsi obtenu "certificat.pem" doit être transmis à votre
interlocuteur, de même vous devez recevoir le sien (par ex. client.pem)
pour crypter un fichier, a lui envoyer ensuite (FTP, mail...) :
openssl smime -encrypt -inkey private.key -signer certificat.pem -binary
-in texte1.txt client.pem > texte1.p7m
pour décrypter un fichier recu:
openssl smime -decrypt -in texte2.p7m -inkey private.key
-recip certificat.pem > resultat.txt
(ce fichier ne pouvant être décrypté QUE par vous)
|
|
Cinquième exemple : OpenSSH (même produit)
( Voyez aussi http://wiki.midrange.com/index.php/SSH )
Vous pouvez lancer le démon SSh (sshd) afin de vous connecter à votre
serveur de manière sécurisée :
en V5R40, sous PASE (QP2TERM) lancez sshd
en V6R1 STRTCPSVR *SSHD
Pour que SSHD utilise son propre sous-système, voyez http://www-01.ibm.com/support/docview.wss?uid=nas8N1014744
la sécurité de SSH est basé sur une paire de clés asynchrones
clé privée (locale), clé publique (transmise à l'interlocuteur)
un serveur SSH posséde une paire de clé permettant de l'authentifier
pour un utilisateur, il peut se connecter avec mot de passe
ou en utilisant lui aussi une paire de clés et en transmettant au
serveur sa clé publique.
|
|
en V6R1 les clés serveur sont générées automatiquement
en V5R4, lancez :
ssh-keygen -N "" -t rsa1 -f ssh_host_key
ssh-keygen -N "" -t dsa -f ssh_host_dsa_key
ssh-keygen -N "" -t rsa -f ssh_host_rsa_key
(la chaine vide derrière -N est en fait un mot de passe)
Vous pouvez maintenant vous connecter avec puTTY ou depuis un terminal MAC
pour se connecter à un serveur SSH, sa clé doit être stockée dans
~/.ssh/known_hosts sur le poste client
pour récupérer la clé lancez :
ssh-keyscan -t rsa serveurlinux(par ex) >> ~/.ssh/known_hosts
|
Exemple avec PuTTY
Sous MAC
|
Si la clé du serveur n'est pas celle mémorisée (reconfig suite à un crash)
vous verrez :
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
16:a2:f6:a9:2f:e2:14:2e:25:53:34:9a:59:fb:2c:e7.
Please contact your system administrator.
Add correct host key in /home/CM/.ssh/known_hosts to get rid of this message
Offending key in /home/CM/.ssh/known_hosts: 1
RSA host key for hmc.volubis.intra has changed and you have requested strict
checking.
Host key verification failed.
$
Editez le fichier known_hosts et enlever la ligne correspondante
(1 dans notre exemple)
|
|
SSH client :
Utilisez SSH pour passer des commandes sur un serveur Unix/linux ou HMC
(le démon doit être lancé bien sur, voyez la doc HMC si nécessaire)
Vérifiez que le répertoire correspondant à votre HOMEDIR existe bien,
et que votre nom de profil ne fait pas plus de 8 caractères !
lancez QP2Term et saississez
ssh user@serveur [serveur est votre serveur SSH, user votre profil]
si le serveur n'est pas enregistré dans la liste des serveurs autorisés
le système vous informe que vous n'avez pas la clé:
____________________________________________________________________________
ssh cm@serveurlinux
L'authenticité de l'hôte 'serveurlinux(10.3.1.10)' ne peut pas être établie
L'empreinte digitale de la clé . est RSA.
Voulez-vous poursuivre la connexion (oui/non) ?
____________________________________________________________________________
tapez oui, l'authentification se fera avec mot de passe
|
|
En cas de problèmes :
- l'option -T indique de pas allouer un terminal (tty)
- -v affiche des messages debug, plus il y a de v, plus c'est détaillé
- -o PreferredAuthentications=password
force une authentification par mot de passe, afin d'éviter
le mécanisme de recherche préalable de clés .rsa dans .ssh.
enfin la commande hostname , affiche le nom du serveur sur lequel
vous connecté (on peut se perdre...)
Les PTF suivantes font disparaitre la limitation sur 8c. du profil :
V6R10 SI56647 - 7.1 SI56645 - 7.2 SI56636
Vous pouvez passer une commande seule par ssh user@serveur "la-commande"
|
|
Vous pouvez éviter la phase d'authentification en important la clé avant.
il faut créer une paire de clé associée pour l'utilisateur
ssh-keygen -t rsa
Création d'une paire de clés rsa publiques/privées.
Enter file in which to save the key (/HOME/USER/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): Enter same passphrase again:
Votre identification a été sauvegardée dans /HOME/USER/.ssh/id_rsa
Votre clé publique a été enregistrée dans /HOME/USER/.ssh/id_rsa.pub.
L'empreinte digitale de la clé est :
fc:ee:bf:db:fd:ac:fb:8f:e4:03:cb:7e:8e:04:d1:8c user@AS400.volubis.fr
vous pouvez redemander l'affichage par ssh-keygen -l
|
|
Cette commande a généré deux fichiers :
id_rsa , votre clé privé, id_rsa.pub , votre clé publique
dans le cache local, /HOME/(votre_nom)/.ssh
Transférez votre clé publique sur le serveur (par FTP par exemple)
puis ajoutez cette clé au fichier "authorized_keys" par :
cat id_rsa.pub >> authorized_keys
si cela créé le fichier, donnez les droits par (sur unix) :
chmod 400 authorized_keys
Vous pouvez ensuite vous connecter, depuis ce client :
1/ en automatique, si vous n'avez pas saisi de "passphrase"
2/ en saisissant la "passphrase" (plutôt que votre mot de passe),
dans le cas contraire.
|
|
Si vos clés ne sont pas dans le cache par défaut (/HOME/(votre_nom)/.ssh)
Sur la machine source, vous pouvez utiliser l'option -i de la cde ssh
(indiquez votre clé privée et son chemin)
ou bien charger la clé en mémoire.
Pour cela, vous devez :
1/ définir l'agent pour lequel vous chargez la clé
($SHELL représente /usr/bin/sh)
2/ charger la clé en mémoire par ssh-add (par défaut id_rsa dans .ssh)
la "passphrase" vous est demandée, si vous en avez saisi une lors de la
création par ssh-keygen.
____________________________________________________________________________
ssh-agent $SHELL
ssh-add
Entrez le mot de passe composé de /HOME/USER/.ssh/id_rsa :
Identité ajoutée : /HOME/USER/.ssh/id_rsa (/HOME/USER/.ssh/id_rsa)
Ensuite, connectez vous avec ssh :
ssh cm@serveurlinux
Last login: Thu Apr 24 14:12:17 2008 from pc.volubis.intra
cm@serveurlinux:~>
vous avez ici, une ligne de commande distante, tapez "exit pour sortir.
|
Avec Putty
Générez une clé avec puTTYgen
Sauvegardez la clé Privée au format Putty (.ppk)
puis, soit :
- vous sauvegardez le contenu de la fenêtre Public key for pasting... et vous la transférez dans /home/nom-de-user/.ssh/authorized_keys
- soit vous placez, par un éditeur (RDI, Winscp ?) , le contenu de cette fenêtre dans le fichier vu au dessus
Attribuez les droits sur /home/nom-de-user et /home/nom-de-user/.ssh à 704 par chmod
Vérifiez aussi les droits sur authorized_keys
attention, pas assez ou trop de droits provoque "server refused our key"
Cette configuration peut être utilisée sous putty pour lancer un shell
puis sauvegardez.
Si vous recevez "failed to connect"
- Vérifiez que sshd est bien démarré (netstat *cnn) sinon -> STRTCPSVR *SSHD
- Attention, ssh par défaut travaille avec des id Utilisateur sur 8c. maxi.
pour pouvoir être ré-utilisée directement depuis ACS
Configurez AcsConfig.properties comme ceci :
ET voilà
|
Vous avez aussi deux utilitaires pour faire des transferts de fichiers
scp -o IdentityFile=~/.ssh/id_rsa
user@serveurlinux:remoteDIR/*.xml /localeDIR
copie tous les fichiers xml du repertoire remoteDIR dans localeDIR de l'IFS
sftp -b /DIR/input.txt -o IdentityFile=~/.ssh/id_rsa
user@serveurlinux
execute les commandes sftp contenues dans input.txt de /DIR
|
|
contenu de input.txt
get remoteDIR/*.xml /localeDIR
rm remoteDIR/*.xml
exit
utilisez les commandes get pour aller chercher, put pour déposer
et la plupart des commandes unix:
- mkdir pour créer un répertoire
- cd pour changer le répertoire en cours
- rm pour détruire
- quit ou exit pour sortir
- help pour obtenir de l'aide
pour exécuter tout cela en batch, passez par QP2SHELL
SBMJOB CMD(CALL PGM(QP2SHELL) PARM('/QOpenSys/usr/bin/sh'
'sftp -b /HOME/CM/transfert.txt -o IdentityFile=~/.ssh/id_rsa +
user@serveurlinux') JOB(TRANSFERT)
|
Sous WINSCP (SFTP /SCP sous Windows)
Configurez la connexion comme ceci :
la clé chargée c'est la clé privée, générée par puTTYgen
|
Si vous devez vous authentifier par mot de passe (pas de clé RSA)
Vous ne pourrez pas saisir ce dernier sur un terminal 5250 ou en batch mais uniquement depuis un terminal tty (Putty) ou via WinSCP Reste une solution, allez voir le site de scott Klement, qui utilise une solution Open Source Expect : http://www.scottklement.com/expect/ ce produit permet de simuler une saisie clavier 1/ installez le, comme indiqué sur le site vu plus haut 2/ créez un script (CCSID 819), par : QSH CMD('touch -C 819 /tmp/Escript') QSH CMD('chmod +X /tmp/Escript') 3/ Editez le fichier par EDTF (ou WRKLNK, option 2)
|
|
....................................... : #!/usr/local/bin/expect -f : : set timeout 120 : : spawn sftp user@serveursftp : : expect "password:" : respectez bien la casse : send "mypwd\n" : : expect "sftp>" : (à ajuster suivant vos besoins) : send "put /temp/cours.csv\n" : : expect "sftp>" : : send "quit\n" : : exit : :.....................................: et lancez ce script depuis le CL suivant PGM CALL QP2SHELL PARM('/usr/local/bin/expect' '-df' + '/tmp/Escript') ENDPGM Ca doit marcher (chez nous ca marche). IBM donne aussi cette astuce |
|
Enfin, vous pouvez utiliser certains outils du "IBM AIX Toolbox"
Commencez par vous rendre sur le site :
http://www-03.ibm.com/systems/power/software/aix/linux/toolbox/download.html
et cliquez, sur le lien:
Download the AIX installp image for the rpm package manager for POWER.
Cela va installer un utilitaire RPM sur votre system i (rpm.rte)
créez un répertoire, par exemple /QOpenSys/rpm et placez le fichier
puis sous QP2TERM, saisissez les commandes suivantes
restore -xvqf rmp.rte
mv /QOpenSys/rpm/usr/opt /QopenSys/
ln -s /QOpenSys/opt /QopenSys/var/opt
ln -s /QOpenSys/opt /opt
ln -s /QOpenSys/var/opt /var/opt
cd /opt/freeware/lib
ln -s libpopt.so.0.0.0 libpopt.so
ln -s librpm.so.0.0.0 librpm.so
ln -s librpmbuild.so.0.0.0 librpmbuild.so
|
|
Retournez sur le site
http://www-03.ibm.com/systems/power/software/aix/linux/toolbox/alpha.html
choisissez un ou plusieurs utilitaires à téléchargez, placez les dans
/QOpenSys/rpm
par exemple popt (library en C pour parser la ligne de commande)
ou wget (utiliatire pour utiliser un serveur http en mode texte)
et tapez (en étant sous /QOpenSys/rpm)
/opt/freeware/bin/rpm --ignoreos --ignorearch --nodeps --replacepkgs
-hUv wget-1.9.1-1.aix5.1.ppc.rpm
mntctl() failed to return fugger size: Le processus n'existe pas.
group system does not exist - using root
...
group system does not exist - using root
wget
##################################################
#__________________________________________________________________________
|
|
Vous pouvez maintenant utiliser cet utilitaire, il a été placé dans /usr/bin
wget http://www.volubis.fr
--16:18:08-- http://www.volubis.fr/
=> `index.html'
Résolution de www.volubis.fr... 213.41.176.157
Connexion vers www.volubis.fr[213.41.176.157]:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 5,901 [text/html]
100%[====================================>] 5,901 --.--K/s
16:18:08 (12.85 MB/s) - « index.html » sauvegardé [5901/5901]
#
le fichier index.html a été placé dans le répertoire en cours.
|
|
La "norme" dans la monde unix en ce qui concerne les historiques, c'est de
laisser une trace via syslog (pas de QSYSOPR ni de journal d'audit)
Il s'agit d'une manière d'historiser les évenements basée sur un dialogue
réseau.Il faut donc qu'il y ait un démon à l'écoute sur le port IP (514).
Documentation AIX sur syslogd -> http://ibm.co/1WhX9zy
L'exécutable se trouve dans /QOpenSys/usr/sbin/ et se nomme syslogd
la configuration se trouve dans /QOpenSys/etc/syslog.conf
(créez le fichier par EDTF puis par F15 indiquez comme CCSID 819 et comme
fin de ligne *LF)
Indiquez ensuite dans le fichier les paramètres suivants
facility.priority destination [rotation]
|
|
Facility (fonction système)
kern Kernel
user User level
mail système de Mail
daemon démon système
auth droits/sécurité
syslog syslogd
lpr système dimpression LPR
news système de News
uucp système uucp
local0 à local7 Utilisaiton local
* n'importe quelle fonction
Priority (niveau de gravité)
emerg(emergency) alert(alerte) crit(critique)
err(erreur) warning notice(information importante)
info(information) debug none(niveau à exclure)
vous pouvez indiquer plusieurs facility séparés par ,
kern,user,mail.alert
|
|
vous pouvez indiquer plusieurs couples séparés par :
kern.info:mail.crit:*.debug
Ensuite vous indiquez une destination
/var/adm/messages -> un fichier local (qui doit exister)
@autreserveur -> un serveur distant (avec syslogd actif)
Exemple 1
---------
*.emerg;*.alert;*.crit;*.warning;*.err;*.notice;*.info /var/adm/messages
Exemple 2
---------
*.alert;*.crit;*.warning;*.err;*.notice;*.info /var/adm/messages
*.emerg @serveurlinux
|
|
Enfin vous pouvez indiquer une rotation (changement de fichier de sortie)
rotate mot-clé devant être présent après la destination
size taille de rotation suivie de k (Ko) ou m (Mo)
time fréquence de rotation : un chiffre suivit de h(heure) d(jour)
w(semaine) m(mois) y(année)
files un chiffre repésentant le nombre de fichier de rotation
compress les fichiers d'archives (les anciens) sont compressés
archive répertoire dans lequel copier les fichiers d'archives
Exemple
-------
rotate size 500k time 1w files 10 compress archive /syslogfiles
Voyez cette page pour un exemple d'utilisation avec sshd
|
|
lancez le demon avec la commande suivante
SBMJOB CMD( CALL QP2SHELL PARM('/QOpenSys/usr/sbin/syslogd') )
JOB(SYSLOGD) JOBQ(QSYSNOMAX)
vous devez le retrouver dans QSYSWRK
.....................................................................
: SYSLOGD QSECOFR BCI 0,0 PGM-syslogd SELW :
:...................................................................:
et aussi sous NETSTAT *CNN
.....................................................................
: * * as-svrmap 000:56:10 Listen :
: * * syslog 030:35:04 *UDP :
: * * lpd 031:55:02 Listen :
:...................................................................:
|
|
Pour l'utiliser dans vos applications voyez l'API syslog
Documentation AIX sur l'API-> http://ibm.co/1N9AqBY
ou bien utilisez la commande logger dans un script
logger "message à envoyer"
S'il n'y a pas de démon syslog actif
emerg,alert et crit sont envoyés à *REQUESTER (QSYSOPR en batch)
err et warning sont envoyés dans la JOBLOG sous forme de message *DIAG
info, notice et debug sont envoyés dans la JOBLOG sous le type *INFO
|
©AF400