Fichier qconfig

Objectif

Configure une imprimante qui se met en file d'attente dans un système.

Descriptif

Le fichier " /etc/qconfig décrit les files d'attente et les dispositifs qui peuvent être utilisés par les commandes " enq et " qdaemon La commande " enq place les demandes dans une file d'attente et la commande " qdaemon retire les demandes de la file d'attente et les traite. Le fichier " qconfig est un fichier d'attributs.

Certaines strophes de ce fichier décrivent les files d'attente, et d'autres sections décrivent les unités. Chaque strophe de file d'attente doit être immédiatement suivie d'une ou plusieurs strophes de dispositif dans le fichier. La première section de file d'attente décrit la file d'attente par défaut. Sauf si la variable d'environnement LPDEST ou PRINTER est définie, la commande " enq utilise cette file d'attente lorsqu'elle ne reçoit pas de paramètre de file d'attente. Si LPDEST contient une valeur, cette valeur a priorité sur la variable d'environnement IMPRIMANTE . Les options de ligne de commande de destination remplacent toujours les deux variables.

Le nom d'une file d'attente doit comporter de 1 à 20 caractères. Les champs suivants sont les champs de la strophe de file d'attente du fichier " qconfig " :

Tableau 1. Champs de la strophe de file d'attente du fichier " qconfig
Zone Définition
acctfile Identifie le fichier utilisé pour enregistrer les informations de comptabilisation de la commande " print La valeur par défaut est FALSE, ce qui indique la suppression de la comptabilité. Si le fichier nommé n'existe pas, la comptabilité n'est pas effectuée.
device Identifie le nom symbolique qui fait référence à la section d'unité.
discipline Définit la file d'attente qui sert l'algorithme. La valeur par défaut est fcfs, ce qui signifie premier arrivé, premier servi. La valeur sjn signifie que le travail le plus court est le suivant.
up Définit l'état de la file d'attente. La valeur par défaut TRUE indique que la file d'attente est en cours d'exécution. La valeur FALSE indique qu'il n'est pas en cours d'exécution.
recovery_type Permet à l'utilisateur de spécifier une option de récupération lorsqu'une file d'attente d'impression tombe en panne. Par défaut, la file d'attente reste dans l'état "down" et nécessite l'intervention de l'utilisateur.
D'autres options peuvent être spécifiées en utilisant les valeurs suivantes :
runscript <PathName>
Un script défini par l'utilisateur est exécuté lorsque la file d'attente descend. Les actions entreprises par le script sont laissées à la discrétion de l'administrateur du système.
retry -T <delay> -R <retries>
La file d'attente reste désactivée pendant la période spécifiée dans le délai (exprimée en minutes). Après la période spécifiée, la file d'attente est reprise et le travail est à nouveau exécuté. Cette procédure est répétée jusqu'au nombre de tentatives spécifié dans la variable retries. Cette fonction est utile dans les cas où les échecs de travail sont dus à des conditions temporaires susceptibles d'être résolues au bout d'un certain temps. Il peut s'agir, par exemple, d'une panne de papier ou d'une défaillance ou d'un ralentissement temporaire du réseau.
sendmail <username>
L'utilisateur spécifié reçoit un message lorsque la file d'attente s'arrête, l'informant que l'imprimante en question est hors service.
Remarque : le nom de file d'attente " lp est un nom de file d'attente réservé standard de la Berkeley Software Distribution (BSD) et ne doit pas être utilisé comme nom de file d'attente dans le fichier " qconfig.

La liste suivante présente certains des champs et leurs valeurs possibles qui apparaissent dans le fichier " qconfig pour les files d'attente distantes :

