Benutzer-Werkzeuge

Webseiten-Werkzeuge


heiko:tipps:linux-grundlagen:tipp_linuxgrundlagen_01

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
heiko:tipps:linux-grundlagen:tipp_linuxgrundlagen_01 [2018/08/06 22:51]
Heiko Teichmeier
heiko:tipps:linux-grundlagen:tipp_linuxgrundlagen_01 [2018/08/11 21:57]
Heiko Teichmeier
Zeile 2: Zeile 2:
 date issued = 2008-01-01 date issued = 2008-01-01
 ~~ ~~
-{{tag>[linux grundlagen befehle heiko_teichmeier glauchau sachsen]}}+{{tag>linux grundlagen dokumentation benutzer gruppen dateiattribute dateisystem programme installieren rpm berechtigungen heiko_teichmeier glauchau sachsen}}
 __letzte inhaltliche Überarbeitung:__ 01.01.2008 __letzte inhaltliche Überarbeitung:__ 01.01.2008
-===== 1. Linux - Grundlagen und Befehle =====+===== Linux - Grundlagen und Befehle ===== 
 +===== 1. Teil =====
 ==== 1.1 Vorwort ==== ==== 1.1 Vorwort ====
 Meine Ausführungen beziehe ich oft (wenn Pfade oder das Konfiguationsprogramm "Yast" angeführt werden) auf "SuSE Linux", da ich hauptsächlich damit arbeite. Im Laufe der Zeit haben sich die Pfade und die Verteilung der Dateien im Dateisystem geändert, so dass es immer wieder mal Abweichungen geben kann. Hier bitte nicht gleich verzweifeln. Im Verzeichnis **///usr/share/doc/packages//** finden sich die Dokumentationen zu den einzelnen Softwarepaketen. Meine Ausführungen beziehe ich oft (wenn Pfade oder das Konfiguationsprogramm "Yast" angeführt werden) auf "SuSE Linux", da ich hauptsächlich damit arbeite. Im Laufe der Zeit haben sich die Pfade und die Verteilung der Dateien im Dateisystem geändert, so dass es immer wieder mal Abweichungen geben kann. Hier bitte nicht gleich verzweifeln. Im Verzeichnis **///usr/share/doc/packages//** finden sich die Dokumentationen zu den einzelnen Softwarepaketen.
  
-Der Standardpfad für die Konfigurationsdateien liegt fast immer irgendwo unterhalb von <b>/etc</b>. Diese Konfigurationsdateien (im Textformat - das ist schon der erste Vorteil von Linux) sind fast immer sehr gut dokumentiert, was die einzelnen Optionen bewirken (leider meist in englisch). Überwiegend sind schon gängige Grundeinstellungen eingetragen. Für die meisten User werden aber die Einstellungen die mit dem Systemkonfigurationstool **"YAST"** (in der Shell -Kommandozeile- mit dem Befehl "yast" aufrufbar) genügen. Deshalb nicht gleich Angst vor den vielen Textdateien bekommen.+Der Standardpfad für die Konfigurationsdateien liegt fast immer irgendwo unterhalb von **/etc**. Diese Konfigurationsdateien (im Textformat - das ist schon der erste Vorteil von Linux) sind fast immer sehr gut dokumentiert, was die einzelnen Optionen bewirken (leider meist in englisch). Überwiegend sind schon gängige Grundeinstellungen eingetragen. Für die meisten User werden aber die Einstellungen die mit dem Systemkonfigurationstool **"YAST"** (in der Shell -Kommandozeile- mit dem Befehl "yast" aufrufbar) genügen. Deshalb nicht gleich Angst vor den vielen Textdateien bekommen.
  
 ==== 1.2 Dokumentation ==== ==== 1.2 Dokumentation ====
Zeile 14: Zeile 15:
  
 Darüberhinaus gibt es noch andere Informationsmöglichkeiten: Darüberhinaus gibt es noch andere Informationsmöglichkeiten:
