Systèmes d'exploitation Linux

Démarrage automatique des serveurs sur les systèmes Linux

Vous pouvez démarrer automatiquement un serveur sur un système d'exploitation Linux® à l'aide du système d'initialisation systemd ou System V .

Démarrage automatique du serveur à l'aide du système d'initialisation systemd

Pour démarrer automatiquement un serveur sur un système d'exploitation Linux® à l'aide du système d'initialisation systemd, configurez et exécutez le script dsmserv.rc .

Avant de commencer

Vérifiez que l'utilitaire /usr/bin/systemctl ou /bin/systemctl est installé sur le système.

Assurez-vous que l'instance de serveur s'exécute sous un ID utilisateur non root avec le même nom que le propriétaire de l'instance.

A propos de cette tâche

Vous pouvez utiliser le script dsmserv.rc pour démarrer ou arrêter automatiquement une instance de serveur.

Procédure

Pour chaque instance du serveur que vous souhaitez démarrer automatiquement, procédez comme suit :

  1. Renommez le script dsmserv.rc pour qu'il corresponde au nom du propriétaire de l'instance de serveur. Par exemple, si le propriétaire de l'instance de serveur est tsminst1 et que le fichier est sauvegardé dans le répertoire install_dir/server/bin , exécutez la commande suivante:
    cp /opt/tivoli/tsm/server/bin/dsmserv.rc /opt/tivoli/tsm/server/bin/tsminst1
  2. Définissez les autorisations d'exécution sur le nouveau script renommé en exécutant la commande suivante :
    chmod +x install_dir/server/bin/instance
    Par exemple :
    chmod +x /opt/tivoli/tsm/server/bin/tsminst1
  3. Si le répertoire de l'instance de serveur n'est pas home_directory/tsminst1, recherchez la ligne suivante dans la copie du script:
    instance_dir="${instance_home}/tsminst1"

    Modifiez la ligne pour la rediriger vers votre répertoire d'instance de serveur. Par exemple :

    instance_dir="/tsminst1"
  4. Dans la copie du script, recherchez la ligne suivante :
    # pidfile: /var/run/dsmserv_instancename_su.pid

    Remplacez la valeur du nom d'instance par le nom du propriétaire de l'instance de serveur. Par exemple, si le propriétaire de l'instance de serveur est tsminst1, mettez à jour la ligne en exécutant la commande suivante :

    # pidfile: /var/run/dsmserv_tsminst1_su.pid
  5. Créez un fichier instance.service dans le répertoire /etc/systemd/system .

    Par exemple :

    vi /etc/systemd/system/tsminst1.service

    Le fichier contient le contenu suivant :

    [Unit]
    Description=IBM Storage Protect Server instance tsminst1
    
    [Service]
    TasksMax=infinity
    Type=oneshot
    RemainAfterExit=true
    ExecStart=/opt/tivoli/tsm/server/bin/tsminst1 start
    ExecStop=/opt/tivoli/tsm/server/bin/tsminst1 stop
    ExecReload=/opt/tivoli/tsm/server/bin/tsminst1 restart
    
    [Install]
    WantedBy=multi-user.target
    
  6. Enregistrez le fichier de service et exécutez la commande suivante :
    systemctl daemon-reload
  7. Créez un lien symbolique entre le script du répertoire /etc/systemd/system et le répertoire /etc/systemd/system/multi-user.target.wants . Exemple :
    ln -s /etc/systemd/system/tsminst1.service  /etc/systemd/system/multi-user.target.wants/tsminst1.service
  8. Pour activer le service d'initialisation systemd, exécutez la commande suivante :
    systemctl enable service_name

    Par exemple :

    systemctl enable tsminst1.service

Démarrage automatique du serveur à l'aide du système d'initialisation System V

Pour démarrer automatiquement un serveur sur un système d'exploitation Linux à l'aide du système d'initialisation System V, configurez et exécutez le script dsmserv.rc .

Avant de commencer

Assurez-vous que les paramètres de noyau sont correctement définis.

Assurez-vous que l'instance de serveur s'exécute sous l'ID utilisateur de propriétaire d'instance.