Tableau 2. Champs dans le fichier " qconfig fichier
Article Descriptif
host Indique l'hôte distant sur lequel se trouve la file d'attente éloignée.
s_statfilter Spécifie le filtre de version courte utilisé pour traduire le format d'état de la file d'attente distante. Les valeurs possibles sont les suivantes :
/usr/lib/lpd/bsdshort
Système distant Berkeley Software Distribution (BSD)
/usr/lib/lpd/aixv2short
Système distant RT
/usr/lib/lpd/attshort
Système à distance de l'American Telephone and Telegraph ( AT&T)
l_statfilter Spécifie le filtre de version longue utilisé pour traduire le format d'état de la file d'attente distante. Les valeurs possibles sont les suivantes :
/usr/lib/lpd/bsdlong
Système distant BSD
/usr/lib/lpd/aixv2long
Système distant RT
/usr/lib/lpd/attlong
Système distant AT & T
rq Indique le nom de la file d'attente éloignée. Dans un environnement d'impression à distance, la configuration du client doit spécifier le nom de la file d'attente distante ou du serveur. L'utilisation du nom par défaut de la file d'attente distante peut entraîner des résultats imprévisibles.

Si une zone est omise, sa valeur par défaut est supposée. L'écran suivant présente les valeurs par défaut d'un stanza de file d'attente :

discipline   = fcfs
up           = TRUE
acctfile     = FALSE
recovery_type = queuedown 

La zone d'unité ne peut pas être omise.

Le nom d'une strophe de périphérique est arbitraire et doit comporter de 1 à 20 caractères. Les champs suivants sont les champs de la strophe de l'appareil du fichier " qconfig:

Tableau 3. Champs dans la strophe de l'appareil
Zone Définition
access Spécifie le type d'accès du backend au fichier spécifié dans le champ file. La valeur de l'accès est l'écriture si le système dorsal a un accès en écriture au fichier ou les deux s'il dispose d'un accès en lecture et en écriture. Cette zone est ignorée si la zone de fichier a la valeur FALSE.
align Indique si le système dorsal envoie un contrôle de flux de formulaires avant de démarrer le travail si l'imprimante est inactive. La valeur par défaut est true.
backend Spécifie le chemin d'accès complet du backend, suivi des drapeaux et des paramètres, le cas échéant, à lui transmettre. Les noms de chemin les plus couramment utilisés sont " /usr/lib/lpd/piobe pour l'impression locale et " /usr/lib/lpd/rembak pour l'impression à distance.
feed Spécifie le nombre de pages de séparation à imprimer lorsque l'appareil est inactif. La valeur par défaut est jamais, ce qui indique que le backend ne doit pas imprimer de pages de séparation.
file Identifie le fichier spécial dans lequel la sortie du backend doit être redirigée. La valeur par défaut FALSE indique qu'il n'y a pas de redirection et que le nom du fichier est " /dev/null. Dans ce cas, le backend ouvre le fichier de sortie.
header Indique si une page d'en-tête s'imprime avant chaque travail ou groupe de travaux. Le champ " header peut prendre les valeurs suivantes :
  • jamais: Indique qu'aucune page d'en-tête n'est imprimée avant chaque travail ou groupe de travaux. Cette option est la valeur par défaut.
  • toujours: Indique qu'une page d'en-tête est imprimée avant chaque travail.
  • groupe: Indique qu'une page d'en-tête est imprimée avant chaque groupe de travaux pour le même utilisateur.
Dans un environnement d'impression à distance, l'action par défaut consiste à imprimer une page d'en-tête et à ne pas imprimer une page de fin.
trailer Indique si une page de fin est imprimée après chaque travail ou groupe de travaux. Le champ " trailer peut prendre les valeurs suivantes :
  • jamais: Indique qu'aucune page de garde n'est imprimée avant chaque travail ou groupe de travaux. Cette option est la valeur par défaut.
  • toujours: Indique qu'une page de garde est imprimée après chaque travail.
  • groupe: Indique qu'une page de garde est imprimée après chaque groupe de travaux pour le même utilisateur.
Dans un environnement d'impression à distance, l'action par défaut consiste à imprimer une page d'en-tête et à ne pas imprimer une page de fin.

Le processus " qdaemon place les informations contenues dans les champs " feed, " header, " trailer et " align dans un fichier d'état qui est envoyé au backend. Les backends qui ne mettent pas à jour le fichier d'état n'utilisent pas les informations qu'il contient.

Si une zone est omise, sa valeur par défaut est supposée. Le champ dorsal ne peut pas être omis. L'écran suivant présente les valeurs par défaut d'une strophe de périphérique :