-Bei der Eingabe eines Befehls kann man meist die Option **"--help"** anhängen (mit Leerzeichen getrennt). Es erscheint ein kurzer Überblick über die wichtigsten Optionen mit denen man das Programm aufrufen kann.+Bei der Eingabe eines Befehls kann man meist die Option ''<nowiki>--help</nowiki>'' anhängen (mit Leerzeichen getrennt). Es erscheint ein kurzer Überblick über die wichtigsten Optionen mit denen man das Programm aufrufen kann.
  
-Der Aufruf <b>"man [programm/befehl]"</b> ruft eine der zahllosen **"manpages"** (Manual-Seiten) auf. Diese gibt es eigentlich bei jedem ordentlichen Linux-Befehl/Programm.+Der Aufruf ''<nowiki>man [programm/befehl]</nowiki>'' ruft eine der zahllosen ''<nowiki>manpages</nowiki>'' (Manual-Seiten) auf. Diese gibt es eigentlich bei jedem ordentlichen Linux-Befehl/Programm.
  
-Sollte einem nur der(die) Anfangsbuchstabe(n) eines Befehls einfallen, gibt man diesen ein, drückt die Tabulatortaste und Linux versucht diesen zu vervollständigen. Gibt es mehrere Möglichkeiten erscheinen alle Möglichkeiten auf dem Bildschirm. Diese **"Eingabevervollständigung"** funktioniert genauso in Verbindung mit Verzeichnissen: //"cd /etc/sa <TAB>"// wird zu //"cd /etc/samba"// ergänzt.+Sollte einem nur der(die) Anfangsbuchstabe(n) eines Befehls einfallen, gibt man diesen ein, drückt die Tabulatortaste und Linux versucht diesen zu vervollständigen. Gibt es mehrere Möglichkeiten erscheinen alle Möglichkeiten auf dem Bildschirm. Diese **"Eingabevervollständigung"** funktioniert genauso in Verbindung mit Verzeichnissen: ''<nowiki>cd /etc/sa <TAB></nowiki>'' wird zu ''<nowiki>cd /etc/samba</nowiki>'' ergänzt.
  
 ==== 1.3. Benutzer und Gruppen ==== ==== 1.3. Benutzer und Gruppen ====
Zeile 65: Zeile 66:
 Beim manuellen Einhängen (Mounten) einer Partition muss man den Dateisystemtyp angeben. Beim manuellen Einhängen (Mounten) einer Partition muss man den Dateisystemtyp angeben.
 __Hier nur ein kurzes Beispiel:__ __Hier nur ein kurzes Beispiel:__
