Python -Stoff

Python -Stoff
Linux -Benutzer müssen wiederholt verschiedene Arten von administrativen oder allgemeinen Aufgaben ausführen, z. SSH (sichere Shell) ist erforderlich, um diese Art von Aufgaben regelmäßig auszuführen. Stoff ist eine leistungsstarke und hilfsbereite Python -Bibliothek, die mit dem SSH- und Betriebssystem interagiert, um viele Anwendungsentwicklungs- oder Verwaltungsaufgaben zu automatisieren. Dieses Befehlszeilen-Tool ist sehr einfach und einfach zu bedienen. Es funktioniert schneller und unterstützt die parallele Fernausführung. Wie die Stoffbibliothek in Python3+ installiert und verwendet werden kann, hat sich in diesem Tutorial gezeigt.

Nützliche Stoffoptionen:

Es gibt viele nützliche Optionen, um verschiedene Arten von Aufgaben auszuführen. Einige meist verwendete Optionen dieses Tools haben unten beschrieben.

Stoffoption Beschreibung
-fabFile = Pfad Es wird verwendet, um die Python -Moduldatei zu definieren.
-user = user Es wird verwendet, um den Benutzernamen zu definieren, um sich mit dem Host zu verbinden.
-Passwort = Passwort Es wird verwendet, um das Passwort für eine Verbindung mit dem Host zu definieren.
-Anzeige = Name Es wird verwendet, um detaillierte Informationen zum Befehl fab anzuzeigen.
-Listenformat = Format Es wird verwendet, um die spezifische Formatoption festzulegen.
-config = path Es wird verwendet, um den Speicherort der Konfigurationsdatei zu definieren.
-Färben Es wird verwendet, um den Fehler mit der Farbe anzuzeigen.
-Ausführung Es wird verwendet, um die Version von anzuzeigen der Fab Befehl.
-Hilfe Es wird verwendet, um detaillierte Informationen zu den verfügbaren Optionen der verfügbaren Optionen anzuzeigen fabelhaft Befehl.

Stoff in Python3 einbauen:

Führen Sie den folgenden Befehl aus, um den Befehl Fabric in Python3 zu installieren.

$ pip3 install Fabric3

Beispiel 1: Verwendung des Fabric-Befehls ohne SSH

Eine Python -Datei mit dem Namen Fabafile.py wird von der benötigt fabelhaft Befehl, einige spezifische Aufgaben automatisch auszuführen. Erstellen die Fabafile.py Datei mit dem folgenden Skript. Nachricht() Die Funktion wurde im Skript definiert, das den Namen vom Benutzer abnimmt und die Begrüßungsnachricht ausdruckt. Dieser Funktionsname ist erforderlich der Fab Befehl zur Ausführung des Skripts.

Fabafile.py

# Funktion definieren
Def Message ():
# Nehmen Sie einen Namen vom Benutzer
Name = input ('Geben Sie Ihren Namen ein:')
# Drucken Sie den Namen mit Begrüßung
print ('Hallo, %s' %Name)

Führen Sie den folgenden Befehl aus, um das Skript der auszuführen Fabafile.py.

$ fab meldung

Die folgende Ausgabe wird angezeigt, nachdem der Wert des Namens angegeben wurde.

Installieren von SSH auf Ubuntu:

SSH wird verwendet, um mit dem Remote -Server zu interagieren, und der Befehl Fabric kann ausgeführt werden, indem eine Verbindung mit dem Remote -Server über SSH hergestellt wird. Es ist standardmäßig nicht auf Ubuntu installiert. OpenSSH-Server muss für die Durchführung von SSH -Aktivitäten vom lokalen Computer installiert werden. Nach der Installation dieses Pakets kann der FAB -Befehl einige Aufgaben mithilfe einer SSH -Verbindung remote ausführen.

Führen Sie die folgenden Befehle aus dem Terminal aus, um das System zu aktualisieren und das zu installieren OpenSSH-Server.

$ sudo APT Update
$ sudo apt install OpenSSH-Server

Führen Sie den folgenden Befehl aus, um die zu überprüfen ssh Der Befehl funktioniert ordnungsgemäß oder nicht.

$ ssh localhost

