Tissu python

Tissu python
Les utilisateurs de Linux doivent effectuer à plusieurs reprises différents types de tâches administratives ou générales, telles que le rechargement du serveur Apache après avoir apporté des modifications, créant une nouvelle application ou déploiement d'une application, accédant aux fichiers journaux particuliers, etc. SSH (Secure Shell) est nécessaire pour effectuer ces types de tâches régulièrement. Tissu est une bibliothèque Python puissante et utile qui interagit avec le SSH et le système d'exploitation pour automatiser de nombreuses applications ou les tâches administratives. Cet outil de ligne de commande est très simple et facile à utiliser. Il fonctionne plus rapidement, prenant en charge l'exécution à distance parallèle. Comment la bibliothèque de tissus peut être installée et utilisée dans Python3 + s'est montrée dans ce tutoriel.

Options utiles de tissu:

Il a de nombreuses options utiles pour effectuer différents types de tâches. Certaines options principalement utilisées de cet outil ont décrit ci-dessous.

Option de tissu Description
-Fabfile = chemin Il est utilisé pour définir le fichier de module Python.
-utilisateur = utilisateur Il est utilisé pour définir le nom d'utilisateur pour se connecter avec l'hôte.
-mot de passe = mot de passe Il est utilisé pour définir le mot de passe pour se connecter avec l'hôte.
-affichage = nom Il est utilisé pour afficher des informations détaillées sur la commande fabuleuse.
-liste de format = format Il est utilisé pour définir l'option de format spécifique.
-config = chemin Il est utilisé pour définir l'emplacement du fichier de configuration.
-colorize-errors Il est utilisé pour afficher l'erreur avec la couleur.
-version Il est utilisé pour afficher la version de le fabuleux commande.
-aider Il est utilisé pour afficher des informations détaillées sur les options disponibles de la fabuleux commande.

Installez le tissu dans Python3:

Exécutez la commande suivante pour installer la commande tissu dans python3.

$ pip3 installer tissu3

Exemple-1: utilisation de la commande de tissu sans ssh

Un fichier python nommé fabfile.py est requis par le fabuleux commander pour effectuer des tâches spécifiques automatiquement. Créer le fabfile.py fichier avec le script suivant. message() La fonction a défini dans le script qui prendra le nom de l'utilisateur et imprimera le message de bienvenue. Ce nom de fonction est nécessaire pour utiliser avec le fabuleux commande pour exécuter le script.

fabfile.py

# Définir la fonction
Def message ():
# Prenez un nom de l'utilisateur
name = input ('Entrez votre nom:')
# Imprimez le nom avec salutation
Print ('Bonjour,% S'% Nom)

Exécutez la commande suivante pour exécuter le script du fabfile.py.

$ Fab Message

La sortie suivante apparaîtra après avoir donné la valeur du nom.

Installation de SSH sur Ubuntu:

SSH est utilisé pour interagir avec le serveur distant, et la commande de tissu peut être exécutée en se connectant avec le serveur distant via SSH. Il n'est pas installé sur Ubuntu par défaut. OpenSSH-Server devra installer pour effectuer des activités SSH depuis l'ordinateur local. Après avoir installé ce package, la commande Fab peut effectuer certaines tâches à distance en utilisant une connexion SSH.

Exécutez les commandes suivantes à partir du terminal pour mettre à jour le système et installer le OpenSSH-Server.

$ sudo apt mise à jour
$ sudo apt install openssh-server

Exécutez la commande suivante pour vérifier le ssh La commande fonctionne correctement ou non.

$ ssh localhost

La sortie suivante apparaîtra après avoir tapé 'Oui' si la ssh La commande fonctionne correctement.

Exemple-2: Démarrez, arrêtez et vérifiez l'état du serveur Apache à l'aide du tissu

Créer ou modifier le fabfile.py avec le script suivant. La course Le module a été importé dans le script pour exécuter les commandes pour démarrer, arrêter et vérifier l'état du serveur Apache. env Le module a été importé pour définir la valeur des hôtes. start_apache () La fonction a été définie pour démarrer le serveur Apache. stop_apache () La fonction a été définie pour arrêter le serveur Apache. status_apache () La fonction a été définie pour vérifier l'état actuel du serveur Apache. Un nom d'utilisateur et un mot de passe valides doivent prévoir une connexion SSH lors de l'exécution de la fabuleux commande.

fabfile.py

# Import Run et Env à partir de tissu.API
de tissu.API Import Run, env
# Définissez le nom des hôtes
env.hosts = '127.0.0.1'
# Définissez la fonction pour démarrer le serveur Apache
def start_apache ():
run ('sudo systemctl start apache2')
Imprimer ('APACHE Server est démarré.')
# Définissez la fonction pour arrêter le serveur Apache
def stop_apache ():
run ('sudo systemctl stop apache2')
imprimer ('le serveur Apache est arrêté.')
# Définissez la fonction pour vérifier l'état du serveur Apache
def status_apache ():
run ('sudo systemctl status apache2')

Exécutez la commande suivante à partir du terminal pour démarrer le serveur Apache avec le fabuleux commande.

$ Fab --User-Fahmida - Password = 12345 start_apache

Exécutez la commande suivante à partir du terminal pour vérifier l'état du serveur Apache avec le fabuleux commande.

$ Fab --User-Fahmida - Password = 12345 Status_apache

Exécutez la commande suivante à partir du terminal pour arrêter le serveur Apache avec le fabuleux commande.

$ Fab --User-Fahmida - Password = 12345 stop_apache

Exemple-3: effectuez plusieurs tâches en utilisant le tissu

Créer ou modifier le fabfile.py avec le script suivant. La course Le module a été importé dans le script pour obtenir le type de processeur et l'espace utilisé du disque. env Le module a été importé pour définir les valeurs hôtes, utilisateur et mot de passe pour la connexion SSH. multi_task () La fonction a défini pour effectuer les deux tâches ensemble.

fabfile.py

# Importer Run et Env Modules de l'API du tissu
de tissu.API Import Run, env
# Définissez l'IP hôte
env.hosts = '127.0.0.1'
# Définissez le nom d'utilisateur
env.user = "Fahmida"
# Définissez le nom d'utilisateur
env.mot de passe = "12345"
# Définir la fonction pour exécuter plusieurs tâches
def multi_tasks ():
# Imprimez le type de processeur
run ('uname -p')
# Imprimez l'espace utilisé du disque dans un format lisible par l'homme
Run ('sudo df -h')

Exécutez la commande suivante à partir du terminal pour imprimer le type de processeur et les informations détaillées sur l'espace disque.

$ Fab Multi_tasks

Si le nom d'utilisateur et le mot de passe donné dans le script sont valides, la sortie suivante sera apparue après avoir exécuté la commande ci-dessus.

Conclusion:

Les tâches régulières peuvent être effectuées automatiquement en utilisant le module de tissu de Python. Les utilisateurs de Linux peuvent facilement effectuer de nombreuses tâches liées à l'administration en exécutant une commande Fab simple après avoir écrit le script pour exécuter les commandes requises dans le fabfile.py déposer. Les utilisations du module de tissu ont été expliquées dans ce tutoriel en utilisant trois exemples simples pour aider les lecteurs à connaître la fonction du module de tissu.