Linux-Umgebungsverwaltung

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Linux-Umgebungsvariablen sind Schlüssel-Wert-Paare, die die Ausführung von Prozessen auf Ihrem System beeinflussen können. Das Verständnis, wie diese Variablen verwaltet werden, ist für Linux-Nutzer von Anfängern bis hin zu fortgeschrittenen Administratoren von entscheidender Bedeutung.

In diesem Lab werden Sie lernen, wie Sie bestehende Umgebungsvariablen anzeigen, Ihre eigenen temporären Variablen erstellen, wichtige Systemvariablen wie PATH ändern und Ihre Änderungen über Login-Sitzungen hinweg dauerhaft machen. Diese Fähigkeiten bilden die Grundlage für die Linux-Umgebungsverwaltung und helfen Ihnen, Ihre Linux-Umgebung anzupassen und Probleme im Zusammenhang mit der Umgebung zu beheben.

Am Ende dieses Labs haben Sie praktische Erfahrungen mit den Befehlen und Techniken, die zur effektiven Verwaltung von Umgebungsvariablen in Linux erforderlich sind.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux(("Linux")) -.-> linux/VersionControlandTextEditorsGroup(["Version Control and Text Editors"]) linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicSystemCommandsGroup -.-> linux/source("Script Executing") linux/BasicFileOperationsGroup -.-> linux/chmod("Permission Modifying") linux/FileandDirectoryManagementGroup -.-> linux/cd("Directory Changing") linux/FileandDirectoryManagementGroup -.-> linux/mkdir("Directory Creating") linux/UserandGroupManagementGroup -.-> linux/env("Environment Managing") linux/UserandGroupManagementGroup -.-> linux/export("Variable Exporting") linux/VersionControlandTextEditorsGroup -.-> linux/nano("Simple Text Editing") subgraph Lab Skills linux/echo -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/source -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/chmod -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/cd -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/mkdir -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/env -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/export -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} linux/nano -.-> lab-271275{{"Linux-Umgebungsverwaltung"}} end

Anzeigen von Umgebungsvariablen

Umgebungsvariablen speichern Informationen, die vom System und von Anwendungen genutzt werden können. In diesem Schritt lernen Sie, wie Sie die vorhandenen Umgebungsvariablen auf Ihrem Linux-System anzeigen können.

Zunächst erstellen wir ein spezielles Verzeichnis für unsere Lab-Übungen:

mkdir -p ~/project/env_lab

Navigieren Sie in dieses Verzeichnis:

cd ~/project/env_lab

Um nun alle aktuell gesetzten Umgebungsvariablen anzuzeigen, verwenden Sie den Befehl env:

env

Dieser Befehl zeigt eine Liste aller Umgebungsvariablen in Ihrer aktuellen Sitzung an. Die Ausgabe sieht in etwa so aus:

PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
HOME=/home/labex
USER=labex
SHELL=/bin/zsh
...

Jede Zeile zeigt einen Variablennamen, gefolgt von einem Gleichheitszeichen (=) und dann von ihrem Wert. Diese Variablen definieren verschiedene Aspekte Ihrer Umgebung.

Um eine bestimmte Umgebungsvariable anzuzeigen, können Sie den Befehl echo verwenden, wobei der Variablenname mit einem Dollarzeichen ($) vorangestellt wird. Beispielsweise, um den Wert der Variablen für Ihr Heimatverzeichnis anzuzeigen:

echo $HOME

Dies sollte etwas wie Folgendes anzeigen:

/home/labex

Ebenso können Sie Ihren aktuellen Benutzer anzeigen:

echo $USER

Erwartete Ausgabe:

labex

Setzen von temporären Umgebungsvariablen

Umgebungsvariablen können für die aktuelle Shell-Sitzung temporär festgelegt werden. Dies ist nützlich, wenn Sie eine Variable für eine bestimmte Aufgabe benötigen, ohne dauerhafte Änderungen an Ihrem System vorzunehmen.

Um eine temporäre Umgebungsvariable zu setzen, verwenden Sie den Befehl export, gefolgt vom Variablennamen und -wert:

export TEST_VAR="Hello, Linux"

Dadurch wird eine Variable namens TEST_VAR mit dem Wert "Hello, Linux" erstellt. Um zu überprüfen, ob die Variable korrekt festgelegt wurde, verwenden Sie echo:

echo $TEST_VAR

Sie sollten Folgendes sehen:

Hello, Linux

Sie können auch mehrere Variablen auf einmal festlegen:

export VAR1="First" VAR2="Second"

Überprüfen Sie beide Variablen:

echo $VAR1
echo $VAR2

Erwartete Ausgabe:

First
Second

Um Ihre neuen Variablen unter allen Umgebungsvariablen zu sehen, führen Sie Folgendes aus:

