Allgemeine Daten zu Linux, Tipps und Tricks und Systemeinstellungen: Unterschied zwischen den Versionen

Aus m-wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= Kommandozeile =
== Kommandozeile ==
== Versionen herausfinden ==
=== Versionen herausfinden ===
{| class="wikitable"
{| class="wikitable"
|-
|-
Zeile 18: Zeile 18:
|}
|}


== Wichtige Befehle und Kniffs ==
=== Wichtige Befehle und Kniffs ===
{| class="wikitable"
{| class="wikitable"
|-
|-
Zeile 50: Zeile 50:
|}
|}


== Wichtige Befehle kurz erklärt ==
=== Wichtige Befehle kurz erklärt ===
{| class="wikitable"
{| class="wikitable"
|-
|-
Zeile 64: Zeile 64:
|}
|}


== Nice to know ==
=== Nice to know ===
Nicht so wichtig, doch manchmal doch nützlich.
Nicht so wichtig, doch manchmal doch nützlich.
{| class="wikitable"
{| class="wikitable"
Zeile 87: Zeile 87:
|}
|}


== Netzwerk ==
=== Netzwerk ===
ifconfig/iwconfig erledigt das meiste:
ifconfig/iwconfig erledigt das meiste:
{| class="wikitable"
{| class="wikitable"
Zeile 102: Zeile 102:
|}
|}


== Remotezugriff auf Rechner ==
=== Remotezugriff auf Rechner ===
=== Einloggen per SSH ===
==== Einloggen per SSH ====
ssh benutzername@server <br />
ssh benutzername@server <br />
Falls danach das Serverzertifikat kommt (wenn korrekt), bestätigen, Passwort eingeben und schon ist man eingeloggt.
Falls danach das Serverzertifikat kommt (wenn korrekt), bestätigen, Passwort eingeben und schon ist man eingeloggt.


=== Zugang friert ein ===
==== Zugang friert ein ====
Beim Shell-Zugriff auf einen Linux-Rechner kann es vorkommen, dass der Bildschirm einfriert. Meistens liegt das Problem nur an einer falsche Tastenkombination. Denn drückt man versehentlich [Ctrl-S], stoppt das System jegliche Ausgabe. Erst durch die Tastenkombination [Ctrl-Q] wird dieser Zustand aufgehoben.
Beim Shell-Zugriff auf einen Linux-Rechner kann es vorkommen, dass der Bildschirm einfriert. Meistens liegt das Problem nur an einer falsche Tastenkombination. Denn drückt man versehentlich [Ctrl-S], stoppt das System jegliche Ausgabe. Erst durch die Tastenkombination [Ctrl-Q] wird dieser Zustand aufgehoben.


= KDE =
== KDE ==
Nützliche Programme:
Nützliche Programme:
{| class="wikitable"
{| class="wikitable"
Zeile 119: Zeile 119:
|}
|}


