Vorraussetzung zum Bau von kernel-Modulen.

  • Um Kernel-Module (Grafikkartentreiber, Netzwerkkartentreiber, original Virtualbox usw.) bauen zu können, werden zumindest folgende Pakete benötigt:
    make, gcc, kernel-devel, kernel-source.


    Diese Pakete kann man ganz einfach mit Yast-----Software installieren und löschen nachinstallieren (Bild1):
    Im Yast-Modul links oben auf Anzeigen klicken und Schemata auswählen, dann in der Liste herunter-scrollen und unter Entwicklung die Grundlegende Entwicklungsumgebung aktivieren.


    Die zugehörigen Pakete des kernels installiere ich immer über Suchen und als Suchbegriff kernel (Bild2).
    Es müssen kernel-source, kernel-devel und kernel-xxxxxxx-devel installiert werden.
    In meiner Installation läuft ein kernel-desktop, also muss auch kernel-desktop-devel installiert werden und nicht z.B. kernel-default-devel.
    Ebenso müssen die Versionen zueinander passen (siehe Installiert (Verfügbar))
    Erklärung der Versionen:


    kernel-desktop, kernel-desktop-devel, kernel-devel und kernel-source sind in diesem Fall in der Version 3.11.6-4.1 installiert, das heißt alle sind in derselben Version installiert.



    Sodann sollte man auch das Paket bash-completion installiert werden, es hilft in der Konsole ungemein mit der Autovervollständigen-Funktion usw. (Bild3)
    Beispiel:

    Code
    ip [tab][tab]


    2x [tab-Taste] gedrückt


    Ausgabe:

    Code
    ip ipcs ipod-read-sysinfo-extended
    ipcmk ipf-mod.pl ipptool
    ipcrm ipg iptables-xml


    Es werden alle Befehle, die mit ip anfangen angezeigt, und es erscheint einen neue Eingabezeile mit dem oben eingegebenen


    Code
    ip


    jetzt einfach weiter eingeben (der Cursor befindet sich hinter dem p):

    Code
    t [tab]


    1 x [tab-Taste]
    und es erscheint:


    Code
    iptables-xml


    Da dies der einzige Befehl ist, der mit ipt anfängt, siehe die obige erste Ausgabe von ip.



    Fazit:
    Sobald die bash einen Befehl eindeutig auflösen kann, wird er bei 1x [tab] ergänzt, andernfalls muss man 2x [tab] drücken um zu sehen , welche Befehle noch mit den Buchstaben anfangen und den Befehl um den nächsten Buchstaben erweitern.
    Falls [tab] oder [tab][tab] nicht funktioniert, sollte man seine Eingabe auf Schreibfehler (Groß-Kleinschreibung) usw. überprüfen.


    Das funktioniert sogar mit einem Aufruf z.B. bei ssh, um mit einem schon einmal verbundenen Server erneut zu verbinden:

    Code
    ssh [tab][tab]


    (Leerzeichen hinter ssh!)


    Ausgabe:

    Code
    ::1 fe00::0 ipv6-allnodes laptop xxxxxxx.org suse123
    192.168.0.200 ff00::0 ipv6-allrouters laptop.linux openwrt suse123.linux
    192.168.0.201 ff02::1 ipv6-localhost linux64 raspi win7
    192.168.0.254 ff02::2 ipv6-localnet linux64.linux raspi.linux win7.linux
    debian ff02::3 ipv6-loopback localhost raspisuse winxp
    debian.linux ipv6-allhosts ipv6-mcastprefix xxxxxxxxx raspisuse.linux winxp.linux