Die folgende Ausgabe erscheint nach dem Typen 'Ja'Wenn die ssh Der Befehl funktioniert ordnungsgemäß.

Beispiel-2: Starten, stoppen und überprüfen Sie den Status des Apache-Servers mithilfe von Fabric

Erstellen oder ändern Sie die Fabafile.py mit dem folgenden Skript. Der Lauf Das Modul wurde in das Skript importiert, um die Befehle auszuführen, um den Status des Apache -Servers zu starten, zu stoppen und zu überprüfen. env Das Modul wurde importiert, um den Wert des Hosts festzulegen. start_apache () Die Funktion wurde definiert, um den Apache -Server zu starten. STOP_APACHE () Die Funktion wurde definiert, um den Apache -Server zu stoppen. status_apache () Die Funktion wurde definiert, um den aktuellen Status des Apache -Servers zu überprüfen. Ein gültiger Benutzername und ein gültiges Passwort müssen bei der Ausführung der SSH -Verbindung bereitgestellt werden fabelhaft Befehl.

Fabafile.py

# Run und Env aus Stoff importieren.API
aus Stoff.API Import Run, Env
# Legen Sie den Namen des Hosts fest
env.Hosts = '127.0.0.1 '
# Funktion definieren, um den Apache -Server zu starten
Def start_apache ():
run ('sudo systemctl start apache2')
print (Apache Server wird gestartet.'))
# Funktion definieren, um den Apache -Server zu stoppen
Def stop_apache ():
run ('sudo systemctl stop apache2')
Print ('Apache Server wird gestoppt.'))
# Funktion definieren, um den Status des Apache -Servers zu überprüfen
def status_apache ():
run ('sudo systemctl status apache2')

Führen Sie den folgenden Befehl vom Terminal aus, um den Apache -Server mit dem zu starten fabelhaft Befehl.

$ fab --user-fahmida-Password = 12345 START_APACHE

Führen Sie den folgenden Befehl vom Terminal aus, um den Status des Apache -Servers mit dem zu überprüfen fabelhaft Befehl.

$ fab --user-fahmida-Password = 12345 STATUS_APACHE

Führen Sie den folgenden Befehl vom Terminal aus, um den Apache -Server mit dem zu stoppen fabelhaft Befehl.

$ fab --user-fahmida-Password = 12345 STOP_APACHE

Beispiel-3: Führen Sie mehrere Aufgaben mit einem Stoff aus

Erstellen oder ändern Sie die Fabafile.py mit dem folgenden Skript. Der Lauf Das Modul wurde in das Skript importiert, um den Prozessortyp und den verwendeten Speicherplatz der Festplatte zu erhalten. env Das Modul wurde importiert, um die Hosts-, Benutzer- und Kennwortwerte für die SSH -Verbindung festzulegen. multi_task () Funktion hat definiert, um die beiden Aufgaben zusammenzuführen.

Fabafile.py

# Run- und Env -Module von Fabric's API importieren
aus Stoff.API Import Run, Env
# Setzen Sie den Host IP
env.Hosts = '127.0.0.1 '
# Setzen Sie den Benutzernamen
env.user = "fahmida"
# Setzen Sie den Benutzernamen
env.Passwort = "12345"
# Die Funktion definieren, um mehrere Aufgaben auszuführen
Def multi_tasks ():
# Drucken Sie den Prozessortyp
run ('uname -p')
# Drucken Sie den gebrauchten Raum der Festplatte in einem menschlichen lesbaren Format
run ('sudo df -h')

Führen Sie den folgenden Befehl vom Terminal aus, um den Prozessortyp und die detaillierten Informationen zum Speicherplatz zu drucken.

$ fab multi_tasks

Wenn der angegebene Benutzername und das Passwort im Skript gültig sind, wird nach der Ausführung des obigen Befehls die folgende Ausgabe angezeigt.

Abschluss:

Die regulären Aufgaben können automatisch mit dem Stoffmodul von Python erfolgen. Die Linux-Benutzer können problemlos viele administrativ bezogene Aufgaben ausführen Fabafile.py Datei. Das verwendete Fabric -Modul wurde in diesem Tutorial mit drei einfachen Beispielen erläutert, um den Lesern zu helfen, die Funktion des Fabric -Moduls zu kennen.