file    = FALSE
access  = write
feed    = never
header  = never
trailer = never
align   = TRUE
La commande 'enq convertit automatiquement le fichier ASCII 'qconfig au format binaire lorsque la version binaire est manquante ou plus ancienne que la version ASCII. La version binaire se trouve dans le fichier '/etc/qconfig.bin.
Note : Le fichier " qconfig ne doit pas être modifié tant qu'il y a des travaux actifs dans une file d'attente. Chaque fois que le fichier " qconfig est modifié, les travaux soumis avant la modification seront traités avant les travaux soumis après la modification.
Pour améliorer l'évolutivité du sous-système AIX d'impression, procédez comme suit :
  1. Arrêtez le sous-système d'impression AIX en entrant la commande suivante :
    #stopsrc -s qdaemon
  2. Démarrez le sous-système d'impression AIX en entrant la commande suivante :
    #startsrc -s qdaemon -e printer_scalability=ON
  3. Démarrez le démon 'lpd en entrant la commande suivante :
    #startsrc -s lpd -e printer_scalability=ON
  4. Définissez la variable environnementale printer_scalability sur ON en entrant la commande suivante :
    #export printer_scalability=ON

    La variable environnementale printer_scalability n'est définie que pour la session en cours.

Remarque :
  • Pour améliorer l'évolutivité du sous-système d'impression AIX, effectuez toutes les étapes expliquées précédemment. Le non-respect de l'une des étapes peut entraîner un comportement indéfini au sein du sous-système de l'imprimante.
  • La limite optimale du nombre de files d'attente pouvant être créées pour maintenir l'évolutivité du sous-système d'impression AIX est de 10 000.

L'édition comprend à la fois l'édition manuelle et l'utilisation des commandes " mkque, " rmque, " chque, " mkquedev", " rmquedev ou " chquedev Il est recommandé d'effectuer toutes les modifications du fichier " qconfig à l'aide de ces commandes. Toutefois, si vous souhaitez procéder à une modification manuelle, lancez d'abord la commande " enq -G pour activer le système de mise en file d'attente et la commande " qdaemon pour l'arrêter une fois que tous les travaux ont été traités. Modifiez ensuite le fichier " qconfig et relancez la commande " qdaemon avec la nouvelle configuration.

Exemples

  1. La file d'attente des lots fournie avec le système peut contenir les strophes suivantes :
    bsh:
      discipline = fcfs
      device = bshdev
    bshdev:
      backend = /usr/bin/ksh
     
    Pour exécuter une procédure shell appelée " myproc à l'aide de cette file d'attente, entrez la commande suivante :
    qprt -Pbsh myproc
    Le système de file d'attente exécute les fichiers un par un, dans l'ordre où ils ont été soumis. Le processus " qdaemon redirige l'entrée standard, la sortie standard et l'erreur standard vers le fichier " /dev/null.
  2. Pour permettre l'exécution simultanée de deux travaux par lots, entrez la commande suivante :
    bsh:
      discipline = fcfs
      device = bsh1,bsh2
    bsh1:
      backend = /usr/bin/ksh
    bsh2:
      backend = /usr/bin/ksh
  3. Pour configurer une file d'attente distante " bsh, entrez la commande suivante :
    remh:
      device = rd0
      host = pluto
      rq = bsh
    rd0:
      backend = /usr/lib/lpd/rembak
      
  4. Pour configurer une file d'attente locale de manière à ce qu'un courriel soit envoyé à user1@xyz.com lorsqu'elle tombe en panne, entrez la commande suivante :
    ps:
           recovery_type = sendmail user1@xyz.com
            device = lp0
    lp0:
            file = /dev/lp0
            header = never
            trailer = never
            access = both
            backend = /usr/lib/lpd/piobe
    

Fichiers

Tableau 4. fichiers
Article Descriptif
/etc/qconfig Contient le fichier de configuration.
/etc/qconfig.bin Contient la version binaire du fichier " /etc/qconfig créé par la commande " digest
/dev/null Permet d'accéder à l'unité null.
/usr/lib/lpd/piobe Indique le chemin d'accès de l'arrière-plan de l'imprimante locale.
/usr/lib/lpd/rembak Indique le chemin d'accès de l'arrière-plan de l'imprimante distante.
/usr/lib/lpd/digest Contient le programme qui convertit le fichier '/etc/qconfig au format binaire.