env | grep VAR

Dies filtert die Ausgabe, um nur Zeilen anzuzeigen, die "VAR" enthalten, beispielsweise:

TEST_VAR=Hello, Linux
VAR1=First
VAR2=Second

Denken Sie daran, dass Variablen, die auf diese Weise erstellt werden, nur in der aktuellen Shell-Sitzung existieren. Wenn Sie ein neues Terminalfenster oder -tab öffnen, sind diese Variablen dort nicht verfügbar.

Verständnis und Modifikation der PATH-Variablen

Die Umgebungsvariable PATH ist eine der wichtigsten Variablen in Linux. Sie teilt dem System mit, wo es nach ausführbaren Dateien suchen soll, wenn Sie einen Befehl eingeben.

Zunächst untersuchen Sie Ihren aktuellen Pfad (PATH):

echo $PATH

Sie sehen eine durch Doppelpunkte getrennte Liste von Verzeichnissen, ähnlich wie folgt:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Wenn Sie einen Befehl eingeben, durchsucht das System diese Verzeichnisse nacheinander, bis es eine passende ausführbare Datei findet.

Nun erstellen wir ein neues Verzeichnis für unsere benutzerdefinierten Skripte und fügen es dem Pfad hinzu:

mkdir -p ~/project/env_lab/bin

Um dieses Verzeichnis an den Anfang Ihres Pfads (PATH) hinzuzufügen, verwenden Sie:

export PATH=~/project/env_lab/bin:$PATH

Dies fügt unser neues Verzeichnis vorne an den bestehenden Pfad an. Überprüfen Sie die Änderung:

echo $PATH

Jetzt sollte Ihre Ausgabe mit Ihrem neuen Verzeichnis beginnen:

/home/labex/project/env_lab/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Erstellen wir ein einfaches Skript, um unseren modifizierten Pfad zu testen:

cd ~/project/env_lab/bin

Erstellen Sie eine Datei namens hello mit dem nano-Editor:

nano hello

Fügen Sie der Datei den folgenden Inhalt hinzu:

#!/bin/bash
echo "Hello from my custom script!"

Speichern Sie die Datei, indem Sie Strg+O drücken, dann Enter, und verlassen Sie den Editor mit Strg+X.

Machen Sie das Skript ausführbar:

chmod +x hello

Jetzt sollten Sie von jedem Verzeichnis aus in der Lage sein, Ihr Skript einfach durch Eingabe seines Namens auszuführen:

cd ~/project/env_lab
hello

Sie sollten Folgendes sehen:

Hello from my custom script!

Dies zeigt, wie die PATH-Variable dem System hilft, ausführbare Dateien zu finden, und wie Sie sie anpassen können, um Ihre eigenen Skriptverzeichnisse einzubeziehen.

Verwenden von Umgebungsvariablen in Befehlen und Skripten

Umgebungsvariablen können auf verschiedene Weise in Befehlen und Skripten verwendet werden. In diesem Schritt lernen Sie, wie Sie Umgebungsvariablen effektiv nutzen können.

Zunächst erstellen wir eine neue Umgebungsvariable mit Ihrem Namen:

export MY_NAME="Linux User"

Sie können diese Variable in Befehlen verwenden, indem Sie ihr ein $ voranstellen:

echo "Hello, $MY_NAME"

Dies sollte folgende Ausgabe erzeugen:

Hello, Linux User

Umgebungsvariablen können auch mit anderen Befehlen verwendet werden. Beispielsweise erstellen wir ein Verzeichnis, das nach unserer Variable benannt ist:

mkdir -p ~/project/env_lab/$MY_NAME

Überprüfen Sie, ob das Verzeichnis erstellt wurde:

ls -la ~/project/env_lab/

In der Ausgabe sollten Sie ein Verzeichnis namens "Linux User" sehen.

Jetzt erstellen wir ein einfaches Skript, das Umgebungsvariablen verwendet:

cd ~/project/env_lab
nano greet.sh

Fügen Sie den folgenden Inhalt hinzu:

#!/bin/bash

## Verwenden vorhandener Umgebungsvariablen
echo "Hello, $MY_NAME"
echo "Your home directory is $HOME"

## Verwenden einer an das Skript übergebenen Variable
echo "The current time and date is $(date)"

## Erstellen einer lokalen Variable
local_var="This is a local variable"
echo $local_var

## Exportieren einer neuen Variable aus dem Skript
export GREETING="Have a nice day!"
echo $GREETING

Speichern Sie und verlassen Sie den Editor mit Strg+O, Enter und Strg+X.

Machen Sie das Skript ausführbar:

chmod +x greet.sh

Führen Sie das Skript aus:

./greet.sh

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Hello, Linux User
Your home directory is /home/labex
The current time and date is Fri Aug 18 12:34:56 UTC 2023
This is a local variable
Have a nice day!

Nachdem Sie das Skript ausgeführt haben, überprüfen Sie, ob die Variable GREETING in Ihrer Umgebung existiert:

echo $GREETING

Sie sollten Folgendes sehen:

Have a nice day!

Dies bestätigt, dass aus Skripten exportierte Variablen Teil Ihrer Shell-Umgebung werden, während lokale Variablen im Skript nach Beendigung des Skripts nicht bestehen bleiben.

Machen von Umgebungsvariablen persistent

Bisher gehen alle von uns gesetzten Umgebungsvariablen verloren, wenn Sie Ihre Terminal-Sitzung schließen. In diesem Schritt lernen Sie, wie Sie Umgebungsvariablen über Sitzungen hinweg persistent machen können.

In Linux werden Shell-Startdateien wie .bashrc, .zshrc oder .profile verwendet, um persistenten Umgebungsvariablen zu setzen. Da unsere Umgebung zsh verwendet, werden wir die Datei .zshrc nutzen.

Zunächst öffnen wir die .zshrc-Datei:

nano ~/.zshrc

Navigieren Sie ans Ende der Datei (verwenden Sie Strg+Ende oder die Pfeiltasten) und fügen Sie die folgenden Zeilen hinzu:

## Benutzerdefinierte Umgebungsvariablen
export PERSIST_VAR="This variable will persist"
export PATH=$HOME/project/env_lab/bin:$PATH

Speichern Sie und verlassen Sie den Editor mit Strg+O, Enter und Strg+X.

Um diese Änderungen anzuwenden, ohne das Terminal zu schließen und neu zu öffnen, laden Sie die Datei neu:

source ~/.zshrc

Jetzt überprüfen Sie, ob Ihre neue Variable gesetzt ist:

echo $PERSIST_VAR

Sie sollten Folgendes sehen:

This variable will persist

Jetzt ist diese Variable auch nach dem Schließen und erneuten Öffnen des Terminals noch verfügbar.

Um dies zu demonstrieren, simulieren wir das Schließen und erneute Öffnen des Terminals, indem wir eine neue Shell-Sitzung starten:

zsh

Überprüfen Sie, ob Ihre Variable noch verfügbar ist:

echo $PERSIST_VAR

Sie sollten immer noch Folgendes sehen:

This variable will persist

Beenden Sie diese Shell, um zur vorherigen Sitzung zurückzukehren:

exit

Diese Methode, Umgebungsvariablen zur Konfigurationsdatei Ihrer Shell hinzuzufügen, stellt sicher, dass sie jedes Mal verfügbar sind, wenn Sie sich in Ihr System anmelden.

Für systemweite Umgebungsvariablen, die für alle Benutzer verfügbar sein sollen, können Administratoren sie in Dateien in /etc/profile.d/ hinzufügen oder die Datei /etc/environment bearbeiten.

Zusammenfassung

In diesem Lab haben Sie die Grundlagen der Verwaltung von Umgebungsvariablen in Linux gelernt. Diese sind unerlässlich, um Ihre Linux-Umgebung anzupassen und das Verhalten von Anwendungen zu steuern.

Die behandelten Schlüsselkonzepte umfassen:

  • Anzeigen von Umgebungsvariablen mit dem Befehl env und Anzeigen bestimmter Variablen mit echo $VARIABLE_NAME
  • Setzen von temporären Umgebungsvariablen mit dem Befehl export
  • Verstehen und Modifizieren der PATH-Variable, um zu steuern, wo Linux nach ausführbaren Programmen sucht
  • Verwenden von Umgebungsvariablen in Befehlen und Skripten, um Ihren Code flexibler zu gestalten
  • Machen von Umgebungsvariablen persistent, indem Sie sie zu Shell-Konfigurationsdateien hinzufügen

Diese Fähigkeiten bilden die Grundlage für die Verwaltung der Linux-Umgebung und sind auf verschiedene Linux-Distributionen anwendbar. Das Verständnis von Umgebungsvariablen ist für Linux-Benutzer aller Erfahrungsstufen von Anfängern bis hin zu fortgeschrittenen Administratoren und Entwicklern von entscheidender Bedeutung.

Umgebungsvariablen helfen Ihnen, Ihre Shell-Umgebung anzupassen, das Verhalten von Anwendungen zu steuern und flexiblere Skripts zu erstellen. Wenn Sie Ihre Linux-Reise fortsetzen, werden Sie feststellen, dass die richtige Verwaltung der Umgebung für komplexere Aufgaben wie Softwareentwicklung, Systemadministration und Problembehandlung immer wichtiger wird.