Die Befehlszeile ist das Herz der Linux-Serveradministration. Ob Sie Anfänger oder erfahrener Systemadministrator sind: Das Verständnis der Grundlagen der Befehlszeilenadministration ist entscheidend für die effiziente Verwaltung Ihres Ubuntu-Servers. Dieser Artikel bietet eine ausführliche Einführung in die Linux-Befehlszeile und behandelt wichtige Befehle, Tools und Techniken zur Verwaltung von Dateien, Verzeichnissen und der Serverumgebung.
Vorheriger Artikel:
01. Einführung in Ubuntu Server – SysOSX: AI & Cloud
02. So richten Sie Ihren ersten Ubuntu-Server ein: Ein Leitfaden für Anfänger – SysOSX: AI & Cloud
Warum die Befehlszeile lernen?
Die Linux-Befehlszeile, auf die über das Terminal zugegriffen wird, ist ein leistungsstarkes Werkzeug für die Interaktion mit dem Betriebssystem. Im Gegensatz zu grafischen Oberflächen bietet die Befehlszeile:
- Geschwindigkeit: Aufgaben können mit Befehlen schneller ausgeführt werden als über GUI-Oberflächen.
- Flexibilität: Automatisieren Sie Prozesse und führen Sie komplexe Vorgänge mithilfe von Skripten aus.
- Kontrolle: Greifen Sie auf tiefere Systemfunktionen zu und beheben Sie Probleme effektiv.
Zugriff auf die Befehlszeile unter Ubuntu Server
Ubuntu-Server-Installationen enthalten standardmäßig keine grafische Oberfläche, sodass alle Interaktionen über das Terminal erfolgen. Hier sind gängige Möglichkeiten, auf die Befehlszeile zuzugreifen:
1. Direkter Zugriff über die lokale Konsole
Nach der Anmeldung bei Ihrem Ubuntu-Server wird Ihnen die Terminaloberfläche angezeigt.
2. Fernzugriff über SSH
Verwenden Sie Secure Shell (SSH), um remote auf Ihren Server zuzugreifen:
ssh username@server_ip
Wichtige Linux-Befehle für Anfänger
1. Navigation im Dateisystem
Das Verständnis der Linux-Dateisystemhierarchie ist entscheidend für die Verwaltung von Dateien und Verzeichnissen.
Aktuelles Verzeichnis anzeigen: pwd
Zeigt das aktuelle Arbeitsverzeichnis an:
pwd
Verzeichnisinhalte auflisten: ls
Listet Dateien und Verzeichnisse am aktuellen Speicherort auf:
ls
Optionen:
ls -l: Detaillierte Liste mit Berechtigungen, Eigentümerschaft und Größe.ls -a: Enthält versteckte Dateien (Dateien, die mit.).
Verzeichnis wechseln: cd
Wechselt in ein anderes Verzeichnis:
cd /path/to/directory
Beispiele:
cd ..: Geht eine Ebene nach oben.cd ~: Wechselt in das Home-Verzeichnis.
2. Dateien und Verzeichnisse verwalten
Verzeichnis erstellen: mkdir
Erstellt ein neues Verzeichnis:
mkdir directory_name
Beispiel: Erstellen Sie eine Unterverzeichnisstruktur.
mkdir -p /home/user/documents/projects
Erklärung:
- Die Option
-perstellt übergeordnete Verzeichnisse, falls sie nicht existieren (z. B.documentsundprojects).
Verzeichnis entfernen: rmdir
Löscht ein leeres Verzeichnis:
rmdir directory_name
Beispiel:
rmdir /home/user/old_directory
Dateien kopieren: cp
Kopiert Dateien oder Verzeichnisse:
cp source_file destination_file
Beispiel: Kopieren Sie eine Datei in ein neues Verzeichnis.
cp /home/user/file.txt /home/user/backup/file.txt
So kopieren Sie ganze Verzeichnisse:
cp -r /home/user/documents /home/user/backup/documents
Dateien verschieben oder umbenennen: mv
Verschiebt oder benennt Dateien um:
mv old_name new_name
Beispiel: Benennen Sie eine Datei um.
mv file.txt renamed_file.txt
Dateien in ein anderes Verzeichnis verschieben:
mv /home/user/file.txt /home/user/backup/
Dateien löschen: rm
Löscht Dateien oder Verzeichnisse:
rm file_name
Beispiel: Löschen Sie eine Datei.
rm /home/user/file.txt
So löschen Sie Verzeichnisse und deren Inhalte:
rm -r /home/user/old_directory
Warnung: Seien Sie vorsichtig mit rm, um versehentliche Löschungen zu vermeiden.
3. Dateien anzeigen und bearbeiten
Dateiinhalte anzeigen: cat
Zeigt den Inhalt einer Datei an:
cat file_name
Beispiel:
cat /etc/hostname
Dateiinhalte seitenweise anzeigen: less
Ermöglicht das Scrollen durch Dateiinhalte:
less file_name
Beispiel:
less /var/log/syslog
Dateien erstellen oder bearbeiten: nano
Ein anfängerfreundlicher Texteditor:
nano file_name
Beispiel: Erstellen Sie eine neue Datei oder bearbeiten Sie eine vorhandene.
nano /home/user/new_file.txt
Text in Dateien suchen: grep
Sucht nach einer bestimmten Zeichenfolge in Dateien:
grep "search_term" file_name
Beispiel: Finden Sie Fehlermeldungen in einer Protokolldatei.
grep "error" /var/log/syslog
4. Befehle zur Systemadministration
Festplattennutzung prüfen: df
Zeigt die Festplattennutzung an:
df -h
Optionen:
-h: Menschenlesbares Format.
Speichernutzung prüfen: free
Zeigt die Speichernutzung an:
free -h
Systemprozesse überwachen: top
Zeigt laufende Prozesse und die Systemressourcennutzung an:
top
Alternative:
htop: Ein benutzerfreundlicherer Prozessmonitor (Installation übersudo apt install htop).
Dienste verwalten: systemctl
Steuert Systemdienste:
sudo systemctl status service_name
sudo systemctl start service_name
sudo systemctl stop service_name
sudo systemctl restart service_name
Herunterfahren oder neu starten: shutdown
Fahren Sie den Server herunter oder starten Sie ihn neu:
sudo shutdown now # Immediate shutdown
sudo shutdown -r now # Immediate restart
5. Dateiberechtigungen und Eigentümerschaft
Linux verwendet ein Berechtigungsmodell, um den Zugriff auf Dateien und Verzeichnisse zu steuern.
Dateiberechtigungen anzeigen: ls -l
Zeigt Dateiberechtigungen im detaillierten Format an:
ls -l
Dateiberechtigungen ändern: chmod
Ändert Dateiberechtigungen:
chmod 644 file_name
Dateieigentümerschaft ändern: chown
Ändert die Dateieigentümerschaft:
sudo chown new_owner:new_group file_name
6. Dateien suchen und finden
Dateien finden: locate
Der Befehl locate ist standardmäßig nicht installiert. Installieren Sie ihn zuerst:
sudo apt update
sudo apt install mlocate
Aktualisieren Sie die Datenbank:
sudo updatedb
Suchen Sie nach Dateien:
locate file_name
Dateien suchen: find
Sucht nach Dateien anhand von Kriterien:
find /path -name "file_name"
7. Netzwerkbefehle
Netzwerkkonnektivität prüfen: ping
Testet die Konnektivität zu einem Host:
ping google.com
Offene Ports prüfen: ss
Der Befehl netstat ist veraltet und standardmäßig nicht installiert. Verwenden Sie ss, eine moderne Alternative:
ss -tuln
Erklärung:
-t: Zeigt TCP-Verbindungen an.-u: Zeigt UDP-Verbindungen an.-l: Zeigt lauschende Ports an.-n: Zeigt numerische Adressen und Ports an.
Remote-Konnektivität testen: curl
Ruft Daten von einer URL ab:
curl http://example.com
Praktische Tipps für die Befehlszeilenadministration
1. Tab-Vervollständigung verwenden
Drücken Sie Tab, während Sie einen Befehl oder Dateinamen eingeben, um Pfade oder Befehle automatisch zu vervollständigen.
2. Verlauf-Befehle verwenden
Greifen Sie auf zuvor ausgeführte Befehle zu:
history
Führen Sie einen bestimmten Befehl aus dem Verlauf aus:
!number
3. Ausgabe umleiten
Speichern Sie die Befehlsausgabe in einer Datei:
command > output_file
4. Befehle verketten
Führen Sie mehrere Befehle nacheinander aus:
command1 && command2
Beispiel-Workflow: Einrichten eines Webservers
Hier ist eine Schritt-für-Schritt-Anleitung zum Einrichten eines Webservers mit grundlegenden Befehlen. Befolgen Sie diese Anweisungen, um Ihre benutzerdefinierte Website zu konfigurieren und sicherzustellen, dass sie die Standard-Apache-Seite ersetzt.
1. System aktualisieren
Ihr System auf dem neuesten Stand zu halten, ist für Sicherheit und Stabilität unerlässlich. Führen Sie den folgenden Befehl aus, um alle Pakete zu aktualisieren:
sudo apt update && sudo apt upgrade -y
2. Apache installieren
Installieren Sie den Apache-Webserver:
sudo apt install apache2 -y
Überprüfen Sie nach der Installation, ob Apache läuft:
sudo systemctl status apache2
Sie sollten eine Statusmeldung wie diese sehen: Active: active (running).
3. Verzeichnis für Ihre Website erstellen
Erstellen Sie ein Verzeichnis zum Speichern Ihrer Website-Dateien. In diesem Beispiel erstellen wir ein Verzeichnis mit dem Namen mywebsite:
sudo mkdir -p /var/www/mywebsite
4. Berechtigungen festlegen
Legen Sie die korrekte Eigentümerschaft und die korrekten Berechtigungen fest, damit Apache auf die Website-Dateien zugreifen kann:
sudo chown -R www-data:www-data /var/www/mywebsite
sudo chmod -R 755 /var/www/mywebsite
5. Beispiel-HTML-Datei erstellen
Fügen Sie eine einfache index.html-Datei hinzu, die als Startseite Ihrer Website dient:
sudo tee /var/www/mywebsite/index.html > /dev/null << EOF
<!DOCTYPE html>
<html>
<head>
<title>Welcome</title>
</head>
<body>
<h1>Welcome to My Website</h1>
</body>
</html>
EOF
Dadurch wird eine einfache Seite erstellt, auf der steht: “Welcome to My Website”.
6. Virtuellen Host konfigurieren
Um Ihre benutzerdefinierte Website bereitzustellen, erstellen Sie eine neue Virtual-Host-Konfigurationsdatei für Apache:
sudo nano /etc/apache2/sites-available/mywebsite.conf
Fügen Sie den folgenden Inhalt in die Datei ein:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/mywebsite
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Speichern Sie die Datei und verlassen Sie sie, indem Sie Ctrl+O drücken und dann Ctrl+X drücken.
7. Ihre Website aktivieren
Aktivieren Sie die neue Virtual-Host-Konfiguration:
sudo a2ensite mywebsite.conf
Deaktivieren Sie die Standard-Site-Konfiguration von Apache, um sicherzustellen, dass Ihre Website bereitgestellt wird:
sudo a2dissite 000-default.conf
Laden Sie Apache neu, um die Änderungen zu übernehmen:
sudo systemctl reload apache2
8. Konnektivität testen
Prüfen Sie, ob Ihre Website funktioniert, indem Sie Folgendes ausführen:
curl http://localhost
Sie sollten den HTML-Inhalt Ihrer benutzerdefinierten index.html-Datei sehen:
<!DOCTYPE html>
<html>
<head>
<title>Welcome</title>
</head>
<body>
<h1>Welcome to My Website</h1>
</body>
</html>
Alternativ können Sie einen Browser öffnen und zu http://<your-server-ip> navigieren, um Ihre Website anzuzeigen.
Fehlerbehebung
Wenn Sie weiterhin die Standard-Apache-Seite sehen oder Probleme auftreten:
- Stellen Sie sicher, dass Ihre Site aktiviert ist
Überprüfen Sie, ob Ihre Konfiguration aktiv ist:
ls /etc/apache2/sites-enabled/
- Sie sollten
mywebsite.confsehen. Falls nicht, aktivieren Sie sie mit:
sudo a2ensite mywebsite.conf
- Apache-Protokolle prüfen
Suchen Sie in den Protokollen nach Fehlern:
sudo tail -f /var/log/apache2/error.log
- Apache neu starten
Wenn das Problem weiterhin besteht, starten Sie Apache neu:
sudo systemctl restart apache2
Fazit
Die Beherrschung der Linux-Befehlszeile ist für eine effektive Ubuntu-Server-Administration unerlässlich. Indem Sie diese Befehle lernen und üben, gewinnen Sie Sicherheit bei der Verwaltung Ihrer Serverumgebung, der Fehlerbehebung und der effizienten Ausführung administrativer Aufgaben.
Nächste Schritte: Benutzer und Berechtigungen verwalten
Sobald Sie mit den Grundlagen der Befehlszeilenadministration vertraut sind, ist der nächste wichtige Schritt in der Serververwaltung das Verständnis von Benutzern, Gruppen und Berechtigungen. Die ordnungsgemäße Verwaltung von Benutzerkonten und Zugriffskontrollen ist unerlässlich, um die Sicherheit zu wahren und sicherzustellen, dass nur autorisierte Personen auf vertrauliche Dateien und Ressourcen auf Ihrem Server zugreifen oder diese ändern können.
Im nächsten Artikel, „Benutzer und Berechtigungen verwalten“, behandeln wir:
- So erstellen, ändern und löschen Sie Benutzerkonten.
- Gruppen für eine effiziente Zugriffskontrolle verwalten.
- Datei- und Verzeichnisberechtigungen verstehen (lesen, schreiben, ausführen).
- Erweiterte Tools wie
sudozur Rechteerweiterung verwenden. - Bewährte Verfahren zur Sicherung von Benutzerkonten unter Ubuntu Server.
Bleiben Sie dran für umsetzbare Erkenntnisse zur Verbesserung Ihrer Sicherheits- und Zugriffsverwaltung!
14 thoughts on “03.Mastering the Linux Command Line for Ubuntu Server”