Architecture IBM i


Introduction à IBM i (notion de Gamme)




                     
Conception et historique des Minis IBM

A la base de la conception de l'AS/400 et de son système, il y avait la conception du System/38 devant remplacer le System/36. Le besoin de garder les clients du System/36 à conduit à concevoir un système pouvant faire tourner les applications System/36 sur la nouvelle machine. Le projet OS/400 mené par Franck Soltis est né. Son nom de code de l'époque : Silverlake.

 




75  |   3X
    |
    |   32/34
81  |              38
    |              /                        ................................
83  |   36        /                         : Minis  : Gros syst.: OS/400 :
    |      \     /      ....................:...............................
88  |        AS/400     :  modèles   B      | B10/B20 | B30-B70   : V1     :
    |                   :...................|.........|...........:........:
    |                   :          : D      | D06-D20 | D35-D80   : V2     :
    |                   :          :........|.........|...........:        :
    |                   :          : E      | E02-E25 | E35-E90   :        :
    |                   :          :........|.........|...........:        :
    |                   :          : F      | F02-F25 | F35-F97   :        :
    |                   :..........:........|.........|...........:........:
95  |                   :    Advanced       |   200   |   400     : V3R10  :
    |                   :        Series     |         |           :        :
    |                   ....................................................
96  |             :  Advanced Series  |  400    |   500     : V3R60  :
    |                   :...................|.........|...........:........:
97  |                   :  eSeries          |  600    |   620     :        :
    |                   :                   |         |   630     : V4R10  :
    |                   :.........................................:........:
99  |                   :  iSeries          |  170    |   720     :        :
    |                   :                   |  700    |   730     : V4R40  :
    |                   :.........................................:........:
2001|                   :  System i         |  270    |   8xx     : V5R10  :
    |                   :.........................................:........:
2004|  :   i5 (i5/OS)      |  520 | 550 à 595 : V5R3/R4:
    |                   :.........................................:........:

2007|  :   i5 (i5/OS)      |  515/525|  : V5R4 :
! : | (OS facturé à l'utilisateur):

    !                   :.........................................:........:
2008!                   
:   Power System    | 520/550 | 570 et + : V6R1 :
! : (IBM i ) |soft facturés à l'utilisateur :

    !                   :.........................................:........:
2010!                   
:   Power System    | 720/740 | 750 et + : IBM i :
! : (IBM i ) | | : 7.1 :

    !                   :.........................................:........: 2014!                   :   Power System    | S814/824| E870/E880 : IBM i :
! : (IBM i ) | | : 7.2 :

    !                   :.........................................:........: 2018!                   :   Power System    | S914/924| E980 : IBM i :
! : (IBM i ) | | : 7.3/7.4:

    V                   :.........................................:........:


A partir des modèles 400/500 la famille de processeur change
  (POWER-PC [technologie RISC], à 64 bits), actuellement le POWER 9



le plus puissant : 192 cœurs, 64 To de mémoire, plusieurs dizaines de Po disque.

Depuis 2001, chaque processeur accepte plusieurs partitions

Espace Adressable Unique de IBM i (OS/400)

Dès les débuts de la conception de l'AS/400 une technologie importante
avait fait son apparition: l'espace d'adressable unique (Single Level
Store). Il s'agit d'accéder aux emplacements mémoire d'un système en
confondant notamment la mémoire centrale et les disques durs. L'OS s'occupe de la répartition sur les disques considérés comme un espace de stockage indivisible .


        Espace adressable unique 
                                              .
        Chaque octet de mémoire (principale ou sur disque) possède une
        adresse. Le système AS/400 considère l'ensemble de la mémoire de
        l'ordinateur comme un seul grand espace adressable. Il ne fait pas
        la différence entre la mémoire principale et la mémoire sur disque
        lors du stockage et du traitement.



        A l'exécution si, bien sur.Mais la mémoire virtuelle règle le problème.



        Un AS/400 ne dit jamais mémoire pleine (sauf disques saturés),
         mais si vos besoins de mémoire sont trop volumineux les temps
         de réponse peuvent se dégrader.
 






   Ce graphique montre comment le système perçoit une configuration de  mémoire principale et de mémoire sur disque
 comme un espace adressable
unique et sans limites (pointeurs de 128 bits)







         _______________________________
         |         |         |         |
         | DISQUE 1| DISQUE 2| DISQUE 3|
         |         |         |         |
         |FICHIER A|FICHIER A|FICHIER A|
         |         | (suite) | (fin)   |
         |_________|_________|_________|





  Étant donné la façon dont le système gère la mémoire, il n'est pas
  nécessaire de stocker un gros fichier dans un seul espace.
  Le système le divise en plusieurs parties, qu'il stocke aux endroits
  disponibles, sur les unités de disques. Ce schéma montre comment un
  FICHIER A est stocké sur trois unités de disques différentes.

  Cette technique améliore les performances puisqu'elle permet de solliciter
   plus de disques en parallèle pour charger une information en mémoire.

 



     Le système stocke tous les fichiers d'après leur nom et utilise
      les informations contenues dans un "répertoire" pour les localiser
      physiquement. Vous ferez toujours référence à un fichier par son 
      nom. Vous n'avez pas besoin de vous préoccuper de son emplacement,
      ni de l'endroit où certaines de ses parties ont été stockées. Peu
      importe où réside un fichier, en mémoire principale ou sur disque.







     Même si le système AS/400 considère l'ensemble de la mémoire comme
      un seul espace, le programme et les données utilisées doivent
      résider en mémoire principale pour pouvoir être exécutés. La
      suite vous explique comment le système AS/400 veille à ce qu'il
      y ait toujours suffisamment d'espace pour tous les programmes.







        Mémoire virtuelle 


        La mémoire virtuelle donne l'impression de disposer d'une
        mémoire principale quasi-infinie.

        Elle supprime les contraintes imposées par une quantité fixe
        de mémoire principale.



        Dans la mémoire virtuelle de l'AS/400, un programme ou
        une zone mémoire sont automatiquement scindés en blocs
        appelés pages. 
        
(4096 octets sur les machines Power-PC).


        Une application traite de la même manière une page mémoire ou une page disque.

»Si une page a besoin d'être traitée et qu'elle est en mémoire centrale, son traitement est immédiat

»Si elle est sur disque, il y a alors émission d'un défaut de page demandant à l'OS de charger la page


 

Notion d'objet et de bibliothèque




                      ORGANISATION DES AS400.



  ORGANISATION DE L'INFORMATION
                                                                       

  rappel :

  L'ENSEMBLE DES DISQUES MAGNÉTIQUE ET DE LA MÉMOIRE CENTRALE
  EST CONSIDÉRÉ COMME UN TOUT APPELÉ L'ESPACE ADRESSABLE UNIQUE.

  LES INFORMATIONS SERONT PLACÉES DANS L'E.A.U C'EST LE SYSTÈME QUI
  SE CHARGE DE LES REPARTIR DANS LES UNITÉS.




  CETTE ORGANISATION ENTRAÎNE POUR LE SYSTÈME DE POUVOIR RETROUVER
  LES INFORMATIONS DANS L'E.A.U. DE MANIÈRE LOGIQUE ET ACCESSIBLE.

 1.1 OBJET
      





  DÉFINITION : EST APPELÉ OBJET TOUT ÉLÉMENT IDENTIFIE, CONTENANT
               SA PROPRE DESCRIPTION, ET MANIPULABLE PAR LES COMMANDES
               DU SYSTÈME, qui le protègent (encapsulation)

               EX: LES PROGRAMMES (type *PGM), LES FICHIERS (type *FILE)





               IL N'EST PAS POSSIBLE DE CRÉER UN NOUVEAU TYPE. 

                  La cohérence et la stabilté de l'OS/400 sont dues à cette notion d'objet.







  IDENTIFICATION : UN OBJET EST IDENTIFIE PAR 3 ÉLÉMENTS

                  - SON NOM DONNÉ PAR LE CRÉATEUR DE L'OBJET (10 C. maxi, doit commencer par une lettre)
Insensible à la casse



                  - SON TYPE EX : *FILE (POUR LES FICHIERS base de données et unités)
                                  *PGM  (POUR LES PROGRAMMES)
                                  *CMD  (POUR LES COMMANDES)
                                  *MSGQ (File d'attente [boite aux lettres] messages)
                                  *MSGF (Fichier messages, contient les messages prédéfinis)
                                  ETC...

                    le type induit un comportement (d'où le mot "objet")

                       on ne peut pas mettre à jour un programme
                        ni exécuter un fichier.

                       on ne peut pas changer le type d'un objet.



                  - SA BIBLIOTHÈQUE  DE RATTACHEMENT
Associations possibles: Même bibliothèque, même nom et types différents Bibliothèques différentes, même nom et même type Même bibliothèque, noms différents et même type




  COMPOSANTS D'1 OBJET:

       UN OBJET EST COMPOSÉ    1)- PARTIE ATTRIBUTS QUI CONTIENT LES
          DE 2 PARTIES :           RENSEIGNEMENTS SUR L'OBJET c'est la partie "publique"

                                      + - SON NOM
                                        - SON TYPE
                                        - SA BIBLIOTHÈQUE
- SON TEXTE DESCRIPTIF (50 c.)
                                        - DATES DE CRÉATION/ DE MODIF / DE SAUVEGARDE...
                                        - CRÉATEUR et PROPRIÉTAIRE
                                           etc...

                                      + - SES AUTORISATIONS La gestion des droits est toujours la même quelque soit l'objet puisque tout est objet

                               2)- LA PARTIE OBJET EN LUI-MÊME C'est la partie "privée", il faut un assesseur pour y accéder

                                    PAR EXEMPLE  POUR UN PROGRAMME,
                                     LE PROGRAMME EN LANGAGE MACHINE
                                       (LE PROGRAMME compilé))

                 -------------------
                 ! Description     !  OBJET DE L'AS/400      partie
   ATTRIBUTS     !-----------------!                          visible
                 ! Autorisations   !                          (publique)
 -------------   !-----------------! --------------------------------------
                 !                 !
                 ! enregistrements !                        partie cachée
   OBJET EN      !   si *FILE      !                         spécifique à
                 !                 !                         chaque type.
   LUI-MÊME      !  instructions   !
                 !   machine,      !
                 !   si *PGM       !
                 !                 !
                 !------------------





  CRÉATION : TOUS LES OBJETS UTILISATEURS SERONT CRÉES PAR UNE
             COMMANDE DE CRÉATION (CRTxxx).
             C'est lors de la création que seront donnés le nom et la
              bibliothèque. le type lui est indiqué par la commande.

 

La définition d'un utilisateur est un objet *USRPRF
(on enregistre les caractéristiques et les droits de cet utilisateur)

la définition d'un périphérique (écran ou imprimante) aussi : Unité ou *DEVD


BIBLIOTHÈQUE
------------

    UNE BIBLIOTHÈQUE EST UNE LISTE D'OBJETS, ON POURRAIT COMPARER
     UNE BIBLIOTHÈQUE AU RÉPERTOIRE DES LIVRES D'UNE BIBLIOTHÈQUE RÉELLE.

    IL RÉPERTORIE TOUS LES LIVRES DE LA BIBLIOTHÈQUE ET INDIQUE
     L'ENDROIT PHYSIQUE OU SE TROUVE LES LIVRES.



    TOUT OBJET EST RATTACHÉ A UNE BIBLIOTHÈQUE ET UNE SEULE.
                              ---                 ---------