-<code bash>mount -t reiserfs /dev/hdd6 /win_home</code> +<code bash; gutter: false>mount -t reiserfs /dev/hdd6 /win_home</code> 
-Die 6. Partition auf der Slave-Platte am 2. IDE-Bus wird als Reiser-Dateisystem in das Verzeichnis /win_home eingehängt (das Verzeichnis //win_home// muss im Wurzelverzeichnis angelegt sein!!!).+Die 6. Partition auf der Slave-Platte am 2. IDE-Bus wird als Reiser-Dateisystem in das Verzeichnis **/win_home** eingehängt (das Verzeichnis //win_home// muss im Wurzelverzeichnis angelegt sein!!!).
  
 ==== 1.6. Software-Installation - RPM ==== ==== 1.6. Software-Installation - RPM ====
Zeile 82: Zeile 83:
  
 === 1.6.1 Infos über RPM-Pakete === === 1.6.1 Infos über RPM-Pakete ===
-Ben&ötigt man Informationen über bestimmte RPM-Softwarepakete, kann man YAST mit seiner Softwareverwaltung (Installationsmenü) benutzen. Wie so oft (und bei Linux ohne GUI auf älterer Hardware notwendig und hilfreich) ist ist die Kommandozeile der direkteste Weg zum Ziel. Mit **//man rpm//** kann man sich alle Informationen über die Benutzung des **rpm-Befehls** anzeigen lassen. Als kleinen Einstieg beschreibe ich hier die nötigsten Optionen.+Benötigt man Informationen über bestimmte RPM-Softwarepakete, kann man YAST mit seiner Softwareverwaltung (Installationsmenü) benutzen. Wie so oft (und bei Linux ohne GUI auf älterer Hardware notwendig und hilfreich) ist ist die Kommandozeile der direkteste Weg zum Ziel. Mit **//man rpm//** kann man sich alle Informationen über die Benutzung des **rpm-Befehls** anzeigen lassen. Als kleinen Einstieg beschreibe ich hier die nötigsten Optionen.
  
 Informationen über die installierte Software kann man mit der Option **//-q//** abfragen: Informationen über die installierte Software kann man mit der Option **//-q//** abfragen:
   * **rpm -q apache** => zeigt die Versionsnummer des Paketes //"apache"// an (wenn es installiert ist und genau so heißt) **//(-q =>query)//**   * **rpm -q apache** => zeigt die Versionsnummer des Paketes //"apache"// an (wenn es installiert ist und genau so heißt) **//(-q =>query)//**
-  * **rpm -ql apache** => zeigt alle im Paket <i>"apache"</i> enthaltenen Dateien an **//(Option -l =>list)//**+  * **rpm -ql apache** => zeigt alle im Paket //"apache"/enthaltenen Dateien an **//(Option -l =>list)//**
   * **rpm -qa** => zeigt alle installierten RPM-Pakete an **//(Option -a =>all)//**   * **rpm -qa** => zeigt alle installierten RPM-Pakete an **//(Option -a =>all)//**
   * **rpm -qa | grep apache**   * **rpm -qa | grep apache**
Zeile 96: Zeile 97:
   * **rpm -qfi pfad/datei** => zeigt erweiterte Informationen an:   * **rpm -qfi pfad/datei** => zeigt erweiterte Informationen an:
     * Name, Version, Beschreibung **//(Option -i =>information)//**     * Name, Version, Beschreibung **//(Option -i =>information)//**
-  * **rpm -qf --changelog pfad/datei** => zeigt das <i>changelog</i> an. Beschreibt die Änderungen zur Vorgängerversion des zugehörigen Paketes.+  * **rpm -qf --changelog pfad/datei** => zeigt das //changelog/an. Beschreibt die Änderungen zur Vorgängerversion des zugehörigen Paketes.
  
 Noch mehr und spezifischere Informationen erhält man mit folgenden Optionen: Noch mehr und spezifischere Informationen erhält man mit folgenden Optionen:
   * **rpm -q --requires apache** => Anzeige der vom Paket //apache// benötigten Dateien   * **rpm -q --requires apache** => Anzeige der vom Paket //apache// benötigten Dateien
   * **rpm -q --provides apache** => Anzeige der vom Paket //apache// zur Verfügung gestellten Dateien ("Dienste")   * **rpm -q --provides apache** => Anzeige der vom Paket //apache// zur Verfügung gestellten Dateien ("Dienste")
-  * **rpm -q --whatprovides mod_imap.so** => Anzeige der Pakete die die Datei/Dienst //mod_imap.so// bereitstellen, also "mitbringen" (wird mit der Installation des Paketes zur Verfügung gestellt). In diesem einen Fall ergibt die Abfrage bei mir: **//apache-1.3.26-159//**+  * **rpm -q --whatprovides mod_imap.so** => Anzeige der Pakete die die Datei/Dienst //mod_imap.so// bereitstellen, also "mitbringen" (wird mit der Installation des Paketes zur Verfügung gestellt). 
 +    * In diesem einen Fall ergibt die Abfrage bei mir: **//apache-1.3.26-159//**
  
-        Diese Abfragen funktionieren nur mit bereits installierten Paketen (die schnellen +Diese Abfragen funktionieren nur mit bereits installierten Paketen (die schnellen werden es schon gemerkt haben ;-)) Ist das Paket nicht installiert gibt es unschöne Fehlermeldungen.
-        werden es schon gemerkt haben ;-))Ist das Paket nicht installiert gibt es +
-        unsch&ouml;ne Fehlermeldungen. +
-        <ul> +
-        <li><span class="bold">rpm -qp --requires [pfad/]acroread-5.08-50.i586.rpm</span> +
-        => zeigt die vom angefragten Paket ben&ouml;tigten Dateien ab.<br> +
-        Das jetzt kooperative Verhalten von Linux wird durch den Parameter +
-        <span class="bolditalic">-p</span> (wie Paket) bewirkt</li> +
-        </ul> +
-</p> +
-        <a name="rpm_install"><h4>1.6.2 Installation von RPM-Paketen</h4></a> +
-<p> +
-        Von der Kommandozeile aus, installiert man RPM-Pakete mit der Option <b><i>-i</i></b>: +
-        <ul> +
-        <li><b>rpm -i [install-Optionen] apache-1.3.26-57.i586.rpm</b> => installiert das +
-        angegebene <i>Apache-</i>Paket</li> +
-        <li><b>rpm -i --test <i>RPM-Paket</i></b> => Installiert das RPM-Paket nicht, pr&uuml;ft auf +
-        eventuelle Konflikte und berichtet dar&uuml;ber (Trockenlauf).</li> +
-        <li><b>rpm -i --hash <i>RPM-Paket</i></b> => zeigt w&auml;hrend der +
-        Installation 50 <b>#</b>-Zeichen an (Installationsfortschritt bis 100%). Die Ausgabe +
-        kann mit der zus&auml;tzlich anzugebenden Option <b>-v</b> noch etwas versch&ouml;nert werden.</li> +
-        <li><b>rpm -i -h <i>RPM-Paket</i></b> => bewirkt das Gleiche (-h = --hash). +
-        In den n&auml;chsten Beispielen stelle ich die lange und wenn vorhanden die kurze +
-        Schreibweise in eckigen Klammern gemeinsam dar.</li> +
-        <li><b>rpm -i --oldpackage <i>RPM-Paket</i></b> => erlaubt das Update eines +
-        neueren Paketes mit einem alten (wenn man wieder downgraden m&ouml;chte).</li> +
-        <li><b>rpm -i --replacepkgs <i>RPM-Paket</i></b> => Installiert die RPM-Pakete, auch +
-        wenn sie schon auf dem System installiert sind.</li> +
-        <li><b>rpm -i --replacefiles <i>RPM-Paket</i></b> => Installiert die RPM-Pakete, auch +
-        wenn dadurch Dateien von, bereits auf dem System installierten, Paketen ersetzt werden.</li> +
-        <li><b>rpm -i --force <i>RPM-Paket</i></b> => Dasselbe wie --replacepkgs, --replacefiles, +
-        und --replacefiles zusammen benutzt.</li> +
-        <li><b>rpm -i --nodeps <i>RPM-Paket</i></b> => Verhindert die &Uuml;berpr&uuml;fung auf +
-        Paketabh&auml;ngigkeiten (diese Option sollte man nur benutzen, wenn man genau wei&szlig; was +
-        man macht).</li> +
-        <li><b>rpm -i --excludedocs <i>RPM-Paket</i></b> => Schlie&szlig;t alle Dateien, die als +
-        <i>Dokuentation</i> gekennzeichnet sind, von der Installation aus (f&uuml;r kleine +
-        Festplatten und schlanke Systeme geeignet).</li> +
-        </ul> +
-</p> +
-        <a name="rpm_update"><h4>1.6.3 Update von RPM-Paketen</h4></a> +
-<p> +
-        Stellt man nun fest, dass ein installiertes RPM-Paket mit einem neueren "upgedatet" +
-        werden muss, kann man die Updatefunktion von YAST nutzen - oder man macht es von +
-        Hand: +
-        <ul> +
-        <li><b>cd <i>verzeichnisname</i></b> => in das Downloadverzeichnis wechseln</li> +
-        <li><b>rpm -Uhv <i>paketname</i></b> => Updaten des installierten RPM-Paketes mit dem +
-        angegebenen (bei den oft sehr langen Namen hilft die <i>Eingabevervollst&auml;ndigung</i>: +
-        nach den ersten 2 Buchstaben <i>TAB</i> dr&uuml;cken vervollst&auml;ndigt einen evtl. im aktuellen +
-        Verzeichnis vorhandenen Dateiname)</li> +
-        <li>Sollten Abh&auml;ngigkeiten nicht aufl&ouml;sbar oder ein solches Paket nicht +
-        installiert sein, bricht der Updatevorgang mit einer entsprechenden Fehlermeldung ab. +
-        </li> +
-        </ul>+
  
 +  * **rpm -qp --requires [pfad/]acroread-5.08-50.i586.rpm** => zeigt die, vom angefragten Paket, benötigten Dateien ab.
 +    * Das jetzt kooperative Verhalten von Linux wird durch den Parameter **//-p//** (wie Paket) bewirkt
 +
 +=== 1.6.2 Installation von RPM-Paketen ===
 +Von der Kommandozeile aus, installiert man RPM-Pakete mit der Option **//-i//**:
 +  * **rpm -i [install-Optionen] apache-1.3.26-57.i586.rpm** => installiert das angegebene //Apache-//Paket
 +  * **rpm -i --test //RPM-Paket//** => Installiert das RPM-Paket nicht, prüft auf eventuelle Konflikte und berichtet darüber (Trockenlauf).
 +  * **rpm -i --hash //RPM-Paket//** => zeigt während der Installation 50 **#**-Zeichen an (Installationsfortschritt bis 100%). Die Ausgabe kann mit der zusätzlich anzugebenden Option **-v** noch etwas verschönert werden.
 +  * **rpm -i -h //RPM-Paket//** => bewirkt das Gleiche (-h = --hash).
 +
 +In den nächsten Beispielen stelle ich die lange und wenn vorhanden die kurze Schreibweise in eckigen Klammern gemeinsam dar.
 +
 +  * **rpm -i --oldpackage //RPM-Paket//** => erlaubt das Update eines neueren Paketes mit einem alten (wenn man wieder downgraden möchte).
 +  * **rpm -i --replacepkgs //RPM-Paket//** => Installiert die RPM-Pakete, auch wenn sie schon auf dem System installiert sind.
 +  * **rpm -i --replacefiles //RPM-Paket//** => Installiert die RPM-Pakete, auch wenn dadurch Dateien von, bereits auf dem System installierten, Paketen ersetzt werden.
 +  * **rpm -i --force //RPM-Paket//** => Dasselbe wie --replacepkgs und --replacefiles zusammen benutzt.
 +  * **rpm -i --nodeps //RPM-Paket//** => Verhindert die Überprüfung auf Paketabhängigkeiten (diese Option sollte man nur benutzen, wenn man genau weiß was man macht).
 +  * **rpm -i --excludedocs //RPM-Paket//** => Schließt alle Dateien, die als //Dokuentation// gekennzeichnet sind, von der Installation aus (für kleine Festplatten und schlanke Systeme geeignet).
 +
 +=== 1.6.3 Update von RPM-Paketen ===
 +
 +Stellt man nun fest, dass ein installiertes RPM-Paket mit einem neueren "upgedatet" werden muss, kann man die Updatefunktion von YAST nutzen - oder man macht es von Hand:
 +  * **cd //Verzeichnisname//** => in das Downloadverzeichnis wechseln
 +  * **rpm -Uhv //paketname//** => Updaten des installierten RPM-Paketes mit dem angegebenen (bei den oft sehr langen Namen hilft die //Eingabevervollständigung//:
 +    * nach den ersten 2 Buchstaben //TAB// drücken vervollständigt einen evtl. im aktuellen Verzeichnis vorhandenen Dateiname)
 +  * Sollten Abhängigkeiten nicht auflösbar oder ein solches Paket nicht installiert sein, bricht der Updatevorgang mit einer entsprechenden Fehlermeldung ab.
 +[<>]
 +~~DISQUS~~
heiko/tipps/linux-grundlagen/tipp_linuxgrundlagen_01.txt · Zuletzt geändert: 2018/08/11 21:58 von Heiko Teichmeier