= 32Bit/64Bit =
== 32Bit/64Bit ==
== 32Bit Programme unter 64Bit System ==
=== 32Bit Programme unter 64Bit System ===
http://www.tippscout.de/linux-ubuntu-programm-nicht-gefunden_tipp_5406.html
http://www.tippscout.de/linux-ubuntu-programm-nicht-gefunden_tipp_5406.html
== Kernel ==
Der Kernel ist das Herz von Linux und stellt alle notwendigen Betriebssystem-Funktionen zur Verfügung.
=== Kernel-Treiber-Grundlagen ===
Im [https://embetronicx.com/linux-device-driver-tutorials/ Kernel-Treiber-Tutorial] wird aufgezeigt, wie Kernel-Treiber arbeiten und wie sie aufgebaut sind. Grundsätzlich gibt es den User-Space, wo sich die Programme befinden und den Kernel-Space, in dem auch die Treiber sind. Über die System-Schnittstelle können Programme mit dem Kernel kommunizieren und Funktionen aufrufen, welche dann vom Kernel über die Treiber an die Hardware weitergeleitet werden.
LKM (Linux Kernel Modul) sind Module, welche dynamisch nach/während des Systemstarts zum Grundkernel hinzugefügt werden. Dies hat den Vorteil, dass man sie nicht in die Sourcen hinein kompilieren muss. LKM werden (unter anderem) für folgende Bereiche verwendet:
* Gerätetreiber (Hardware)
* Dateisystem-Treiber (Festplatten, Memorykarten, Netzwerksysteme wie Samba)
* Systemaufrufe (Datei lesen, Prozess stoppen, System neu starten)
Folgende Unterschiede bestehen zwischen Benutzerprogrammen und Kernel-Modulen:
* Unterschiedlicher Adressbereich im Speicher. Dadurch werden Module vor Programmen geschützt.
* Höhere Ausführungsprivilegien als normale Programme.
* Die Module werden nicht nacheinander ausgeführt, sondern registrieren sich einfach, damit sie später aufgerufen werden können.
* Für die Erstellung werden unterschiedliche Header-Dateien verwendet.
Der Unterschied zwischen einem Kernelmodul und einem Gerätetreiber besteht darin, dass das Modul zur Laufzeit mit <code>insmod</code> oder <code>modprobe</code> hinzugefügt werden kann, während Gerätetreiber fix im Kernel einkompiliert sind. Geräte werden in Linux immer als Datei angesprochen. Gerätetreiber lassen sich in folgende Gruppen aufteilen.
==== Zeichengeräte ====
Lesen Daten Zeichen für Zeichen ein. Beispiele sind die Tastatur, die Maus oder serielle Drucker. Wird ein Gerät von jemandem benutzt, so kann niemand anders darauf zugreifen. Der gleichzeitige Zugriff ist blockiert. Beim Schreiben auf das Gerät werden die Daten synchronisiert. Für die Kommunikation mit anderen Geräten werden häufig Zeichengerätetreiber verwendet. Diese Geräte kann man entsprechend auch nicht mounten.
Character Device
==== Blockgeräte ====
Im Gegensatz zu Zeichengeräten werden hier Zeichen blockweise gelesen und geschrieben. Entsprechend ist dieser Typ hilfreich, wenn man massenweise Daten zu verarbeiten hat. Alle Massenmedien wie HDD/SDD, Memorysticks oder CD/DVD sind Blockgeräte. Beim Formatieren wird das Gerät blockweise aufgeteilt. Daten werden meist asynchron geschrieben (mit Puffer) und brauchen die CPU intensiv. Die Geräte können bei Bedarf angeschlossen <code>mount</code> oder abgekoppelt <code>umount</code> werden.
==== Netzwerkgeräte ====
Diese Geräte senden und erhalten Pakete in einem Datenstrom. Neben Netzwerkkarten können die Geräte auch in SOftware ausgeführt sein wie das Loopback-Gerät oder VPN-Verbindungen.


[[Kategorie:Computer]][[Kategorie:Linux]][[Kategorie:Software]][[Kategorie:Hardware]]
[[Kategorie:Computer]][[Kategorie:Linux]][[Kategorie:Software]][[Kategorie:Hardware]]

Version vom 17. August 2022, 00:26 Uhr

Kommandozeile

Versionen herausfinden

Was herausfinden Befehl Ausgabe, Bemerkungen
Betriebsysstem uname -m x86_64 -> 64-Bit-System, i686 -> 32-Bit-Linux
Prozessorinfo cat /proc/cpuinfo
Würde ein 64-Bit System funktionieren? grep lm leer -> funktioniert nicht, 1-2 Zeilen -> würde funktionieren
Grafikkarte /usr/sbin/hwinfo --gfxcard
Kernelversion cat /proc/version Kurzversion: uname -r oder uname -a
PHP Version less Mit dem Parameter -r kann php interactiv direkt in der Shell oder in Scripts verwendet werden.

Wichtige Befehle und Kniffs

Was herausfinden Befehl Ausgabe, Bemerkungen
Dateien suchen locate <Datei> http://www.tippscout.de/linux-dateien-finden_tipp_5.html
Ist auf dem Raspi standardmässig nicht installiert. Installieren mit dem Paketnamen sudo apt-get install mlocate
Da der Befehl in einer internen Datenbank sucht, kann man sich diese mit sudo updatedbaktualisieren lassen.
Dateien suchen find <Verzeichnis> <Parameter> <Datei> Alle Dateien in allen Unterverzeichnissen ab dem aktuellen Verzeichnis finden, welche die mitgegebene Dateiendung haben: find . -name '*.ogg' Man kann dem Befehl auch Optionen wie Dateigrösse oder Bearbeitungszeitpunkt mitgeben. Siehe dazu den Link oben bei locate.
Suche in man Pages man Programm /Suchbegriff man bash /prompt bringt Hilfe zum Programm bash und geht zum ersten Eintrag in dem prompt erwähnt wird. Mit / und Enter geht es zum nächsten Eintrag.
Rechnen in der Kommandozeile Einfach Rechnung direkt eingeben
"unbekannten" Befehl herausfinden apropos Thema Findet Befehle, welche indexiert wurden zum entsprechenden Thema. apropos sql findet Befehle zum Thema und danach kann man sich über man die genaue Verwendung anzeigen lassen.
chown auf ganze Verzeichnisse chown -R Verzeichnis . Nicht den * verwenden, da dieser als "erweiterer" der Shell übernommen wird und sich dann im Hauptverzeichnis falsch auswirkt. Mit dem "." hingegen meint man das aktuelle Verzeichnis und so wirkt der Befehl korrekt.
Log-Dateien live beobachten tail -f Logdatei Abbruch mit Ctrl-c. tail ohne -f zeigt einfach die letzten Zeilen einer Datei an und beendet dann automatisch.
Befehl abbrechen während Eingabe Einfach Ctrl-C drücken
Programm im aktuellen Verzeichnis starten ./Programmname Verhindert, dass falsche Programme unabsichtlich nach einem Hack gestartet werden. Daher müssen Programme in lokalen Verzeichnissen explitit aufgerufen werden, solange dieser nicht in $path gespeichert ist.
Festplattenplatz df -h h steht für "human readable". Dieser Parameter kann vielfach auch bei anderen Programmen verwendet werden.
Prozesse anschauen top
Prozesse beenden killall Programmname Bei hartnäckigen: killall -KILL Programmname
Dateimanager mc Midnight Commander ist evtl. installiert. Funktioniert wie der Norton Commander. Falls nicht farbig -> mc -c

Wichtige Befehle kurz erklärt

Befehl Beispiel Bemerkungen
Befehlstabelle http://blog.addison-wesley.de/wp-content/uploads/2010/2877_Kommandoreferenz-Poster.pdf
alias Alias von einem Befehl: alias wwwneu=´/etc/rc.d/init.d/apache restart´ Definiert einen Namen für einen Befel oder eine Befehlsreihenfolge: http://www.tippscout.de/linux-aliase-sparen-tipparbeit_tipp_736.html oder http://www.tippscout.de/komplizierte-linux-befehle-als-alias-definieren_tipp_3311.html
find Dateien von gestern suchen: find . -name '*.doc' -type f -mtime -1 Findet Dateien: http://www.tippscout.de/linux-dateien-nach-datum-finden_tipp_2047.html
locate Datei suchen: locate... http://www.tippscout.de/linux-dateien-finden_tipp_5.html

Nice to know

Nicht so wichtig, doch manchmal doch nützlich.

Was herausfinden Befehl Ausgabe, Bemerkungen
Wie lange läuft der Rechner schon uptime
Linux schnell herunterfahren halt sonst: shutdown -h now
Linux schnell neu starten reboot sonst: shutdown -r now
Funktionstasten simulieren ESC->Zahl Entspricht der jeweiligen Funktionstaste. Je nach Linuxversion und PC/MAC notwendig. ESC anschliessend 2 -> Entspricht F2.
Liste aller Pakete unter Ubuntu/Debian dpkg http://www.tippscout.de/linux-ubuntu-liste-pakete_tipp_5455.html
Wer ist auf dem System auch noch angemeldet who
Speicher ermitteln free -m zeigt in Megabyte und zusätzlich -t koppelt noch mit Auslagerungsspeicher
Mail von Konsole versenden mail -s"Testmail" foo@foo.bar | kein Abstand nach -s und meist werden solche Mails wegen Spamgefahr vom Provider verworfen.

Netzwerk

ifconfig/iwconfig erledigt das meiste:

Befehl Auswirkung Ausgabe, Bemerkungen
ifconfig -a Anzeige, welche Netzwerkschnittstellen welche IP-Konfiguration haben
Linux schnell herunterfahren halt
ifconfig eth0 192.168.0.2 netmask 255.255.255.0 IP manuell zuweisen
iwconfig Konfiguration des WLANs

Remotezugriff auf Rechner

Einloggen per SSH

ssh benutzername@server
Falls danach das Serverzertifikat kommt (wenn korrekt), bestätigen, Passwort eingeben und schon ist man eingeloggt.

Zugang friert ein

Beim Shell-Zugriff auf einen Linux-Rechner kann es vorkommen, dass der Bildschirm einfriert. Meistens liegt das Problem nur an einer falsche Tastenkombination. Denn drückt man versehentlich [Ctrl-S], stoppt das System jegliche Ausgabe. Erst durch die Tastenkombination [Ctrl-Q] wird dieser Zustand aufgehoben.

KDE

Nützliche Programme:

Einsatz Name Bemerkungen
Systemauslastung anzeigen ksim

32Bit/64Bit

32Bit Programme unter 64Bit System

http://www.tippscout.de/linux-ubuntu-programm-nicht-gefunden_tipp_5406.html

Kernel

Der Kernel ist das Herz von Linux und stellt alle notwendigen Betriebssystem-Funktionen zur Verfügung.

Kernel-Treiber-Grundlagen

Im Kernel-Treiber-Tutorial wird aufgezeigt, wie Kernel-Treiber arbeiten und wie sie aufgebaut sind. Grundsätzlich gibt es den User-Space, wo sich die Programme befinden und den Kernel-Space, in dem auch die Treiber sind. Über die System-Schnittstelle können Programme mit dem Kernel kommunizieren und Funktionen aufrufen, welche dann vom Kernel über die Treiber an die Hardware weitergeleitet werden. LKM (Linux Kernel Modul) sind Module, welche dynamisch nach/während des Systemstarts zum Grundkernel hinzugefügt werden. Dies hat den Vorteil, dass man sie nicht in die Sourcen hinein kompilieren muss. LKM werden (unter anderem) für folgende Bereiche verwendet:

  • Gerätetreiber (Hardware)
  • Dateisystem-Treiber (Festplatten, Memorykarten, Netzwerksysteme wie Samba)
  • Systemaufrufe (Datei lesen, Prozess stoppen, System neu starten)

Folgende Unterschiede bestehen zwischen Benutzerprogrammen und Kernel-Modulen:

  • Unterschiedlicher Adressbereich im Speicher. Dadurch werden Module vor Programmen geschützt.
  • Höhere Ausführungsprivilegien als normale Programme.
  • Die Module werden nicht nacheinander ausgeführt, sondern registrieren sich einfach, damit sie später aufgerufen werden können.
  • Für die Erstellung werden unterschiedliche Header-Dateien verwendet.

Der Unterschied zwischen einem Kernelmodul und einem Gerätetreiber besteht darin, dass das Modul zur Laufzeit mit insmod oder modprobe hinzugefügt werden kann, während Gerätetreiber fix im Kernel einkompiliert sind. Geräte werden in Linux immer als Datei angesprochen. Gerätetreiber lassen sich in folgende Gruppen aufteilen.

Zeichengeräte

Lesen Daten Zeichen für Zeichen ein. Beispiele sind die Tastatur, die Maus oder serielle Drucker. Wird ein Gerät von jemandem benutzt, so kann niemand anders darauf zugreifen. Der gleichzeitige Zugriff ist blockiert. Beim Schreiben auf das Gerät werden die Daten synchronisiert. Für die Kommunikation mit anderen Geräten werden häufig Zeichengerätetreiber verwendet. Diese Geräte kann man entsprechend auch nicht mounten. Character Device

Blockgeräte

Im Gegensatz zu Zeichengeräten werden hier Zeichen blockweise gelesen und geschrieben. Entsprechend ist dieser Typ hilfreich, wenn man massenweise Daten zu verarbeiten hat. Alle Massenmedien wie HDD/SDD, Memorysticks oder CD/DVD sind Blockgeräte. Beim Formatieren wird das Gerät blockweise aufgeteilt. Daten werden meist asynchron geschrieben (mit Puffer) und brauchen die CPU intensiv. Die Geräte können bei Bedarf angeschlossen mount oder abgekoppelt umount werden.

Netzwerkgeräte

Diese Geräte senden und erhalten Pakete in einem Datenstrom. Neben Netzwerkkarten können die Geräte auch in SOftware ausgeführt sein wie das Loopback-Gerät oder VPN-Verbindungen.