les objets systèmes (utilisateurs et périphériques sont rattachés à QSYS)
pour garantir l'unicité des objets, par exemple un utilisateur sera unique.






LISTE DE BIBLIOTHÈQUES
----------------------

   CHAQUE OBJET EST RATTACHE A UNE BIBLIOTHÈQUE

   LORSQUE VOUS VOUDREZ UTILISER UN OBJET VOUS DEVREZ INDIQUER SON NOM
    ET SA BIBLIOTHÈQUE.(QUALIFIER)

   LE SYSTÈME NOUS PERMET DE GÉRER SIMPLEMENT LES OBJETS, POUR
    CELA NOUS ASSOCIERONS A CHAQUE TRAVAIL UNE LISTE DE BIBLIOTHÈQUES.

   CETTE LISTE DE BIBLIOTHÈQUES CONTIENDRA TOUTES LES BIBLIOTHÈQUES
    NÉCESSAIRES POUR LE TRAVAIL. LORSQUE VOUS DEMANDEREZ L'UTILISATION
    D'UN OBJET VOUS N'INDIQUEREZ QUE SON NOM ET LE SYSTÈME IRA
    CHERCHER DANS CHACUNE DES BIBLIOTHÈQUES L'OBJET QUE VOUS RECHERCHEZ.

   IL ARRÊTERA SA RECHERCHE DES QU'IL AURA TROUVE L'OBJET RECHERCHE.

   CETTE LISTE DE BIBLIOTHÈQUES PEUT ÊTRE MODIFIÉE A N'IMPORTE QUEL
    MOMENT GRÂCE A DES COMMANDES. CHGLIBL (Change Library List) par ex.



   UN EXEMPLE: AU DÉBUT DE VOTRE TRAVAIL VOUS AVEZ LA LISTE DE BIBLIOTHÈQUES
               SUIVANTE:  "BIB1 BIB2 BIB4" (le séparateur est l'espace)

               CETTE LISTE NE VOUS CONVIENT PAS IL VOUS FAUDRAIT
                          "BIB3 BIB1 BIB5"

               POUR LA MODIFIER VOUS UTILISEREZ LA COMMANDE CHGLIBL

                CHGLIBL LIBL(BIB3 BIB1 BIB5)

               L'ORDRE DE DÉCLARATION  DES BIBLIOTHÈQUES DANS LA
                LISTE EST TRÈS IMPORTANTE, ELLE CONDITIONNERA
                L'ORDRE DE RECHERCHE DANS LES BIBLIOTHÈQUES

               PRENONS L'EXEMPLE SUIVANT:

               CALL PROGA
               call est une commande qui permet l'exécution d'un
                    programme, PROGA étant le nom du programme.





               DANS CET EXEMPLE NOUS N'AVONS PAS INDIQUÉ LE NOM
                DE LA BIBLIOTHÈQUE. LE SYSTÈME RECHERCHERA DONC
                LE PROGRAMME DANS LES BIBLIOTHÈQUES DE *LIBL
                (en commençant par la première de la liste, ici BIB3)



           BIB3                      BIB1                      BIB5
  ......................   .......................   ......................
  :         !          :   :          !          :   :          !         :
--->PROGA   ! FICHF    :   : PROGZ    ! PROGD    :   : PROGG    ! FICHL   :
! :         !          :   :          !          :   :          !         :
! :--------------------:   :---------------------:   :------------------ -:
! :         !          :   :          !          :   :          !         :
! : PROGF   ! FICHK    :   : PROGA    ! FICHI    :   : FICHA    ! FICHO   :
! :         !          :   :          !          :   :          !         :
! :....................:   :.....................:   :....................:
!
!-------------------> Programme sélectionné







         MAINTENANT SI J'EXÉCUTE LES COMMANDES SUIVANTES

               CHGLIBL LIBL(BIB1 BIB3 BIB5)
               CALL PROGA

               PROGA de BIB1 sera sélectionné

   D'AUTRES COMMANDES NOUS PERMETTENT DE MODIFIER LA LISTE DE BIBLIOTHÈQUES

          - ADDLIBLE (permet d'ajouter une bibliothèque à la liste)

              PRENONS LA LISTE SUIVANTE: BIB3 BIB1 BIB5
               SI J'EXÉCUTE LA COMMANDE  ADDLIBLE BIB2
              NOTRE LISTE DEVIENDRA :    BIB2 BIB3 BIB1 BIB5

          - RMVLIBLE (permet d'enlever une bibliothèque de la liste)

              SI J'EXECUTE LA COMMANDE  RMVLIBLE BIB1
              NOTRE LISTE DEVIENDRA :    BIB2 BIB3 BIB5

          - EDTLIBL (modification de la liste à l'écran)

Quelques exemples

Bibliothèque manquante

 

on l'ajoute

 

EDTLIBL

 

le progamme est trouvé !


RÈGLES
------

  - TOUT TRAVAIL DOIT DISPOSER D'UNE LISTE DE BIBLIOTHÈQUES

  - ELLE EST REMPLAÇABLE A TOUT MOMENT

                 CHGLIBL, ADDLIBLE, RMVLIBLE

  - 25 BIBLIOTHÈQUES AU MAXIMUM DANS LA LISTE (250 en V5)


  - ELLE EST SYMBOLISÉE PAR LE MOT RÉSERVÉ *LIBL 

  - IL NE PEUT EXISTER DEUX OBJETS DE MÊME NOM ET DE MÊME TYPE,
    RATTACHES A UNE MÊME BIBLIOTHÈQUE.

   - TOUT OBJET DOIT ÊTRE SUPPRIMÉ DE LA BIBLIOTHÈQUE. AVANT DE POUVOIR
     ÊTRE RÉCRÉÉ

   - IL SERA SUPPRIMÉ PAR UNE COMMANDE DLTxxx
           (xxx étant le type de l'objet et DLT étant définitif)



  Structure d'origine de l'Espace Adressable Unique
   - QSYS est le point d'entrée (c'est aussi la bibliothèque système)
   - Certains objets ne peuvent être attachés qu'à QSYS (profil,unité)
   - Seul QDOC (qui est une "extension" à l'EAU) supporte les arborescences.
 ................................QSYS.....................................
 :                              /   \ \ _ ______________                 :
 :                            /      \   \             |-QSECOFR (root)  :
 :                          /          \    \          |-DSP01 (console) :
 :                        /              \    \                          :
 :                   QDOC(DLS)         COMPTA   \- PAIE                  :
 :                   /   \                |           |                  :
 :                 /       \              |-fic1      |-fic11            :
 :            dossier1    QIWSFLR         |           |                  :
 :             /  \            \          |-fic2      |-fic12            :
 :           /      \           \         |                              :
 :         /          \        PCSADM.EXE |-pgm1                         :
 :    sous-dossiera   document1                                          :
 :    /   \                                                              :
 :   /      \                                                            :
 : doca1.doc doca2.doc                                                   :
 :.......................................................................:

 V3R10 : Structure IFS.         "root"
 ................................ / ......................................
 :          -------------------/ /| \------------------\                 :
 :        /      /           /  / |   \home             \                :
 :      /      /            /  |  |                      \QNT & QNTC     :
 :     /    QOpensys       /   | QSYS.lib _____________                  :
 :    /    (UNIX "like")  /    |    \    \             |                 :
 : madir      /          /     |     \     \           |-QSECOFR.USRPRF  :
 :   |       /  \       /    QOPT     
 \     \         |-DSP01.DEVD      :
 :   |      /   user   /      /\        
 \     \___                      :
 :   /     bin       QDLS       \      COMPTA.lib  PAIE.lib              :
 :  / \              /   \    (Cd-Rom)    |           |                  :
 : /   \           /       \              |-fic1.FILE |fic11.FILE        :
 :dir1  \     dossier1    QIWSFLR        
 |           |                  :
 :     dir2    /  \            \          |-fic2.FILE |fic12.FILE        :
 :           /      \           \        
 |      ######################  :
 :         /          \        PCSADM.EXE |-pgm1 #                    #  :
 :    sous-dossiera   document1                  # la branche QSYS    #  :
 :    /   \                                      #  est inchangée     #  :
 :   /      \                                    # (non arborescente) #  :
 : doca1.doc doca2.doc                           ######################  :
 :.......................................................................:




  Chaque profil se voit attribuer un répertoire initial (HOMEDIR)

    (Normalement /home/nom-du-profil)

  Chaque travail possède un répertoire en cours (CURDIR)

    par défaut le répertoire "home/profil"

    modifiable par CHGCURDIR ou CD comme sous DOS !!!

     le chemin peut être indiqué relativement au répertoire en cours.

     -> dir1/fichier.doc  (on utilise le "/")

     ou sous forme de chemin absolu à partir de la racine
     ->  /dir1/fichier.doc

  la commande WRKLNK donne accès à l'arborescence complète ainsi que le
      produit "Operation navigator" livré sur le Cd de Client Access.

un Editeur de fichier stream (ou fichier à plat) est livré depuis la V4R40 : EDTF

ici, la commande WRKLNK montre la racine (/)



le nouvel émulateur (IBMi Access Client Solution) propose un accès à l'IFS (menu ACTION)




ainsi que Navigator for I (un accès graphique via un navigateur sur le port 2001)

 

Les commandes (syntaxe)





                          LES COMMANDES

  LES COMMANDES SONT DES ORDRES DONNES AU SYSTEME POUR L'EXECUTION
  DE CERTAINES TACHES.

  IL EXISTE ENVIRON 1500 COMMANDES SUR L'AS, ELLES SONT TOUTES CONCUES
   DE LA MEME FACON.

 1 SYNTAXE

  UNE COMMANDE EST COMPOSEE DE 2 PARTIES PRINCIPALES.

  L'action à exécuter  +  les paramètres de la commande

        VERBE          +          MOTS-CLES

  Les commandes permettent en particulier de manipuler les objets Si les paramètres sont nommés alors l'ordre n'a pas d'importance Indiquer entre '' les caractères spéciaux ou les espaces

  ===> à l'aide de la commande on indiquera l'action à effectuer
       et grâce aux paramètres le nom de l'objet que l'on veut manipuler.

 1 SYNTAXE (suite)


  Pour séparer la commande du 1er mot clé et chacun des mots-clés
  on utilise le caractère blanc.

  Si l'on veut qualifier un objet par le nom de sa bibliothèque
  de rattachement on indiquera  BIBLIOTHEQUE/OBJET

  Le nom de la commande est composé généralement d'un verbe (l'action)
  sur 3 lettres et du type de l'objet que l'on veut manipuler.

        Exemple de verbes commençant les commandes

            CRT     create (créer un objet)

            DLT     delete (supprimer un objet)

            CHG     change (changer un objet)

            ADD     add    (ajouter une partie à un objet)

            RMV     remove (enlever une partie à un objet)  etc...

 1 SYNTAXE (suite)


     Si je veux créer un utilisateur j'utiliserai la commande

            CRTUSRPRF        USRPRF(nom de l'utilisateur)
              !                      !
              !          ------------------------------------
              !           Paramètre de la commande indiquant
              !           le nom de l'utilisateur à créer
        -------------
        CReaTe
        USeR PRoFile

     Si je veux supprimer un programme j'utiliserai la commande

            DLTPGM         PGM(bibliothèque/nom du programme)
              !                      !
              !          ------------------------------------
              !           Paramètre de la commande indiquant
              !           le nom du fichier à supprimer
        -------------
        DeLeTe ProGraM

 L'écran de commandes nous permet de demander l'exécution des commandes :

 cet écran est appelé par  CALL QCMD  (c'est un peu command.com sur AS)

Sur cet écran nous allons pouvoir demander l'exécution d'une commande ,

par exemple la création d'un nouvel utilisateur

En dessous de la commande que vous avez frappé apparaissent des  
 
   messages indiquant le résultat de la demande d'exécution de la commande.                                                            

   Il est très important de lire ces messages pour savoir si la commande a été exécutée 
avec succès ou non, et si non, connaître 
les raisons de cet insuccès. 

 

Il est possible que le message ainsi affiché ne soit pas très clair   ou alors qu'il soit incomplet. Vous pouvez demander un complément   d'information sur le message en positionnant le curseur sur le   message désiré et en appuyant sur la touche AIDE (F1).
  C'est ce que nous allons faire en nous positionnant sur le message   
 "Le profil utilisateur existe déja".



Le message apparaît dans la langue de l'utilisateur (sauf les messages d'erreur réseau)

C'est le code d'erreur ( ici CPF2214) qui permettra une recherche sur internet

 

Si vous n'avez plus en mémoire les différents paramètres ou si vous souhaitez de l'aide quant aux valeurs pour un paramètre, demandez l'invite (ou Guide opérateur) en appuyant sur F4.




Sur cet écran d'invite, remarquons :

 les champs obligatoires en Haute intensité 

 les champs facultatifs en intensité simple (avec une valeur par défaut).



 les touches de fonction :

     F1     qui vous affiche l'aide en fonction de la position curseur.

     F3/F12 pour annuler la commande

     F10    affiche des paramètres de moindre importance
            (par défaut on vous affiche les principaux paramètres)

     F11   affiche en alternance :  - un extrait des val. possibles à droite
                                    - le nom de chaque paramètre à gauche

     F13   vous explique en détail tout cela et plus encore.

Principaux verbes des commandes CL



      ADD    ajouter                RMV    enlever
      APY    appliquer
      CFG    configurer
      CHG    modifier
      CHK    vérifier
      CLR    mettre à blanc
      CPY    copier
      CRT    créer                  DLT    supprimer
      CVT    convertir
      DCL    déclarer
      DSP    afficher
      DUP    dupliquer
      EDT    réviser
      GRT    accorder               RVK    révoquer
      HLD    suspendre              RLS    libérer
      INZ    initialiser
      MOV    déplacer
      OPN    ouvrir                 CLO    fermer
      OVR    substituer
      RNM    rebaptiser
      SAV    sauvegarder            RST    restaurer

      SBM    soumettre
      SND    envoyer                RCV    recevoir
      STR    démarrer               END    arrêter
      WRK    gérer

Sujets :
      CFG    configuration          SQL    commandes SQL
      CMD    commande               SRV    maintenance
      CTL    contrôleur             SYS    système
      DBF    fichier B de D.        USR    utilisateur
      DEV    unité                  WS     Poste de travail
      DKT    disquette              WTR    éditeur
      JOB    travail(JOBD, JOBQ)
      LIB    bibliothèque           ... etc ...
      LIN    ligne(LIND)
      LOG    historique
      OUT    sortie(OUTQ)
      SAV    sauvegarde(SAVF)
      SBS    sous-système(SBSD)
      SPL    Spool(SPLF)



Commandes importantes

    Commande   !  libellé                                 ! cde inverse    
      ADDLIBLE ! ajouter bibliothèque à *LIBL             !  RMVLIBLE
      EDTLIBL  ! réviser *LIBL                            !
               !                                          !
      CRTLIB   ! créer une bibliothèque                   !  DLTLIB
      SAVLIB   ! sauvegarder                              !  RSTLIB
               !                                          !
      WRKOBJ   ! obtenir une liste d'objet à gérer        !

WRKOBJ *LIBL/DRH*           ==> tous les objets commençant par DRH dans la liste de bibliothèques

WRKOBJ *ALL/DRH*             ==> tous les objets commençant par DRH dans toutes les bibliothèques

WRKOBJ PAIE/DRH* *PGM ==> tous les programmes commençant par DRH dans la bibliothèque PAIE

WRKOBJ PAIE/*ALL               ==> tous les objets de la bibliothèque PAIE


      WRKLIB   !   "      "    "   de bibliothèques       !
      WRKF     !   "      "    "   de fichiers            !
      WRKLNK   ! gérer les liens des fichiers IFS (stream)!
               !                                          !
      CALL     ! lancer un programme                      !
               !                                          !
      GO       ! lancer un menu (GO ASSIST par ex.)       !
               !                                          !
      SNDMSG   ! envoyer un message impromptu !
             ! (non défini dans un fichier message) !

      WRKMSG   ! gérer ses messages (dans une MSGQ)       !
  CHGMSGQ  ! modifier la réception des messages !
    ! DLVRY(*BREAK ou *HOLD) !


Commandes opérateur (nous en verrons le sens plus loin)


    Commande   !  libellé                                 ! 
               !                                          !
    Travaux    !                                          !
               !                                          !
     WRKUSRJOB ! gérer les travaux d'un utilisateur       !
     WRKJOBQ   ! gérer les travaux en attente             !
     WRKSBS    ! gérer les sous systèmes actifs           !
     WRKACTJOB ! gérer les travaux actifs                 !
               !                                          !
    Spools     !                                          !
               !                                          !
      WRKSPLF  ! gérer les états d'un utilisateur         !
      WRKOUTQ  ! gérer les files d'attentes imprimantes   !
               !                                          !
    Editeurs   !          !
               !                                          !
      WRKWTR   ! gérer les éditeurs d'imprimantes         !
               !                                          !  Espace disque !          !
               !                                          !
     WRKDSKSTS ! Analyse espace et activité disques   !
     RTVDSKINF ! Récupération d'informations globales   !
     PRTDSKINF ! Impression des informations collectées
   !

Les différents systèmes d'aide IBM i





Il existe différents moyens de se faire aider sur AS/400.

1/ utiliser la touche aide (souvent fonction de la position curseur)

2/ utiliser les menus (GO xxxxxx)

   il existe des menus CMDxxx où xxx représente le verbe d'une commande
                       CMDADD,CMDCRT,CMDDLT,...

      tous ces menus sont répertoriés dans le menu VERB

   puis des menus CMDzzz où zzz représente un sujet
                       CMDOBJ,CMDLIB,CMDPGM,...

      tous ces menus sont répertoriés dans le menu SUBJECT

   Les menus VERB,SUBJECT, et des menus thématiques sont répertoriés
    dans MAJOR (c'est le menu qui vous sera affiché si vous faites F4
    sur une ligne de commande vierge)





A NOTER : la commande GO accepte les noms génériques
          la commande SLTCMD accepte les noms génériques

          Depuis la V2R30 vous pouvez saisir directement un nom générique



Deux menus sont très pratiques pour obtenir des renseignements

     1/ GO INFO

     1. Recherche d'informations
     2. Commentaires

    10. Nouveautés

    20. Démarrage d'InfoSeeker (BookManager)
    21. Formation en ligne



Malheureusement ce menu a été vidé de son sens depuis la V4 qui livre
    la documentation sur CD PC ou directement en ligne aux sites suivants:



 Sites Web IBM   
 Annonces et nouveautés     : http://www-03.ibm.com/systems/power/software/i/
  Knowledge center          : https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_73/rzahg/welcome.htm                                                               
 Redbooks                   : http://www.redbooks.ibm.com
 Correctifs (fixCentral) : https://www-945.ibm.com/support/fixcentral/

ET peut être aussi : http://www.volubis.fr




         2/ GO ASSIST
Orienté utilisateurs
        et les menus d'ASSISTANT/400

    Depuis la V2R10 intégré dans l'OS/400, utilisé par beaucoup de commandes
    WRK...,l'écran est fonction du niveau de l'utilisateur.





       Pour chaque utilisateur (profil),
        le paramètre ASTLVL définit le niveau d'assistance souhaité
        (modifiable par F21, option par option) :

                               *BASIC      (débutant => écrans assistant)
                               *INTERMED   (initié   => écrans système
                                            touches de cdes affichées)
                               *ADVANCED   (expérimenté => idem initié
                                            mais "plein écran")






           ASSISTANT/400 :

           Les commandes utilisant le niveau d'assistance sont:

               + WRKCFGSTS Gestion état de la configuration
               + WRKMSG    Gestion des messages
               + WRKUSRJOB Gestion des travaux
               + WRKUSRPRF Gestion des profils
               + WRKSPLF   Gestion des spoules
               + WRKWTR    Gestion des éditeurs

           Les principaux menus sont

               + SETUP     Définition du système
               + ASSIST    Taches courantes d'un utilisateur ou d'un op

               + DEVICESTS Gestion des unités
               + BACKUP    Tâches de sauvegarde
               + POWER     Mise hors/sous tension du système
               + CLEANUP   Tâches de ménage





Si vous souhaitez des informations 
(y compris lorsque vous êtes
 "entrée verrouillée") utilisez l'appel système

(touche MAJ + "Syst" [la même que ATTN mais en majuscule].)

  1: session alternée = TFRSECJOB
  2: annulation de la dernière demande = ENDRQS
  3: infos sur le travail en cours = DSPJOB(10 = historique du travail)
  4: affichage de vos messages = DSPMSG
  5: envoi de messages = SNDMSG
  6: messages de l'opérateur = DSPMSG QSYSOPR
  7: affichage de l'utilisateur = DSPWSUSR



 80: pause = DSCJOB

 90: arrêt du travail = SIGNOFF

 

TRAVAUX


gestion des travaux





                          GESTION DES TRAVAUX
                          -------------------



INTRODUCTION
------------

   L'AS/400 distingue 4 types principaux de jobs

   - Job interactif, commence quand un utilisateur se signe sur un écran,
     se termine lorsque l'utilisateur se désigne (SIGNOFF).

   - Job batch, commence quand le travail est sélectionné d'une job queue

   - Fonction spools (Editeur)

   - Jobs à démarrage automatique utilisé pour exécuter des travaux
     répétitifs ou des travaux d'initialisation. Ils sont associés à des
     sous-systèmes, à chaque démarrage du sous-système le job s'exécutera.





   Tous les jobs s'exécutent dans un environnement appelé sous-système.

   Un groupe de jobs avec des caractéristiques communes peut être
   contrôlé indépendamment des autres jobs, si ces jobs sont placés
   dans un même sous-système. Ces sous-systèmes peuvent être aisément
   démarrés ou arrêtés, pour des besoins d'exploitation.

   Un sous-système appelé le sous-système de contrôle est automatiquement
   démarré quand l'OS est démarré.
   (normalement les jobs de la console sont initialisés dedans)

   Un travail ne peut s'exécuter dans un sous-système que si celui-ci est
   démarré.

   les travaux interactifs s'exécutent souvent dans QINTER,les batchs dans QBATCH,
 les travaux de télécommunication dans QCMN, les serveurs WEB dans QHTTPSVR

   les travaux pour dialoguer avec les PCs dans QSERVER et les démons IP dans QSYSWRK.

   Les fonctions spool (éditeur) sont initialisées dans un sous-système particulier (QSPL)

Pour les travaux BATCH, il y a file d'attente (JOBQ) afin d'empiler les demandes avant traitement.


On peut multiplier les JOBQ, multiplier les sous-systèmes


==> Choisir une JOBQ, c'est (indirectement) choisir un sous-système.



Vue d'ensemble du système



 D'où viennent les paramètres d'un JOB

 1/ certains viennent des valeurs système

    paramètre unique sur une machine comme la date, l'heure, le N° de série
 
2/ le profil utilisateur (DSPUSRPRF) référence une JOBD à utiliser indiquant :

       - les priorités en file d'attente OUTQ et JOBQ
       - les files d'attentes et imprimantes par défaut
       - la liste de bibliothèque (*LIBL)
       - et autres paramètres ...(DSPJOBD pour les voir)


 3/ le sous système lui, indique une classe (objet *CLS) qui précise

       - priorité machine
       - temps maximum de prétention à la CPU

    dans le cadre du multi-tâche préemptif.

pour voir les paramètres d'un travail, DSPJOB :

1 : affiche l'état du travail (utilisateur, sous système, date d'entrée)
2 : affiche les attributs de définition, donnés par la JObD, dont son nom
3 : affiche les attributs d'exécution donnés par la classe

10 : affiche l'historique des commandes passées et les messages associés (DSPJOBLOG)



      Les jobs sont placés dans une job queue par
          la commande suivante:



          - SBMJOB

            pour changer certains paramètres ou changer de JOBQ: CHGJOB

      paramètres importants :

           SBMJOB

                  CMD(la commande à soumettre)

                  JOB(le nom du job, mettez un nom qui VOUS parle)

                  JOBD(avec quelle JOBD)

                  JOBQ(dans quelle JOBQ)








 Une JOBD permet d'initialiser mes paramètres suivants :

- Liste de bibiothèques (*LIBL)


 - priorités (en entrée[JOBQ], et en sortie[OUTQ].)

 - JOBQ à utiliser par défaut (si ce JOB soumet d'autres jobs)

 - niveau d'historique (plus ou moins complet)

 - texte de pied de page sur les états

 - imprimante et file d'attente à utiliser pour les impressions



   par défaut la file d'attente est celle associée à l'imprimante, et
    l'imprimante peut être associée au profil (fonction de la personne)
    ou (par défaut) à l'écran.(fonction de l'endroit où ce trouve
                                cette personne)





 La planification des travaux :

  Elle peut s'effectuer de deux manières

       1/ occasionnelle > paramètres SCDDATE et SCDTIME de la cde SBMJOB.

          le travail est soumis "holdé" et sera libéré à la date et
           heure indiquée.



       2/ régulière     >  commande WRKJOBSCDE.

          les références sont enregistrées dans un fichier et le
           système soumettra à la date(ou fréquence) et heure indiquées

          Les références seront conservées dans le fichier pour la
           prochaine soumission.

         Une fois le job terminé le poste du fichier de planification
          est mis à jour (date de dernière exécution,..)


Quelques commandes utiles.
--------------------------

 retrouver les jobs d'un utilisateur :

  WRKUSRJOB  USER    *
                     un-nom
                     *ALL

             STATUS  *ALL
                     *JOBQ
                     *ACTIVE
                     *OUTQ

             JOBTYPE *ALL
                     *INTERACT
                     *BATCH




 retrouver les jobs d'un sous système

  WRKSBSJOB

(WRKSBS donne la liste des sous systèmes actifs)



 retrouver TOUS les jobs actifs

  WRKACTJOB
(F16 pour trier suivant une colonne précise)



 Voir les JOBQs (et leur attachement sous-système)

  WRKJOBQ



 voir les jobs en attente dans une JOBQ

  WRKJOBQ un-nom



ARRET ET DEMARRAGE DES SOUS SYSTEMES
------------------------------------



   STRSBS start sub-system



   ENDSBS end sub-system



   ou

   ENDSYS (= ENDSBS *ALL )



ARRET DU SYSTEME
----------------



   PWRDWNSYS   power down system

Navigator for I

 

Il s'agit de la nouvelle interface graphique orientée WEB (sur le port 2001, vous serez redirigé)

On peut raisonnablement penser que la plupart (sinon toutes) les commandes de paramétrage de l'OS pourrons se faire par le biais de ce produit.
Déjà, certaines actions ne sont disponible QUE sous Navigator.

 

Les actions proposées sont les suivantes :

vous pourrez

  1. voir vos messages, les détruire
  2. répondre aux questions
  3. envoyer des messages

Pour envoyer, Menu Action

Choisissez vos utilisateurs par survol

Les boutons survol proposent toujours une liste, suivant le contexte.

ICI, liste des utilisateurs ou liste des terminaux (écrans).

 

Nous pouvons modifier les critères de sélection, par Action/inclusion :

 



les actions possibles sont (entre autre) :

  1. Voir les spools produits par ce travail
  2. voir l'historique de ce travail
  3. Détails, voir les pgms actifs, les fichiers ouverts , ....
  4. Répondre aux messages
  5. Suspendre et libérer le JOB
  6. Déplacer (s'il est en JOBQ)
  7. et voir/gérer les paramètres de ce travail (Propriétés)

 


Vous avez aussi

  • La gestion des travaux actifs:


    affiche l'équivalent de la commande WRKACTJOB
  • La liste des sous-systèmes actifs
  • La liste des JOBQ
  • La liste des OUTQ


gestion des spools




                       TRAVAUX SPOOLS EN SORTIE



 LA FONCTION SPOOL PERMET :

        - Le dialogue avec les unités lentes
         - Le partage des unités non partageables

                 (ex: imprimante )

         - La dissociation du traitement des sorties et les sorties réelles

           

         - Elle s'exécute dans le sous-système spool (QSPL en standard)

         - Les travaux seront soumis par la commande STRxxxWTR. (PRT ou RMT)






 DISSOCIATION DU TRAITEMENT DES SORTIES ET LES SORTIES REELLES
                                                                       
 Cette dissociation se fera grâce:

                 - à l'interception des ordres d'écriture vers l'imprimante

                 - à l'écriture réelle vers les supports externes

 LES OUTILS DE CETTE DISSOCIATION

 Le fichier spool

  Lors de la demande de l'impression par un JOB les lignes d'édition
  seront non pas envoyées à l'imprimante mais interceptées par la fonction
  spool qui les enverra dans un membre d'un fichier spool.

  Chaque membre d'un fichier spool est identifié par le nom du fichier
  d'impression qui a permis la création de ce membre spool et par
  des informations sur le travail qui a permis la création de ce
  membre spool.



 La file d'attente de sortie (OUTQ)

    Chaque membre d'un fichier spool est référencé ("placé") dans
    une file d'attente de sortie (Output queue).

    Cette file d'attente de sortie peut être considérée comme
    une "imprimante logique".

    Elle contiendra les membres spools qui lui ont été rattachés.
    Il peut exister plusieurs OUTQ dans notre E.A.U..

 Le fichier d'impression(PRTF).

    Interface externe entre le programme (ou la commande) produisant
    un état à imprimer et l'unité d'impression.

    Devra être créé avant son utilisation

    Contient les informations caractérisant l'état à imprimer
          Nombre de lignes - nombre de caractères par ligne
          file d'attente de sortie -  densité etc....



    Les paramètres importants d'un PRTF (modèle de spool)


        FORMSIZE  66       nombre de lignes par page
                  132      nombre de caractères par ligne

        LPI       6        nombre de lignes au pouce (Line Per Inch)
        CPI       10       nombre de caractères au pouce (Character Per Inch)

        OUTQ      *JOB     File d'attente où sera placé le fichier spool
                   ou      *JOB celle associée au travail.
               nom d'outq

        HOLD      *NO      état du fichier spool dans la file d'attente
                   ou      
*YES
*YES le fichier spool sera retenu

                        *NO  le fichier est dans l'état prêt
        SAVE      *NO      Conserver ou non le fichier spool dans
                   ou      l'OUTQ une fois édité
                  *YES


 Le fonctionnement se déroule en 2 étapes :


   1 INTERCEPTION DES ORDRES D'ECRITURE.
       __________________________________          ____________
       !                                !          !paramètres! FICHIER
       !                                !     !--> ! CPI=     ! IMPRIMANTE
       !     _________________          !     !  ! ! LPI=     !
       !     !               !          !     !  ! !  .....   !
       !     ! OPEN FICIMP --!----------------!  ! !__________!
       !     ! ___________   !          !        !
       !     ! ___________   !          !        ! ____________
       !     ! ___________   !          !        ! ! ref  adr ! OUTQ
       !     ! WRITE --------!----------------!  !>!SP01  xxxx!------------
       !     !_______________!          !     !    !          !           !
       !                                !     !    !          !           !
       !                                !     !    !__________!           !
       !________________________________!     v                           !
                                             _________                    !
                                            <_________>  FICHIER <--------!
                                            ! ligne1  !  SPOOL
                                            ! ligne2  !
                                            !_________!





    a) A l'ouverture du fichier le système récupère dans le fichier
       d'impression les caractéristiques du fichier.

                 - caractéristiques de l'état
                 - nom de la file d'attente de sortie
                 - paramètres du spool

    b) Il crée un membre dans un fichier spool avec ces caractéristiques
       (l'OUTQ étant celle indiquée par le fichier d'impression).

    c) Les écritures viennent se placer dans le membre du fichier spool


 2 EDITION REELLE (1er cas, imprimante connectée à l'AS/400) 

  
  - A un instant donné on relie une file d'attente
      de sortie à une unité physique (imprimante).

   Tous les fichiers prêts à être édités de cette file
 
     d'attente seront édités sur l'unité physique .

  • Une file d'attente ne peut à un instant donné        alimenter qu'une seule unité physique.

  • La liaison (OUTQ - IMPRIMANTE) se fait grâce

       à une commande STRPRTWTR 


  • Il est possible de sélectionner le TYPE de papier
      (listing, 80 colonnes, doubles exemplaires,...)        seuls les états du type indiqué seront imprimés.

Sans paramètre, l'éditeur imprime tous les Types, avec gestion par message quand celui-ci change.


 



   2 EDITION REELLE (2éme possibilité, serveur d'impression)

     - A un instant donné on relie une file d'attente de sortie
       à un serveur d'impression éloigné


       Ce serveur peut être un autre AS/400, un serveur d'impression NT/Unix
Ou un boitier / attachement réseau imprimante implémentant LPD


       si le serveur n'est PAS un autre AS/400, l'AS/400 local convertira le spool en ascii
ET TRANSFORMERA LE FLOT EN FLOT COMPRÉHENSIBLE PAR L'IMPRIMANTE ÉLOIGNÉE
(fonction Host Print Transform)


               - l'AS/400 gère de nombreux format dont le PCL5 (plus JET direct) et le postscript


               - La liaison (OUTQ -serveur) se fait grâce
                 à une commande STRRMTWTR

               - L'AS/400 local ne se considère pas responsable des erreurs imprimante


 LA PRATIQUE


   - Les différents travaux que vous allez effectuer vont générer
     des listes ===> des fichiers spools.

   - Vos fichiers spools ne sortent pas sur l'imprimante

       - Plusieurs raisons sont à considérer

            1 L'imprimante n'est pas active

            2 L'imprimante est en cours d'impression avec une autre OUTQ
              que celle où sont placés vos fichiers spools

            3 L'imprimante est active avec l'OUTQ de vos fichiers spools
              mais elle sort d'autres fichiers spools.

            4 Vos fichiers spools ne sont pas prêts.

            5 Vos fichiers spools ne sont pas du type de papier indiqué.



   Quelle que soit la raison de la non sortie de vos fichiers spools.
   Une des premières actions à effectuer est de visualiser l'OUTQ
   contenant vos fichiers spools. Dans la plupart des cas ils se
   retrouveront dans l'OUTQ PRT01 (nous verrons plus loin comment
   retrouver l'OUTQ de vos fichiers spools).

   La commande pour visualiser les fichiers spools est WRKOUTQ.

          Gerer une File Attente Sortie (WRKOUTQ)

       File d'attente en sortie:        OUTQ           *ALL      
         Bibliothèque:

       Sortie (* ou *PRINT):            OUTPUT         *         

       Etudions le paramètre OUTQ de cette commande

          OUTQ           *ALL           vous indiquerez ici le nom
                                        de l'outq que vous voulez
                                        visualiser. Par défaut la
                                        valeur *ALL sera prise

      Regardons le résultat de cette visualisation.



                Gestion de toutes les files d'attente de sortie 

 Indiquez vos options, puis appuyez sur ENTREE. 
   2=Modifier   3=Suspendre   5=Gérer   6=Libérer   8=Description 

 Opt     File           Biblio          Fich     Editeur        Etat 
         QDKT           QGPL               0                    RLS  
         QPFROUTQ       QGPL               0                    RLS  
         QPRINT         QGPL               0                    RLS  
         QPRINTS        QGPL              10                    RLS  
         QPRINT2        QGPL               2                    RLS  
  5      PRT01          QUSRSYS            2     PRT01          RLS  
         PRT02          QUSRSYS            0                    RLS  
         QSUPPRT        QUSRSYS            0                    RLS  
         TAAOUTQ        TAATOOL            0                    RLS  



 Commande 
 ===>                                                                           
 F3=Exit   F4=Invite   F5=Réafficher   F12=Annuler   F24=Autres touches 

        Chaque ligne correspond aux informations sur une OUTQ


        Détaillons une ligne

         File           Biblio          Fich     Editeur        Etat 
         PRT01          QUSRSYS            2     PRT01          RLS  
          !                 !              !      !             !
          !                 !        ------!      !             !
          !     ------------------   !   ------------------     !
          !      bibliothèque de     !   si l'outq est en       !
          !      rattachement de     !   cours d'impression     !
          !      l'outq              !   nom de l'éditeur       !
          !                          !                          !
   -----------------        ------------------        --------------------
    Nom de l'outq           nombre de fichiers         Etat de l'outq
                            spools contenus
                            dans cette outq            HLD retenu
                                                       RLS libérée







      Regardons le résultat de l'option 5 :


                      Gestion de file d'attente de sortie 

 File:   PRT01          Biblio:   QUSRSYS        Etat:   RLS/WTR 

 Indiquez vos options, puis appuyez sur ENTREE. 
   2=Modifier   3=Suspendre   4=Supprimer   5=Afficher   6=Libérer 
   8=Attributs 

 Opt  Fichier     Utilisat    Référence   Etat  Pages   Ex  Imprimé     Pté 
      LISTE       QPGMR       POINTAGE    WTR       1    1  *STD         5 
      PRESENCE    QPGMR       LSTSTG      RDY       2    1  *STD         5 
      QSYSPRT     QSECOFR                 HLD       2    1  *STD         5 
      COMPTA      QUSER                   HLD       2    1  *STD         5 





                                                                            Fin 
 Paramètres pour l'option 2 ou commande 
 ===>                                                                           
 F3=Exit   F11=Vue 2   F12=Annuler   F22=Imprimantes   F24=Autres touches 

        Chaque ligne correspond aux informations sur un fichier spool

    Détaillons une ligne.

    Fichier     Utilisat    Référence   Etat  Pages   Ex  Imprimé 
      QSYSPRT     QSECOFR        !        HLD       2    1  *STD
     !                !          !         !        !    !    !
     !                !          !         !   --------- !    !
     !                !          !         !   nombre de !    !
     !                !          !         !   pages     !  ------
     !                !          !         !             !   type d'
     !                !      -----------   !             !   imprimé
     !                !      références    !           --------
     !                !      utilisateur   !           nombre de
     !                !                    !----------! copies
     !                !                               !
     !                !                               !
     !                !                               !
     !                !                               !
     !                !                               !

---------------     ---------------------------   ------------------------
nom du fichier      identification du profil      état du fichier spool
d'impression        ayant créé ce fichier spool   WTR en cours d'édition
ayant permis                                      RDY prét à l'édition
la création du                                    HLD retenu
fichier spool                                     OPN en cours de remplissage.
                                                  SND en cours d'envoi (serveur)
PND en cours de transformation
(Host Print Transform)


        De plus deux lignes en haut de l'écran vous indiquent les
        différentes actions que vous pouvez effectuer.

   2=Modifier   3=Suspendre   4=Supprimer   5=Afficher   6=Libérer   
   8=Attributs 

        2-CHGSPLFA (modifier un spool , changer d'OUTQ par exemple)
        3-HLDSPLF (retenir)
        4-DLTSPLF (détruire)
        5-DSPSPLF (voir le contenu, faites F1 pour plus de détails))
        6-RLSSPLF (libérer)
        8-DSPSPLFA (voir les caractéristiques)
et enfin
9-Hé, Mr. OS/400, aidez moi ! (l'OS vous aide à imprimer votre spool)



    Pour retrouver un fichier spool les possibilités sont :

         WRKOUTQ :
                  Tous les fichiers spool contenus dans une OUTQ

         WRKSPLF :
                  Tous les fichiers spool générés par un utilisateur
                  (par défaut l'utilisateur qui passe la commande)

         WRKJOB  :
                  Directement, si les fichiers spool ont étés générés par
                  votre travail interactif

                  Sinon il faut avant retrouver le travail.
                        WRKUSRJOB Gérer les travaux d'un utilisateur.

                        WRKACTJOB Gérer tous les travaux actifs



                 et passer l'option 8 sur la ligne du travail



    Pour gérer un éditeur d'imprimante les commandes sont :

         WRKWTR  : gère les éditeurs

          WRKWTR *PRT: toutes les imprimantes (actives ou non)
          WRKWTR *ALL: tous les éditeurs actifs (même remote)



         STRPRTWTR :
                  démarre un nouvel éditeur pour un couple outq/imprimante

                  paramètres importants :

                  DEV  = nom de l'imprimante
                  OUTQ = nom de la file d'attente
                  FORMTYPE = type de papier à traiter
                  AUTOEND  = arrêt automatique ou non.

         ENDWTR :
                  arrêt d'un éditeur.

Pour toutes ces listes vous pouvez indiquer des critères personnalisés avec Action/Inclusion



<-- Ici, vous retrouvez les paramètres de la commande WRKSPLF

Les actions possibles sont :

Action Navigator
Equivalent WRKSPLF
Ouverture : lance AFPviewer qui affiche le spool
Affichage PDF : Lance Acrobat Reader qui affiche le spool
5
Réponse : répondre au message (si message il y a)
7
Suspension (holder)
3
libération
6
Envoi (SNDNETSPLF ou SNDTCPSPLF)
1
Déplacement
2 + OUTQ
Suppression
4
Propriété
8 (voir) et 2 (modifier)

 


 


Utilisateurs et droits

La gestion de la sécurité s'appuie sur la notion de profil utilisateur (objet *USRPRF dans QSYS)

Cette gestion est locale, on ne peut faire appel à LDAP

 

pour gérer la liste des utilisateurs : WRKUSRPRF *ALL

l'option 1 permet de créer un nouvel utilisateur :

remarquons les paramètres :

Ici, remarquons

nous pouvons attribuer à l'utilisateur un profil de groupe afin de gérer les droits sur quelques groupes cohérents d'utilisateurs et non individu par individu.



La gestion des utilisateurs pouvant être réalisée depuis NAVIGATOR for i :


La gestion des droits est la base de la sécurité sur un AS/400, tout objet possède des droits publics
(indiquant les droits par défaut pour un utilisateur "lambda" indiqué par *PUBLIC) et des droits nominatifs ou privés.



les droits sont révisables par EDTOBJAUT (WRKOBJ puis option 2) ou WRKAUT pour les fichiers IFS.

F11 permet de voir le détail.

Navigator for I vous permet aussi de modifier les droits d'un objet



-->

 



Quelques conseils :

  Utilisez au maximum la notion de groupe

  1/ groupe d'utilisateur d'une part (profil de groupe)

  2/ groupe d'objets d'autre part.

     et c'est la partie la plus délicate, en effet la notion de groupe
      d'objets est représentée sur AS/400 par les bibliothèques, or les
      droits que vous indiquez sur la bibliothèque ne permettent pas de
      préciser ce qu'il est possible de faire AVEC LES OBJETS de celle-ci.

    ==> une bibliothèque est un bon moyen d'INTERDIR.

     mais pour les utilisateurs ayant le droit d'utiliser la bibliothèque
      il faudra être plus précis.

     La meilleure solution semble être les listes d'autorisations

 
le principe est de pouvoir définir un "modèle" de droits (une règle)
        et d'appliquer ensuite cette règle à x objets.
Le système identifie la liste d'autorisation comme un type d'objet 
      spécifique, dont l'identificateur est *AUTL. 



l'association d'un objet et d'une liste d'autorisation de fait par GRTOBJAUT
(cette dernière sait travailler avec une bibliothèque entière)

Le paramètre CRTAUT d'une bibliothèque (CHGLIB pour modifier) permet de référencer
une liste d'autorisation à appliquer automatiquement lors de la création d'un objet

 

     Ordre de recherche des autorisations sur un objet 
    ---------------------------------------------------
     1/ avec le profil de référence 
         + le profil est il de type QSECOFR    ? --OUI ----------->! 
                                              NON                  ! 
                                               !                   ! 
         + le profil a-t-il des droits sur l'objet OUI ----------->! 
                                              NON                  ! 
                                               !                   ! 
         + le profil est-il indiqué dans la liste  OUI ----------->! 
              d'autorisation (s'il y a une liste)                  ! 
                                              NON                  ! 
                                               !                   ! 
     2/ avec le profil de groupe               !                   ! 
                (s'il n'y a pas de profil de groupe -->  3/ )      ! 
                                               !                   ! 
         + le groupe est il SPCAUT(*ALLOBJ) ?  !   OUI ----------->!
                                             
 NON                  ! 
                                               !                   ! 
         + le groupe a-t-il des droits sur l'objet OUI ----------->!
                                               !                   ! 
                                              NON                  ! 
                                               !                   ! 
                                               !                   ! 
         + le groupe est-il indiqué dans la liste  OUI ----------->! 
              d'autorisation (s'il y a une liste)                  ! 
                                              NON                  ! 
                                               !                   ! 
     3/ avec *PUBLIC                           !                   ! 
                                               !                   ! 
         + *PUBLIC est-il indiqué sur l'objet  !   OUI ----------->! 
                                              NON                  ! 
                                               !                   ! 
         + *PUBLIC EST indiqué dans la liste --------------------->!     
                                                                   ! 
             #######################                               ! 
             # les droits trouvés  # <-----------------------------!   
             # sont pris en compte # 
             ####################### 

Sauvegardes



 La notion de sauvegarde / restauration est INCONTOURNABLE sur AS/400

 Quelques remarques préliminaires:

    Les commandes de sauvegardes orientées objet/bibliothèque
     sauvegardent aussi bien l'objet (définition - attributs) que son
     contenu.(mais uniquement les autorisations pour *PUBLIC.)

    Ce qui signifie:            - les supports doivents être initialisés
                                   en format *SAVRST (disquettes)

                                - ils ne peuvent être traités que par un AS.

    Pour une transmission de fichier sur d'autres systèmes:

                                - initialiser au format *DATA (val /dft)

                                - utiliser les commandes  CPYTODKT  -->
                                                          CPYTOTAP  -->
                                                          CPYFRMDKT <--
                                                          CPYFRMTAP <--
   Après avoir passé la commande OVRTAPF ou OVRDKTF, s'il le faut.


    Il y a quatre grands types de supports:                       préparation 
                                - diskette (historique)          cde INZDKT 
                                - bande  (std, cartouches, 8mm)  cde INZTAP 

- Optique (DVD-RAM/ROM, USB)   cde INZOPT                                  - fichier de sauvegarde          cde CRTSAVF

  une sorte de "fichier bande" sur disque, ne pouvant contenir qu'UNE    SEQUENCE DE SAUVEGARDE, qu'UNE BIBLIOTHEQUE.
   Pour sauvegarder le CONTENU d'un fichier de sauvegarde sur support     magnétique: SAVSAVFDTA. 
   Pour le mettre à blanc : CLRSAVF , pour visualiser le contenu DSPSAVF .

 Les informations à sauvegarder sont multiples:


     1°/ MULIC : Model Unique Licensed Internal Code  (jusqu'à V3R60)


     2°/ LIC   : Licensed Internal Code
                 microcode sous licence

     3°/ Les objets de configuration
                 définition de tous les périphériques (DKTxx, TAPxx, DSPxx)
                  et de toutes les lignes.

     4°/ Les informations liées à la sécurité (profils et autorisations)

     5°/ L'OS/400 de base (non compris les options)

     6°/ Les pgms sous licences (QRPG, QPDA, y compris les options de l'OS)

     7°/ Les objets utilisateurs (pgms, fichiers, ...)

     8°/ Les dossiers, documents, et TOUTE la Structure IFS.

  A chaque type d'objet correspond une commande


  SAVSTG: Copie secteur par secteur des informations permanentes des disques

          ATTENTION : Vous devez être "système restreint", c'est à dire
                       tous les sous-systèmes arrétés, seule la console
                       est reconnue.

          Pour ce faire: -CHGMSGQ QSYSOPR DLVRY(*BREAK) SEV(50)

                         -ENDSYS (attendez le message
                                  "le système est en mode restreint ...")

                         -Passer votre commande : SAVSTG
                                                  (c'est vrai aussi pour
                                                    SAVSYS et RCLSTG)
                         -Pour redémarrer
                                                  DSPSYSVAL QCTLSBSD
                                                  STRSBS de ce sous-système

         La date de sauvegarde de la data area QSAVSTG vous indique la
          dernière utilisation de cette commande.

  A chaque type d'objet correspond une commande


  SAVSYS: Sauvegarde microcode, OS, données de sécurité et objets de config.

          ATTENTION : Vous devez être "système restreint".

  Commande à exécuter à chaque nouvelle version ou après chaque cumulative
   de PTF (la data area QSAVSYS vous indique la date de dernière sauvegarde)

  SAVCFG: Sauvegarde des objets de configuration uniquement
           (sous ensemble de SAVSYS, fonctionne système en activité)

  A exécuter périodiquement (data area QSAVCFG )

  SAVSECDTA: Sauvegarde des éléments de sécurité (profils et autorisations)
           (sous ensemble de SAVSYS, fonctionne système en activité)

  A exécuter périodiquement (data area QSAVUSRPRF )



 Ces quatres commandes ne fonctionnent que vers une unité externe
 (SAVCFG et SAVSECDTA acceptent *SAVF)

 SAUVEDARDE DE BIBLIOTHEQUES:


 Cde SAVLIB   admet trois valeurs particulières

              *NONSYS (tout ce qui n'est pas sauvegardé par SAVSYS,
                                                            sauf documents)
             = toutes les bibliothèques du système en ordre alpha
               (sauf: QSYS, QDOC, QSPL, QRPLOBJ, QTEMP, QSRV, QRECOVERY)
               le système doit être en mode restreint.

             La date de sauvegarde de la data area QSAVLIBALL vous indique
              quand cette commande a été utilisée pour la dernière fois.

              *ALLUSR (toutes les bibliothèques utilisateurs ou
                        les bibliothèques contenant des objets utilisateurs)

                        y compris, donc, QGPL, QUSRSYS, QS36F, £LIBRARY
                        Data area associée QSAVALLUSR 

              *IBM    (tous les produits sous licence + leurs PTFs)

                        Data area associée QSAVIBM 



  la commande SAVLIB possède deux paramètres importants:

     LIB() les valeurs que nous venons de voir,
            admet aussi de UN a TROIS CENT noms.

     OMITLIB() bibliothèques à omettre (pour *ALLUSR, *IBM, ...)

            *NONE ou de UN à TROIS CENT noms.

  Autres paramètres 

  DEV() unité DKTxx TAPxx ou *SAVF
 

  SEQNBR() N° de la sequence sur bande

1 : la sauvegarde commence en début de bande
==> effacement demandé par message sauf CLEAR(*ALL)

(dft) *END : sauvegarde effectuée en fin de bande (en ajout, donc)

  PVTAUT() sauvegarde ou non(dft) des droits en même temps
  SAVF()   nom qualifié du savf si DEV(*SAVF)
  UPDHST() mise à jour date de dernière sauvegarde si DEV(*SAVF)
           (automatique pour une sauvegarde sur unité)

  TGTRLS() version du système de restauration *CURRENT, *PRV ou VxRyMz.

  Vous pouvez sauvegarder des objets individuellement avec


 SAVOBJ   OBJ() *ALL (tous, sauf l'objet *LIB)

                 nom ou nom-gen*   (jusqu'à 300)

           LIB() jusqu'à 300

           OBJTYPE() *ALL ou un à plusieurs types d'objet.

 ET ENFIN vous pouvez ne sauvegarder que les objets modifiés depuis le
  dernier SAVLIB (par défaut) avec:

 SAVCHGOBJ (mêmes paramètres que SAVOBJ, sauvegarde incrémentielle)

     +     REFDATE() date de référence / par défaut *SAVLIB

           REFTIME() heure de référence

 En ce qui concerne les fichiers : sauvegarde membre à membre
    (seuls les membres modifiés sont sauvegardés: c'est une très bonne
      commande pour les fichiers source)

 Pour les documents et les dossiers:


      SAVDLO DLO(*ALL) FLR(*ANY)

       sauvegarde tout (data area QSAVDLOALL )

      SAVDLO DLO(*CHG) = SAVCHGOBJ

      SAVDLO DLO(un-nom) FLR(un-nom) = SAVOBJ

      SAV
       pour sauvegarder tout ou partie de la structure IFS.
  Pour sauvegarder "/microsrv/microopt" :        SAV DEV('QSYS.LIB/TAP01.DEVD')
           OBJ('/MICROSRV/MICROOPT/*') SUBTREE(*ALL)

  Pour sauvegarder tous les branches "spécifiques" à IFS        SAV DEV('QSYS.LIB/TAP01.DEVD)
           OBJ(('/*') ('/QSYS.LIB' *OMIT) ('/QDLS' *OMIT) SUBTREE(*ALL)


  Pour sauvegarder/restaurer OBJ('/*') [tout votre système]
   vous devez être en mode restreint.





Le menu SAVE propose un accès à toutes ces commandes de sauvegarde





 Il peut être intéressant à ce stade de voir un tableau récapitulatif

 Vous verrez à gauche les commandes de sauvegarde disponibles

             à droite les commandes de restauration associées.

 Sachant qu'une commande de restauration plus restrictive est toujours
  valide (RSTOBJ pour SAVLIB par exemple)


  sauvegarde     | élement du système à sauvegarder   | restauration
^                ...................................... panneau de contrôle

! _______________:1       MULIC (propre à un modèle)  :  01 D / M
!  ^             :2         LIC (5738999)             :   puis IPL
!  !             :....................................:---------------------
   S             :3            OS/400 (QSYS)          :IPL ou install opt/2
 A   ----------:....................................:---------------------
   V             :          Autorisations privées     :  RSTAUT 
 S   SAVSECDTA :4...................................:-----------
   Y             :          Profils utilisateurs      :  RSTUSRPRF 
 S   ----------:....................................:---------------
   !   SAVCFG    :5         objets de configuration   :  RSTCFG 
S  v             :                                    :                     
   * SAVLIB *IBM :6 options OS/400 + produits/licence : RSTLIB *IBM      * 
 N  -----------:....................................:---------------   N 
   O   ^ *ALLUSR :7  QGPL, QUSRSYS, QS36F, £LIBRARY   :     *ALLUSR ^    O 
 N   !   ------:....................................:-----------  !    N 
   S   !   ^SAV- :8  BIB01                            :         ^   !    S 
 Y   !   !  LIB:   BIB02     bibliothèques          : RSTLIB  !   !    Y 
!  S   v   v  OBJ:   BIB03       entreprise           :  RSTOBJ v   v    S  
 SAVDLO *ALL   :9 document/QDOC,distribution/QUSRSYS:  RSTDLO *ALL
!                :                                    :
 SAV    (IFS)  :10 (QSYS.LIB *OMIT) (QDLS *OMIT)    :  RST ... 

Navigator for i vous propose uniquement un accès aux unités bande (réelles ou virtuelles) et aux bandothèques



Organisation et stratégies des sauvegardes

  •     Commit/Rollback , Gestion des transactions

        Un des risques en cas d'arrêt du système est la désynchronisation
         des fichiers B de D dépendants.

        La gestion des transactions par pgm (en s'appuyant sur la fonction
         journal) minimise les risques d'incohérences dans vos fichiers.

    La fonction journal, archive dans un fichier système particulier (récepteur) toute l'activité base de données


    les enregistrements ajoutés, modifiés( en version avant et après) et les suppressions,
    il y a donc , ainsi, possibilité de reconstruire mais aussi de retour arrière.
    il n'y a pas de solution satisfaisante aujourd'hui en ce qui concerne
    la sauvegarde des spools, avant la V5R40.

    Depuis cette version, si on sauvegarde une OUTQ avec SPLFDTA(*YES), les spools sont sauvegardés






 I/ Solution simple, vous avez des sauvegardes complètes
                                              (les plus récentes possibles)

  1°/ de votre système           SAVSYS

  2°/ de vos données/systèmes    SAVSECDTA et SAVCFG

  3°/ des données entreprises.
                                 objets:    SAVLIB *ALLUSR

                                 documents: SAVDLO et SAV

  Moins importants sont : les produits sous licence

                          - il est toujours possible de recharger et
                             d'appliquer la dernière cumulative.

                          Les bibliothèques de développeur

                          - souvent traitées par SAVCHGOBJ sur les fichiers
                            source (perte de travail sur une journée ?)



 II/ Vous souhaitez réduire le temps d'indisponibilité des objets
      afin de pouvoir faire vos sauvegardes de jour.

     Utilisez le paramètre SAVACT (Save while active)

     a/ Le système établit un point de contrôle
          (Les objets sont indisponibles)

     b/ le point de contrôle établi, la disponibilité des objets est rendue

     c/ les pages de fichier modifiées pendant la sauvegarde sont dupliquées

     d/ en fin de sauvegarde, les modifications (enregistrées dans les pages
         dupliquées) sont répercutées.

     Gain: 
      Temps d'indisponibilité réduit.
     Désavantages: 
      Les modifications ne sont pas sauvegardées (fichiers désynchronisés ?)
      Le temps de traitement global est plus long.
      DANGER en cas d'arrêt du système, pendant la sauvegarde.



 III/ Vous mettez en place la fonction journal avec détachement et
       sauvegarde du récepteur toutes les demi-journées.

     Gains: 

     un SAVLIB par semaine

     détachement du récepteur en activité
          (inutile d'arrêter les utilisateurs)

     sauvegarde rapide (volume faible)

     vous ne perdez plus qu'une demi-journée. (quand même !)

     la fonction journal peut être utilisée à des fins d'analyse. (DSPJRN)

     Désavantages: 

     Légère dégradation des performances (E/S disques supplémentaires)

     Gestion des récepteurs (ménage)



 IV/ Vous associez à la fonction journal, la notion d'ASP

     Un ASP est un disque (ou un bras d'accès) "sorti" de la notion d'espace
       adressable unique.

     Historiquement il ne pouvait contenir que journal, récepteur et SAVF

     Cela reste (c'est une opinion arbitraire) son intérêt premier !!!

     Si vous perdez ce disque.

        ==> aucune perte de données, l'E.A.U est intacte.(mais le système
                                                           est indisponible)
     Si vous perdez un autre disque  (ASP système)

        ==> vous récupérez les éléments de l'ASP par RCLSTG.
        ==> Vous restaurez .votre journal et tous vos récepteurs
                           .vos bibliothèques (SAVLIB hebdomadaire)
        ==> vous appliquez les modifs du journal (APYJRNCHG)

        Normalement vous ne devez perdre aucune transaction.



     Gains: 

            - aucune perte de données (sur les fichiers)

            - Vos sauvegardes via SAVF sont plus sûres (SAVF dans l'ASP)

            - la manipulation d'ASP est devenue souple
              (principalement en cas de débordement)

            - vous avez toujours la possibilité d'utiliser Commit/Rollback

     Désavantages: 

     Légère dégradation des performances (E/S disques supplémentaires, et
      sur un disque imposé !)

     Le temps de reprise est très long.

     (nous pouvons toujours atteindre, comme avec les solutions précédentes,
      12 à 24 Heures, suivant votre config.)




  V / Toutes les solutions à venir impliquent des investissements
       supplémentaires conséquents :

      A: RAID-5 la fonction XOR est assurée par l'unité disque.
              (qui posséde son propre processeur et plusieurs disques 3,5')

         Un cas de problème sur un disque physique, l'unité est capable de
          fonctionner en mode dégradé.
              (reconstitution des infos manquantes à chaque lecture)

     B:  MIRRORING  les disques sont doublés (les écritures aussi)

         Aucun arrêt en cas de problème, ni pendant l'intervention.
           (MIRRORING possible au niveau Bus et Contrôleur)



   C:  le BACKUP complet.

      DEUX AS/400. 

      - L'AS de backup peut être utilisé pour le développement.

      - les configurations doivent être dupliquées. (basculement rapide)

      - Vous pouvez dupliquer régulièrement vos modifs B de D.

         Avec la fonction journal (transfert du récepteur et APYJRNCHG)

      - OU temps réel (part RCVJRNE et traitement par le LAN, ou produits du marché).

      



   D:  Clusters (dispositif facturable : Option 41 de l'OS)

      DEUX AS/400 (ou plus) sont vus comme un seul à l'intérieur d'un Cluster Ressource Group.

Pour faire de la réplication [Backup] , il faut un produit tiers.


Pour pouvoir "switcher" un pool disque (iASP) d'un serveur à l'autre.


Ce dernier cas de figure permettant d'envisager une réplication croisée,
offrant un taux de disponibilité proche de 100 %.

    


 

Introduction aux réseaux sur AS/400

 

la notion d'unité représente sur l'AS/400 la vision historique de la
   mini-informatique c'est à dire une relation maitre (le mini)
   esclave (le terminal)



 typiquement

    +--CTL01           (une carte dans l'AS/400, dite contrôleur TWinax)
         !
         !
         +----Unite     un écran passif ou une imprimante)


toute la gestion du twinax est basée sur une architecture en bus (comme BNC)

A la sortie de l'AS/400 se trouve ce type de boitier avec quatre broches ou "port"

de 0 à 3 sur le premier boitier, de 4 à 7 sur le deuxième.

chaque écran est connecté avec un T assurant ainsi la continuité

vous devez ensuite, positionner pour chaque terminal une adresse logique (de 0 à 6)

 

chaque série de terminal possède un menu de configuration qui lui est propre


(sur les terminaux IBM, il faut souvent maintenir la touche espace enfoncée lors du démarrage)

vous pouvez alors par la touche F24, modifier l'adresse.

Pour gérer les unités définies dans le système, plusieurs possibilités :


  - l'appel du Menu DEVICESTS (accessible par Assistant)
  - l'utilisation de la commande WRKCFGSTS   (Work with Configuration Status)





 DEVICESTS                      Etat des unités 
                                                            Système:   xxxxxxxx 
 Pour choisir l'une des options suivantes, tapez son numéro puis appuyez sur 
   ENTREE. 

      1. Gestion des unités écran 
      2. Gestion des unités imprimante 
      3. Gestion des unités de bande 
      4. Gestion des unités de disquette 

     10. Impression des adresses d'unités locales 
                                      ....................................
                                      :  Les Options 1 à 4 permettent    :
                                      :  de gérer les différents types   :
                                      :  d'unités.                       :
 Entrez une option du menu :          :  L'option 10 permettra de lister :
      1                               :  les adresses physiques dans le  :
                                      :  réseau Twinaxial local.         :
                                      :  (= la commande PRTDEVADR)       :
                                      :..................................:



     OPTION 1               Gestion des unités écran                
                                                                            xxx 
 Indiquez vos options, puis appuyez sur ENTREE. 
   1=Rendre disponible   2=Rendre indisponible   5=Afficher les détails
   7=Afficher messages   8=Gérer le contrôleur et la ligne   9=Rebaptiser
   13=Modifier la description

 Opt  Unité       Type    Etat 
      DSP01       3476    Utilisé par QSYSOPR.                             
      DSP02       5291    Utilisé par QPGMR.                               
      DSP03       3196    Hors tension ou pas encore disponible            
      DSP04       5291    Hors tension ou pas encore disponible            
      DSP05       3196    Hors tension ou pas encore disponible            
      DSP06       3196    Utilisé par QSECOFR.                             
      DSP07       5291    Ecran                    ........................
      DSP08       5291    Ecran                    :  Niveau d'assistance :
      DSP09       5291    Ecran                    :      Débutant        :
      DSP10       5291    Hors tension ou pas enc  :......................:
      DSP11       5251    Hors tension ou pas enc
      DSP12       5291    Hors tension ou pas encore disponible
                                                                            ... 

                                                                             
                            Gestion des unités écran                
 ................................................................           xxx 
 :                 Choix du niveau d'assistance                 : 
 :                                                              : 
 :  Niveau d'assistance actuel  :   Débutant                    : 
 :                                                              : 
 :                                                              : 
 :  Indiquez votre choix, puis appuyez sur ENTREE.              : 
 :                                                              :          
 :    Niveau d'assistance util      2   1=Débutant              :          
 :                                      2=Initié                :          
 :                                      3=Expérimenté           :          
 :                                                              :          
 :                                                                         
 :  F1=Aide   F12=Annuler                   ............................   
 :                                          : UTILISATION DE LA TOUCHE :   
 :........................................  : F21, POUR CHANGER DE     :   
                                            : NIVEAU D'ASSISTANCE      :
                                            :..........................:

                                                                             



                            Gestion des unités écran                        xxx 
                                                                            :50 
 Afficher à partir de                  Caractères de début 

 Indiquez vos options, puis appuyez sur ENTREE. 
   1=Mettre en fonction   2=Mettre hors fonction   5=Gérer travail
   8=Gérer description    9=Etat du mode...



 Opt  Description       Etat                  -----------Travail------------ 
      DSP01             ACTIVE                DSP01       QSYSOPR     179417 
      DSP02             ACTIVE                DSP02       QPGMR       179412 
      DSP03             EN INSTANCE                                          
      DSP04             EN INSTANCE                                          
      DSP05             EN INSTANCE                                          
      DSP06             ACTIVE                DSP06       QSECOFR     179416 
      DSP07             OUVERTURE        ...  ..........  ..........  .....  
      DSP08             OUVERTURE        : Assistance niveau Initié :     :  
                                         : affichage des travaux associés :
                                         : aux différentes unités         :     
                                         :................................:



                            Gestion des unités écran
                                                                            xxx
 
 Afficher à partir de                  Caractères de début 
 Opt  Description       Etat                  -----------Travail------------ 
      DSP01             ACTIVE                DSP01       CHRISTIAN   179417 
      DSP02             ACTIVE                DSP02       QPGMR       179412 
      DSP03             EN INSTANCE                                          
      DSP04             EN INSTANCE                                          
      DSP05             EN INSTANCE                                          
      DSP06             ACTIVE                DSP06       QSECOFR     179416 
      DSP07             OUVERTURE                                            
      DSP08             OUVERTURE                                            
      DSP09             OUVERTURE                                            
      DSP10             EN INSTANCE   ....................................   
      DSP11             EN INSTANCE   : Assistance niveau Expérimenté :  :   
      DSP12             EN INSTANCE   : les options et les touches de    :   
      DSP13             EN INSTANCE   : fonction ne sont plus affichées  :   
      DSP14             EN INSTANCE   :..................................:   
      DSP15             EN INSTANCE                                          
      DSP16             EN INSTANCE                                          
                                                                            ... 

                                                                                
     OPTION 2            Gestion des unités imprimante              
                                                                            xxx 
 Indiquez vos options, puis appuyez sur ENTREE. 
   1=Rendre disponible   2=Rendre indisponible   5=Afficher les détails
   7=Afficher messages   8=Gérer le contrôleur et la ligne   9=Rebaptiser
   13=Modifier la description

 Opt  Unité       Type    Etat 
      PRT01       5224    En cours d'impression ou prêt pour impression    
      PRT01B      *IPDS   Hors tension ou pas encore disponible            
      QSUPPRT     5256    Non disponible (utilisez l'option 1)             

















                                                                            Fin 


 



 Et vint le réseau.(SNA)protocole propiétaire IBM




  dans un premier temps, il ne s'agissait que de déporter les terminaux.

    +---Ligne          (définition sur l'AS/400 de la carte réseau, du
         !                type d'attachement, et du protocole [SDLC, X25].)
         !
         !
         !------ [ france télécom ] ---------CTLxx une boite noire
                                               !   dite contrôleur 
                                               !    à distance (5x94)
                                               !
                                               !
                                               !--Unité écran/imprimante








 



 Et enfin,  les relations d'égal à égal (deux minis se parlent)

     +---Ligne          (définition sur l'AS/400 de la carte réseau, du
          !                type d'attachement, et du protocole [SDLC, X25].)
          !
          !
          !------ [ france télécom ] ---------CTLxx représentation logique
                                                !    du mini distant.
                                                !
                                                !--Unité, indiquant le type
                                                          de dialogue(APPC)

 Quand les PC apparaissent dans l'entreprise ce schéma est reproduit :

      +---Ligne          (définition sur l'AS/400 de la carte réseau, du
           !                protocole (Ethernet ou Token Ring).
           !
           !         (           )
           !------ ( réseau local  ) ---------CTLxx représentation logique
                     (           )              !    du PC.
                                                !-- unité APPC




 2°) utilisation de la commande WRKCFGSTS :


                                                                             
                   Gérer état de la configuration (WRKCFGSTS)

 Indiquez vos choix, puis appuyez sur ENTREE.

 Type . . . . . . . . . . . . . CFGTYPE   *DEV    *NWS,*NWI,*LIN,*CTL,*DEV
 Description de configuration . CFGD      *ALL    Nom, générique*, *ALL...
 Sortie . . . . . . . . . . . . OUTPUT    *       *, *PRINT




L'affichage sera fonction du type (CFGTYPE) :

       - *NWS  =  serveurs de réseau  (NT ou Linux dans l'AS/400)

       - *NWI  =  interfaces réseau   (Numéris)





       - *LIN  =  lignes

       - *CTL  =  contrôleurs

       - *DEV  =  unités




Terminaux passifs
..........................................................................
:  Opt  Description       Etat         -----------Travail------------    :
     CTL01             ACTIVE                                          :
       DSP01           EN INSTANCE                                     :
       PRT02           EN INSTANCE                                     :
:                                                                        :
:........................................................................:

Ligne sur RTC (système de maintenance IBM)
............................................................................
:Opt  Description       Etat                -----------Travail------------ :
:     QESLINE           INSTANCE CONNEXION                                 :
:       QESCTL          EN INSTANCE                                        :
:         QESPAP        EN INSTANCE                                        :
:           £BLANK      EN INSTANCE/ALLOCAT PCAF4W      QSECOFR     117456 :
:                                                                          :
:..........................................................................:


 
 Les possibilités SNA de l'AS/400.


        Passe-système. Terminal virtuel (comme TELNET) entre AS/400


  DDM   Distributed Data Management (fichiers distribués)
              Permet de traiter sur un AS/400 X un fichier BD se trouvant
               sur un AS/400 Y, comme s'il se trouvait sur X.

        DRDA                Gestion de bases de données éloignées (SQL)

                             on défini une seule fois chaque système
                              par la commande ADDRDBDIRE.

SNADS SNA  Distribution Services
                 

              Distribution de messages SNDNETMSG
                           de fichiers SNDNETF et d'objets (Sauvegarde dans SAVF puis SNDNETF)
                           de spoules  SNDNETSPLF
                           Soumissions SBMNETJOB

 



 puis vint TCP/IP en 1995, qui n'implémente PAS cette notion de session

 en IP, chaque machine est reconnue par une adresse composée de 4 octets (par exemple 192.168.123.1)

   chaque besoin (ou service) par un N° de port cible.
Nom du serveur port utilisé service rendu
ftp 20/21 serveur de fichiers
telnet 23 terminal virtuel (émulateur)
smtp 25 envoi/réception de mail
dns 53 serveur de noms
pop 110 serveur de mail (gestion de la boite aux lettres)
netbios 137 à 139 fonction voisinage réseau
Quelques exemples de serveur IP




sont donc créés un contrôleur et une unité de type NET (visibles par WRKCFGSTS)


 (il faut alors utiliser NETSTAT pour voir les connexions actives)


La configuration de TCP/IP est la suivante :
 
1/ il faut créer une ligne LAN comme vu plus haut (Ethernet par ex.)

Exemple :

CRTLINETH LIND(ETHLINE1) RSRCNAME(CMN01) ONLINE(*YES) LINESPEED(*AUTO)
TEXT('Ligne Ethernet')

 2/ il faut associer à cette carte une adresse IP

    (une telle association est appelée interface)

    Commande CFGTCP , option 1 



Pour une tolérance aux pannes vous pouvez utiliser une adresse virtuelle
 définissez une interface 172.16.1.1 (par exemple)     ADDTCPIFC INTNETADR('172.16.1.1') LIND(*VIRTUALIP)  puis définissez vos deux interfaces physiques (il faut 2 cartes), par :   ADDTCPIFC INTNETADR('172.16.1.2') LIND(ETLINE01) LCLIFC('172.16.1.1') et   ADDTCPIFC INTNETADR('172.16.1.3') LIND(ETLINE02) LCLIFC('172.16.1.1')
Puis associez l'adresse IP virtuelle 172.16.1.1 aux deux adresses physiques     (2 et 3), via CHGTCPIFC paramètre LCLIFC ou Navigator for i.

Définir les routes (routeurs ou Gateway), par l'option 2 de CFGTCP

l'option 10 met à jour la table des hosts    l'option 12 met à jour le nom de système et le domaine (DNS).

puis les IP des serveurs DNS



 3/ indiquer ensuite les services qui doivent démarrer en même temps que TCP/IP

    Commande CFGTCP option 20, donne la liste des services.
     puis pour chaque service mettre AUTOSTART à *YES

 4/ démarrer TCP/IP par STRTCP, ce qui doit être fait à l'IPL


Pour redémarrer un serveur seul :

      ENDTCPSVR *TELNET ou *FTP (etc ...) puis       STRTCPSVR *TELNET ou *FTP (etc ...)

NB : la commande STRHOSTSVR démarre les serveurs (les jobs) devant           répondre à Client Acces ou ACS.

La configuration des terminaux

 1/ pour les écrans, la configuration se fait sous client access


 2/ Autant, la gestion des imprimantes twinax ou virtuelles est automatique.
(la création de l'unité entraine la création de l'OUTQ dans QUSRSYS)

pour les imprimantes LAN, il faudra fournir :

- l'adresse IP de l'imprimante (et le port)
- type et modèle pour la transformation du spool (fonction HPT)


soit sur la définition de l'OUTQ, dite alors "remote" (ici un Serveur NT)

adr. ip -! !-- il s'agit du nom "NT"
v v
CRTOUTQ OUTQ(TCP) RMTSYS('10.1.1.1') RMTPRTQ(LASERJET) CNNTYPE(*IP)
DESTTYPE(*OTHER) MFRTYPMDL(*HP4) PPRSRC1(*A4) FORMFEED(*AUTOCUT)
^ ^
ici indiquer le type d'imprimante. --! !-- le format papier


soit sur la définition de l'imprimante (ici une HP utilisant PJL/JetDirect)

CRTDEVPRT DEVD(PRTHP) DEVCLS(*LAN) TYPE(3812) MODEL(1) LANATTACH(*IP)
PORT(9100) FONT(11) TRANSFORM(*YES) MFRTYPMDL(*HP4)
RMTLOCNAME('10.1.1.2') SYSDRVPGM(*HPPJLDRV)

 

Les possibilités TCP/IP de l'AS/400.


- la couche TCP/IP , les APIs sockets et le filtrage IP
 
- Fonction de serveur et de passerelle

° VPN , SLIP et PPP (IP sur réseau commuté)

      ° BOOTP(serveur d'adresse statique)
      ° DHCP (serveur d'adresse dynamique)
      ° DNS  (serveur de noms)
      ° RIP2 (routage dynamique)
    
  - TELNET       : émulation écran

  - LPD/LPR      : transfert de spools

  - SMTP  / POP3 : gestion de messages

  - FTP          : transfert de fichier

  - TFTP     (trivial FTP, un FTP simplifié)


  - HTTP         : Serveur WEB de pages HTML (Apache 2)


  - NFS      (partage de fichiers avec UNIX)

DDM et DRDA sur IP

  - Rexec    (Exécution de commandes à distance)

 
  - Netserver (l'AS/400 dans le voisinage réseau, comme SAMBA/Unix)

  - LDAP (annuaire)

  - DLFM (lien entre zones DB2 et fichiers IFS, par URL)


Pour surveiller le réseau IP, vous disposez de plusieurs commandes :


PING (Sur l'AS/400 les deux commandes VFYTCPCNN ou PING sont valides).


TRACEROUTE pour afficher la liste des intermédiaires


NETSTAT qui vous affiche un menu (l'option 3 montre les connexions actives)


                       Work with TCP/IP Connection Status 
                                                            Système:   S44R7
 Local internet address  . . . . . . . . . . . :   *ALL

 Type options, press Enter.
   4=End   5=Display details

      Remote           Remote     Local
 Opt  Address          Port       Port       Idle Time  State
      *        (1)     *          domain     167:11:00  *UDP
      *                *          domain     167:11:00  *UDP
      *                *          domain     167:11:00  *UDP
      *                *          www-http   000:01:15  Listen
      *                *          domain     000:10:05  *UDP
      *                *          www-http   001:25:59  Listen
      10.3.1.2  (2)    1227       23         000:00:00  Established
      10.3.1.2         1904       netbios >  000:04:04  Established
      10.3.1.2         1906       23         000:00:24  Established

(1) représente un service à l'écoute (en attente)
(2) indique un service en activité, remote Address précisant l'interlocuteur

 

Tout cela pouvant être réalisé dans l'option Réseau  de Navigator for i.


Les interfaces


Les connexions actives (Netstat *CNN)



Les serveurs


les outils IP "traditionnels" sont aussi proposés (Ping , Traceroute et Nslookup)