Vérifiez que les droits d'accès et les limites utilisateur sont définis correctement.

A propos de cette tâche

Le script dsmserv.rc se trouve dans le répertoire d'installation du serveur, par exemple /opt/tivoli/tsm/server/bin.

Le script dsmserv.rc peut être utilisé soit pour démarrer le serveur manuellement ou pour le démarrer de façon automatique en ajoutant des entrées dans le répertoire /etc/rc.d/init.d. Le script fonctionne avec les utilitaires Linux tels que CHKCONFIG et SERVICE.

Procédure

Pour chaque instance du serveur que vous souhaitez démarrer automatiquement, procédez comme suit :

  1. Placez une copie du script dsmserv.rc dans le répertoire /init.d , par exemple, /etc/rc.d/init.d.

    Assurez-vous d'apporter les modifications dans la copie du script uniquement. Ne modifiez pas le script original.

  2. Renommez la copie de script de sorte qu'elle corresponde au nom du propriétaire de l'instance de serveur, par exemple, tsminst1.

    Le script a été créé en partant du principe que le répertoire d'instance de serveur est home_directory/tsminst1, par exemple : /home/tsminst1/tsminst1.

  3. Si le répertoire de l'instance de serveur n'est pas home_directory/tsminst1, recherchez la ligne suivante dans la copie du script:
    instance_dir="${instance_home}/tsminst1"
    Modifiez la ligne de sorte qu'elle pointe vers le répertoire de votre instance de serveur, par exemple :
    instance_dir="/tsminst1"
  4. Dans la copie du script, recherchez la ligne suivante :
    # pidfile: /var/run/dsmserv_instancename_su.pid
    Remplacez la valeur du nom d'instance par le nom du propriétaire de l'instance de serveur.
    Par exemple, si le propriétaire de l'instance de serveur est tsminst1, mettez à jour la ligne comme indiqué :
    # pidfile: /var/run/dsmserv_tsminst1_su.pid
  5. Configurez le niveau d'exécution sur lequel le serveur démarre automatiquement. En utilisant des outils tels que l'utilitaire CHKCONFIG, spécifiez une valeur qui correspond à un mode multi-utilisateur avec la mise en réseau activée. Généralement, le niveau d'exécution à utiliser est 3 ou 5, en fonction du système d'exploitation et de sa configuration. Pour plus d'informations sur le mode multi-utilisateur et les niveaux d'exécution, voir la documentation relative à votre système d'exploitation.
  6. Pour démarrer le serveur, exécutez la commande suivante :
    service propriétaire_instance_serveur start

    Par exemple, si le propriétaire de l'instance de serveur est tsminst1, vous exécutez la commande suivante :

    service tsminst1 start

  7. Pour arrêter le serveur, exécutez la commande suivante :
    service propriétaire_instance_serveur stop

    Par exemple, si le propriétaire de l'instance de serveur est tsminst1, vous exécutez la commande suivante :

    service tsminst1 stop

Exemple

Cet exemple s'appuie sur les valeurs suivantes :
  • Le propriétaire de l'instance est tsminst1.
  • Le répertoire d'instance de serveur est /home/tsminst1/tsminst1.
  • La copie du script dsmserv.rc s'appelle tsminst1.
  • L'utilitaire CHKCONFIG est utilisé pour configurer le démarrage du script aux niveaux d'exécution 3, 4 et 5.
cp /opt/tivoli/tsm/server/bin/dsmserv.rc /etc/rc.d/init.d/tsminst1
sed -i 's/dsmserv_instancename.pid/dsmserv_tsminst1.pid/' /etc/rc.d/init.d/tsminst1
chkconfig --list tsminst1
service tsminst1 supports chkconfig, but is not referenced in
any runlevel (run 'chkconfig --add tsminst1')
chkconfig --add tsminst1
chkconfig --list tsminst1
tsminst1 0:off 1:off 2:off 3:off 4:off 5:off 6:off
chkconfig --level 345 tsminst1 on
chkconfig --list tsminst1
tsminst1 0:off 1:off 2:off 3:on 4:on 5:on 6:off