• openSUSE Leap 42.1openSUSE Leap 42.1

Nach der Sommerpause und zum Start des Semesters an der VHS Braunschweig findet aus dem "Fachkraft IT-Systeme und -Netzwerke (FITSN)"-Zertifikat ein Seminar für das Modul "Linux" statt.

In unserem praxisorientierten Seminar werden wir die Techniken des alternativen Betriebssystems von der Installation bis zur Administration über die grafischen Frontends und auch über die Befehlszeile (Shell) erlernen.

Hier die Rahmendaten unseres Seminars:

Ort: VHS Braunschweig, Raum 2.03
Zeiten: Mo, 29.08. bis Fr, 02.09.2016; jeweils 08.30 - 16.00 Uhr
Prüfung: eine freiwillige Prüfung ist für Mi., 14.09.2016, 17.00 Uhr, Raum 2.03 geplant
Erstkorrektur: Status 16.09.16 erledigt -
Alle TN (6 TN) haben die Prüfung mit großteils guten und sehr guten Ergebnissen bestanden! Ein stolzer Trainer gratuliert!

Anm.: Nach dem Seminar ist vor dem Seminar: wir bieten an der VHS Braunschweig auch einen "Linux Aufbauworkshop" an. Ich freue mich auf Ihre Nachfragen und Ihr Interesse an unseren Seminaren!

Ich werde unser Seminar in diesem Beitrag wieder ausführlich begleiten...
Ihr Trainer Joe Brandes

Mo., 29.08.16

Montag, 29.08.16, 08.30 - 16.00 Uhr

  • Orientierungsphase, TN-Themen, freiwillige Prüfung, TN-Material Herdt-Skript,
    Installationsmedium (Wechselplatte und openSUSE 42.1 64-Bit DVD)
  • Linux (oder eigentlich GNU/Linux)
    freier Betriebssystemkern (hier: monolithisch, wobei aktuelle Entwicklungen nicht mehr nur starr monolithisch vs. Microkernel lauten; siehe Wikipedia-Artikel Link)
    engl.: Kernel (siehe Website für den Kern auf kernel.org - Lizenz GNU Public License
    erste öffentliche Erwähnung durch Linus Torvalds in Newsgroup comp.os.minix am 26. August 1991 (Wiki-Link L. Torvalds)
  • Distributionen
    Debian - Nummer 1 bei den Server-OS für Web-Services und Co
    Ableger: Ubuntu, Ubuntu-Varianten (Kubuntu, Edubuntu, Mythbuntu, ...)
    Red Hat - Firma mit Serverlizenzen Red Hat Enterprise Linux
    Ableger: Fedora mit den offenen/freien SW-Paketen, CentOS
    Novell - SLES Suse Linux Enterprise Server
    Ableger: openSUSE - freie Community-Variante (siehe de.opensuse.org) - mit Version 42.1 hat Novell die Entwicklungspfade von SLES und openSUSE zusammengelegt (s. Versionen: 13.1 - 13.2 - 42.1)
    DistroAbleger der DistroPaketmanagement
    Red Hat
    (Link)
    Fedora, besser: CentOS
    Kaufversion: RHEL
    RPM (Red Hat Package Management)
    Standardtool: rpm (ohne Auflösung Abhängigkeiten),
    yum
    Novell (Suse)
    (Link)
    openSUSE (Link)
    Kaufversion: SLES
    RPM
    mit YaST2-SW-Verwaltung, zypper, yum
    Debian
    (Link)
    Ubuntu(s),
    Linux Mint
    DEB (Debian Pakete)
    Standardtool: dpkg (ohne Auflösung Abhängigkeiten)
    APT-Tools: apt-get, apt-cache, ... , aptitude

    Entscheidung für "Suse"-Distro: Verbreitung in Deutschland, Nähe (gerade aktuell mit 42.1) zur Enterprise Edition (SLES - Suse Linux Enterprise Server), gute deutschsprachige Community, Install- und Konfigurationsmöglichkeiten mit YaST (guter Einstieg in Administration von Linux Systemen), ...
    weitere Distributionen: ArchLInux, Linux Mint, Gentoo, Mandriva, ... - the list goes on and on (s. a. www.distrowatch.com

  • Installation von openSUSE 42.1 / 64-Bit
    Install-Medien: CD (Netzwerk-Install; ca. 200-250 MB; bei Installation werden alle Pakete aktuell nachgeladen: ca. 3-4 GB),
    DVD (auch als Live-DVD), Netzwerk-Quellen (FTP, HTTP, NFS, SMB/CIFS); immer auch Quellen in 32- und 64-Bit
    Spezialität von openSUSE: YaST - Yet another Setup Tool (Installations- und Setup/Konfigurationswerkzeug)
  • Partitionen
    klassische Gerätenamen /dev/sda (für den ersten Datenträger - dann /dev/sdb, ...)
    eingerichtete Partitionen mit Nummern: /dev/sda1, /dev/sda2, ...
    früher bei EIDE-Geräten: /dev/hda; die sda-Bezeichner dann für SCSI, SATA und heute auch USB-Medien
    Alternativ: Verwendung von Geräten-ID-Bezeichnern (siehe später GRUB oder auch /etc/fstab )
    Hier: UUID zum eindeutigen Bezeichnen der Partitionen/Datenträgerbereiche
    Vorteil: dann werden die Datenträgerbereich auch sauber gemountet, wenn diese mal statt auf /dev/sda2  auf /dev/sdb1 liegen sollten!
    heutige Installation mit folgenden Partitionen angelegt: (ein Screenshot für eine beispielhafte Installation ist unten angefügt)

    Anm.: openSUSE würde gerne BtrFs als Dateisystem für das System und xfs für die Daten (siehe /home) vorschlagen, aber wir wollen hier die "klassischen" Dateisysteme nutzen!

    btrfs partitionierung os 132

    Dateisysteme: ext2, ext3 (ist ext2 mit journaling FS), ext4, xfs, BtrFS, ReiserFS, Fat16, Fat32 (VFat), NTFS
    grobe Einteilung/Partitionierung (bei MBR gibt es 4 Partitionen):
    Anleitung für Systempartitionen im Seminar: (genauerer Sinn und Nutzung später)
    1 prim. Partition /dev/sda1 und 1 Erweiterte Partition /dev/sda2

    MountNutzungEigenschaften
    / Root-Partition Größe: 100 GiB
    Gerät: /dev/sda1 (primäre Partition)
    /home Benutzerverzeichnisse Größe: 50 GiB
    Gerät: /dev/sda5
    (logische Partition in Erweiterter Partition /dev/sda2)
    swap Auslagerungspartition,
    VMM Virtual Memory Management
    Größe: 2 GiB
    Gerät: /dev/sda6
    (logische Partition in Erweiterter Partition /dev/sda2)
    Erste Analyse und Tools rund um unsere Partitionen:
    lsblkfdisk -l /dev/sda  , cfdisk 
    Problem: Umlaute und Sonderzeichen werden falsch dargestellt - Lösung: env LANG=C cfdisk
    Erklärung: in Umgebung (env) wird als Sprache C eingestellt, was der Sprache/Kodierung des Programms entspricht (hier "englisch")
  • System aktualisiert (DVD von Mai 2016 -> über 350 Pakete zu aktualisieren)
    Aktualisierungs-Gadget" (Package-Kit) aus der Kontrollleiste - geht später in Kollision mit Shell-Tools
    Vorgriff auf Befehlszeile: Aktualisierung mit Tool zypper (siehe erster Aktualisierungsdurchlauf: dort wurde diese Toolserie aktualisiert)
    Anm.: "stabile" Desktop-Umgebungen (KDE5 Plasma) erst nach Neustarts;
    Standardwerkzeug (KSnapshot - für Bildschirmfotos mit Druck-Taste) wurde mit Updates in Rente geschickt (deinstalliert - removed) und stattdessen die modernere Alternative "Spactacles" installiert (Grundkonfiguration: automatische Bildschirmfoto-Dateien mit Umschalten + Druck )
  • Desktops
    KDE: erste Gehversuche mit Desktop, Einstellung Doppelklick mit Systemeinstellungen-Werkzeug (systemsettings / KDE-Infozentrum)
    Alternativen: Gnome (Standard-Desktop bei Debian), LXDE, XFCE, TWM, IceWM (in openSUSE 42.1 vorinstalliert neben KDE5/Plasma), Unity (Ubuntu)...
    Übung: Aufrufe für verschiedene KDE-Standardtools (Dolphin, Kwrite, Konsole, Standard-Browser: Mozilla Firefox, Bürosuite LibreOffice, ...)
    Übersichtsseite mit Window-Managern und kompletten Desktops: http://xwinman.org/
  • Dateimanager
    Dolphin (aktuell der Standard-Dateimanager) vs. Konqueror, Zwei-Fensteransichten (F3), Favoriten-Leisten
    Anm.: Konquerer auch Browser und früher der Standard-Dateimanager von KDE - heute ist es Dolphin
    Übung: Einblenden der "versteckten" Dateien/Ordner mit Tastenkombination Alt + . (beginnen ja auch mit .);
    2-Fensteransicht mit Funktionstaste F3
  • Konsolen / Terminals (tty - Teletyper)
    Aufruf von Programmen im Desktop mit Alt + F2 - Programmname
    Terminals 1 bis 6 (ohne Desktop) mittels Strg + Alt + F1 ... F6 - zurück zu Desktop mittels Alt + F7
    Beenden eines Terminals mittels exit (Anm.: logout nutzbar bei Login-Shells)
    erste Gehversuche in der Konsole (shell) mit:  ls -a, ls -al, cd, su, who, whoami, ping, ifconfig   
    wichtig: ifconfig nur mit kompletten Pfad als User aufrufbar: /sbin/ifconfig 
    Anm.: die Superuser/Root haben den Pfad /sbin in Ihrem Pfad - Pfad anzeigen mit echo $PATH  (Pfadvariable)
  • Erste Hilfe in Terminal/Konsole
    Man-Pages (z.B. man rm) oder Befehl mit --help (z.B. rm --help),
    gerne auch Hilfe zur Hilfe mit man man  
    Alternativ: info  Pages
  • Tricks in Terminal/Konsole
    Befehle/Verzeichnisse/Dateien mittels Tabulator komplettieren, mit Cursor-Tasten wiederholen (durchblättern), nach oben blättern mittels Shift + PgUp (Seite hoch);
    die Historie aller Shell-Aufrufe des Users in ~/.bash_history;
    Rekursive Suche in History mittels Strg + R 
    Löschen der Konsole mittels Strg + L 
    Anfang und Ende Kommandozeile mit Strg + A und Strg + E 
    Löschen der Kommandozeile von Cursor bis Anfang mit Strg + U 
    Kopieren und Einfügen (mittlere Maustaste) in der Konsole
  • Konsole: (Hinweis auf Extra-Beitrag mit Befehlsreferenz)
    versteckte Dateien und Ordner werden mit Punkt begonnen siehe ~/.bash_history;
    cd - (wechselt zwischen den letzten Dirs hin und her)
    cd ~ (wechselt in das Home-Dir)
    relative Pfade cd ../Dokumente vs. absolute Pfade cd /home/joeb/Dokumente
  • Koordination von Wechselplatten für die Woche - aktuell keine Wechsel bis Freitag nötig

 

  • PartitionenPartitionen
  • Abschluss InstallationAbschluss Installation
  • Erste AktualisierungErste Aktualisierung
  • Linux auf einem BlattLinux auf einem Blatt
  • Windows ManagerWindows Manager
  • Dateimanager DolphinDateimanager Dolphin

Di., 30.08.16

Dienstag, 30.08.16, 08.30 - 16.00 Uhr

  • Rekapitulation (heute ausführlich zu Tag 01 - bis zur ersten Pause),
    TN-Fragen
  • Bootvorgang
    0) Einschalten (Reset, POST - Power On Self Test)
    1) BIOS / UEFI mit Bootsequenz (Startreihenfolge / Startmedien)
    Übersicht Bootmedien: USB (Sticks/HD), Netzwerk (PXE), Festplatten/SSDs, Optische Medien (CD/DVD)
    MBR (Masterbootrecord mit Partitionstabelle (maximal 4 Partitionen: 4 Primäre oder 3 Primäre und 1 Erweiterte)
    Hinweis. für das Booten von HDs > 2,2 TB wird UEFI mit GPT (GUID Partition Table) benötigt
    Erinnerung:
    Win-Systeme benötigen als Bootstandard eine Aktive primäre Partition inkl. eines "sauberen" MBR (Generischer MBR);
    Reparatur-Tipp zum MBR: mit Win-DVD: bootrec /fixmbr (bzw. bootrec /fixboot für Bootsektor) in Reparaturkonsole
    2) Linux-Bootmanager: GRUB2 (Übersicht Bootmanager und Technik Bootmanager folgt)
    3) Kernel und initrd (klassisch: init Ramdisk - initrd laden; Anm.: die Ramdisk ist optional)
    4) "init" (Erster Prozess mit ID "1") (früher: SysVInit - heute: systemd)
    Anm.: openSUSE (und fast alle anderen Linuxe benutzen systemd ("abwärtskompatibel" zu init),
    Ubuntu hatte zwischenzeitlich upstart als init-Lösung (aktuell: auch systemd mit 16.04 LTS)
    Gründe für Abkehr von SysVinit zu alternativen init-Techiken:
    Effizienter, Parallel arbeitend, Abhängigkeiten von Prozessen cleverer lösend
    Tipp zur Startanalyse: systemd-analyze blame  (erzählt in ms - Millisekunden - die Geschichte der "Starts")
    Technisch: systemd arbeitet eigentlich mit Targets (z.B. default.target) statt den klassischen Runleveln
    Befehle: init , telinit , runlevel , systemctl  (statt sysctl bei init-Technik)
    Extra: exemplarische Szenarios für Parallelinstallation mit Windows - Linktipp MS
  • Bootmanager für Linux
    Lilo (sehr alt und unflexibel), GRUB (oder auch GRUB Legacy - Erläuterungen auf openSUSE Portal)
    aktuell: GRUB2 (technisch extrem zu GRUB abweichend und mächtiger!)
    GRUB-Ordner: /boot/grub2  
    GRUB konfigurieren mit /etc/default/grub und den  /etc/grub.d/  Dateien
    GRUB aktualisieren mit Befehlen grub2-mkconfig -o /boot/grub2/grub.cfg  (bei Suse - andere OS haben ein kleines Hilfsskript namens update-grub)
    Grub2-Techniken bedürfen genauer Recherche und Betrachtungen
    Hinweis zum Bootloader mittels YaST - System - Bootloader
    mögliche Speicherorte für GRUB: MBR, Bootsektor einer Partition
    Erläuterungen zu GRUB2: Link Ubuntuusers-Wiki (Achtung "Ubuntu-Brille"), Linupedia-Artikel
  • Runlevel (klassischer Begriff - systemd arbeitet mit Targets - Grundlagenartikel systemd von Heise.de)
    0 - Stop/Halt
    1 / s / S - Single User (zu Wartungsarbeiten)
    2 - Multi-User (mit und ohne Netzwerk - je nach Distribution)
    3 - Multi-User und Netzwerk (klassische Serverumgebung LAMP und Co)
    4 - unbenutzt
    5 - Multi-User, Netzwerk, X-Server (heute mit Desktops wie KDE oder Gnome)
    6 - Reboot
    Ordner für Skripte /etc/init.d  (Beispiel: sshd folgt);
    Momentaufnahme openSUSE 42.1 Runlevel 5: /etc/init.d/rc5.d beinhaltet 3 Dienste mit entsprechenden (S Start - K Stop/Kill) Skripten (hier: avahi-daemon, postfix, udev)
    diese init-Skripte arbeiten dann mit Parametern start | stop | restart | reload
    Anm.: Red Hat (und Co) arbeiten mit /etc/rc.d  als Haupt-Skriptordner - siehe auch Link rc.d auf init.d bei openSUSE
    Unterordner für die Runlevel rcX.d (X für die Level - also z.B. /etc/init.d/rc3.d bzw. rc5.d)
    hier liegen Verlinkungen (symbolische Links) zu den Start- (beginnen mit S..) und Stop/Kill-Skripten (beginnen mit K..)
    openSUSE:
    init-Technik wird durch systemd-Technik ersetzt bei Beibehaltung der alten (abwärtskompatiblen) init-Skript-Techniken nach SysVinit;
    dadurch werden die Start-/Stoppmechanismen durch teils gleichzeitiges Abarbeiten von Aufrufen beschleunigt - siehe S- und K-Links in Runlevel-Ordnern alle mit gleicher Nummerierung (hier 50 - S50... / K50...)
    Nur noch Skripte, die nicht sauber mit systemd arbeiten - oder noch nicht umgeschrieben worden sind -  kann man noch in diesen Ordnern finden!
    Tools: runlevel , init X (X = S, 0, 1, 3, 5, 6) , shutdown , halt , reboot  
    Hier mal eine ausführlichere Gegenüberstellung (angelehnt an Tafelbild im Seminar):
    SysVinitsystemdBemerkungen
    Runlevel Targets Bezeichungen für gewünschte Bootumgebung
    /etc/inittab keine /etc/inittab (!!)
    in Ordnern diverse Dateien: (z.B.)
    /usr/lib/systemd/system
    Konfigurationsdatei(en)
    runlevel
    init
    telinit
    sysctl
    chkkonfig
    runlevel (wegen Kompatibilität)
    init (w. K.)
    telinit (w. K.)
    systemctl
    journalctl
    systemd-*
    Tools
    service sshd status systemctl status sshd.service Status openSSH Server
    service sshd start systemctl start sshd.service Starten openSSH Server
    service sshd stop systemctl stop sshd.service Stoppen openSSH Server
    service sshd restart systemctl restart sshd.service Restarten openSSH Server
    service sshd reload systemctl reload sshd.service Konfiguration openSSH Server neu laden
    chkconfig sshd on systemctl enable sshd.service openSSH im Runlevel/Target aktivieren
    chkconfig sshd off systemctl disable sshd.service openSSH im Runlevel/Target deaktivieren
    chkconfig --list systemctl list-unit-files
    systemctl list-dependencies multi-user-target
    Übersicht Dienste in Runleveln/im Target
    init 3   (oder)
    telinit 3
    systemctl isolate runlevel3.target
    systemctl isolate multi-user.target
    in Runlevel 3 wechseln bzw.
    in multi-user.target
    init 5   (oder)
    telinit 5
    systemctl isolate runlevel5.target
    systemctl isolate graphical.target
    in Runlevel 5 wechseln bzw.
    in graphical.target
    ... systemctl isolate default.target in Standard-Runlevel wechseln bzw.
    in default.target
    init 0   (oder)
    telinit 0
    shutdown -h
    poweroff
    systemctl isolate runlevel0.target
    systemctl isolate poweroff.target
    shutdown -h
    poweroff
    Rechner ausschalten
    init 6   (oder)
    telinit 6
    shutdown -r
    reboot
    systemctl isolate runlevel6.target
    systemctl isolate reboot.target
    shutdown -r
    reboot
    Rechner rebooten
    Tabelle zu SysVinit vs. systemd (siehe auch Link Fedoraprojekt (Link)
  • Techniken Kernel -> X-Server -> WM/Desktop
    "Kernel" - technisch ist Linux erst einmal nur der Kernel (Wiki-Link) und damit kann man dann direkt auch eine Shell (z.B. die Bash) nutzen (siehe Runlevel 3 ohne Grafikdesktop / in Sprache Targets: multi-user.target)
    "X-Server" - Zusätzlich kann man eine Grafikausgabe mit Hilfe des (klassischen) X-Servers (Wiki-Link) nutzen (X Windows System, X Server 11 - kurz X11, neu: x.org Server) mit deren Hilfe einfache Grafikfensteranwendungen (siehe xterm , xeyes ;-) genutzt werden können.
    "Window Manager bzw. Desktop" - Oder man baut noch gleich einen kompletten Desktop inklusive Management und Zusatztools (siehe konsole , kwrite , KDE-Office) oben drauf!
  • Verzeichnisstruktur (eine kurze Übersicht - siehe auch ausführlicher Beitrag zu FHS auf Wikipedia)
    /bin - Binaries, ausführbare Programme
    /boot - Kernel vmlinuz (komprimiert, mehrere Versionen mit Nummern), initrd (Ramdisk)
    /boot/grub2 - Bootmanger (hier nicht konfigurieren - siehe /etc/default/grub)
    /dev - Geräte (/dev/fd0, /dev/sr0, /dev/sda, /dev/sdb, /dev/null, /dev/urandom, ...)
    /etc - Konfigurationen (/etc/fstab, /etc/hosts, /etc/hostname, viele Konfigurations-Unterordner: /etc/skel, ...)
    /etc/X11 - der Ordner für den X-Server (Grundtechnik Grafikausgabe)
    /home - Benutzerprofile (/home/username)
    /lib - Programmbibliotheken (Libraries; siehe auch /lib64)
    /lost+found - bei journaling File Systems Daten für Fehlersuchen/Behebungen (siehe auch Toolreihe fsck)
    /media - klassischer Mountpoint für Wechselmedien (bei openSUSE nicht mehr vorhanden)
    /run/media/username - neuer Mountpoint für Wechselmedien bei openSUSE und Co
    /mnt - Mountpoint (der alte Standardmount für manuelle Mounts)
    /opt - optionale Software (hier am Beispiel XAMPP Lamp Server - Link); auch: kommerzielle Software
    /proc - Prozesseverwaltung (siehe Ordner mit PID-Nummern)
    Übung: cat /proc/meminfo ; cat /proc/interrupts ; cat /proc/cpuinfo
    /root - Homedir für SuperUser root
    /sbin - Programme mit hohen Privilegien (SuperUser)
    /srv - Serverdienste (Verzeichnisse z.B. für Webserver - diese findet man gerne auch unter /var/www ;-)
    /tmp - Temporärer Ordner; gemeinschaftlich im System (später: besondere Zugriffsrechte)
    /usr - Großteil der installierten Software im System (Unix System Resources)
    /var - Variable Daten
    Unterscheidung/Gruppierung von Daten auf Unix/Linux Systemen gemäß File Hierarchy Standard (FHS):
    veränderliche/dynamische vs. statische
    und
    gemeinsam genutzte vs. nicht gemeinsam genutzte Verzeichnisse

 

  • Partitionen - cfdiskPartitionen - cfdisk
  • /boot/boot
  • kernel.orgkernel.org
  • TargetsTargets
  • /proc/meminfo/proc/meminfo
  • File Hierarchy System (FHS)File Hierarchy System (FHS)

Mi., 31.08.16

Mittwoch, 31.08.16, 08.30 - 16.00 Uhr

  • Rekapitulation, TN-Fragen
    Kurzüberblick Paketmanagement
    (s.a. Mo)
    DistroAbleger der DistroPaketmanagement
    Red Hat
    (Link)
    Fedora, besser: CentOS
    Kaufversion: RHEL
    RPM (Red Hat Package Management)
    Standardtool: rpm (ohne Auflösung Abhängigkeiten),
    yum
    Novell (Suse)
    (Link)
    openSUSE (Link)
    Kaufversion: SLES
    RPM
    mit YaST2-SW-Verwaltung, zypper, yum
    Debian
    (Link)
    Ubuntu(s),
    Linux Mint
    DEB (Debian Pakete)
    Standardtool: dpkg (ohne Auflösung Abhängigkeiten)
    APT-Tools: apt-get, apt-cache, ... , aptitude
    synaptic (grafische Oberfläche - Gnome)
    Arch Linux Arch Linux pkg.tar.xz bzw. pkg.tar.gz
    Tool: Pacman
    Slackware Slackware früher: tar.gz
    heute: TXZ (tar.xz)
    OpenWrt
    z.B. Router
    Linux auf Routern ipkg
    für die Einstimmung auf SW-Verwaltung (Installation/Deinstallation) mit YaST-Tools
    Tool für das Wandeln von DEB in RPM (und umgekehrt): alien  (kann man probieren!)
  • YaST - Yet Another Setup Tool - Systemeinstellungen und YaST (bzw. YaST2)
    Systemeinstellung ( systemsettings )
    sind für den Benutzer, der User root hat wieder Einzelklick-Modus!
    Beispielhafte Einstellungen:
    Anzeige und Monitor - Bildschirmauflösungen
    Eingabegeräte - Maus (siehe Doppelklick)
    Energieverwaltung - Bildschirmschoner und Co konfigurieren
    Mittels der Rubrik "Systemverwaltung" kommt man dann auch zu weitergehenden Einstellungen und YaST
    Rundgang durch YaST:
    Techniken in den Kategorien angesprochen und Fachbegriffe erläutert
    Software - hier dann die Verwaltung der Softwarepakete (Aktualisierungen, Installationen / Deinstallationen)
    Übung: Repositories - Deaktivieren der Install-DVD (Übersicht in Shell mit zypper lr ),
    Suche nach Paket openssh (war installiert),
    Installation von "Midnight Commander" (Paketname mc) mit Abhängigkeit mc-lang (Installation durchgeführt)
    Hardware - Hardware-Informationen, Drucker (wird extra thematisiert)
    System - Bootloader (GRUB2 konfigurieren), Datum und Zeit, Partitionierer (Datenträger verwalten), Dienste-Verwaltung (systemd - Runlevel verwalten)
    Netzwerkgeräte - Netzwerkeinstellungen (Konfiguration von Netzwerkadaptern
    Vorschlag für Übung: Hostname konfigurieren und Übernahme Hostname per DHCP deaktivieren)
    Netzwerkdienste - Rechnernamen (bearbeitet /etc/hosts)
    Sicherheit und Benutzer - Firewall (hier muss später sshd freigegeben werden!), Benutzer- und Gruppenverwaltung
    Virtualisierung, Unterstützung, Verschiedenes
    Anm.: es gibt natürlich auch eine textbasierte Oberfläche in der Konsole oder auch als Terminal-Aufruf mit Parametern
    Erkenntnis: letztendlich bietet YaST nur Grafische Oberflächen für die tatsächlichen Einstellungen im System (den Konfigurationsdateien)
    Beispiel: YaST-Werkzeug "Rechnernamen" ist einfach nur ein Dialog für die Bearbeitung von /etc/hosts  Datei!
  • Midnight Commander
    aufrufen in Shell/Konsole mit mc 
    F10 zum Beenden; Strg + O zum ein-/ausblenden des Commander-Fensters
    Tipp bei Gnome: für das gnome-terminal (bei KDE die konsole) in den Eigenschaften die F10 deaktivieren!
  • Übung: Dienste verwalten
    den openSSH Server mittels Aufrufen starten / stoppen / im Runlevel/Target aktivieren
    alternative, beispielhafte Aufrufe für "Läuft der openSSH Server sshd?"
    service sshd status   (klassischer init-Aufruf mit Tool service)
    systemctl status sshd.service   (aktuelles systemd-Tool - damit dann auch start und enable)
    ps ax | grep sshd   (den sshd als Prozess in der Gesamtliste aller Prozess "grep-en/suchen")
    weitere Dienste/Runlevel/Target Techniken finden sich Dienstag/Gestern (siehe Tabelle)
    und natürlich kann auch über YaST - System - Dienste-Verwaltung sich den sshd ansehen (Details anzeigen)
  • Benutzer- und Gruppenverwaltung (Teil I)
    mittels YaST2 - Benutzer-/Gruppenverwaltung aktuelle Benutzer und Gruppe analysiert; Systembenutzer/Gruppen müssen erst extra ausgwählt (gefiltert) werden; Anzeige zu Benutzern mittels Befehlen whoami, who, id, groups
    Dateien der Benutzer/Gruppen: /etc/passwd, /etc/shadow, /etc/group
    Inhalte und Aufbau der Dateien erläutert und recherchiert; Rechte analysiert und Benutzer- und Gruppen-IDs kennen gelernt; weitere Benutzereigenschaften: Home-Dir-Pfad, Shell (Standard /bin/bash; speziell: siehe wwwrun: /bin/false), Sekundäre Gruppen
    Abschlussübung: neue Benutzer mit YaST-Modul angelegt und angemeldet und getestet
    Tests mit gegenseitigen Zugriffen der Benutzer - hier ist "Lesen/Stöbern" in anderen Home-Dirs möglich
    Wir werden erst mehr über die speziellen Berechtigungen lernen (siehe cat /etc/shadow  mit normalem Benutzer: keine Anzeige mit Hinweis "Keine Berechtigung")
  • Benutzer-"Wechsel" (eine Zusammenfassung)
    Switch User (su, su - mit Wechsel in das Home-Dir)
    kdesu - der su für den KDE-Desktop (siehe Aufruf YaST oder manuell kwrite für Übung oben)
    sudo (quasi ein "Ausführen als") - muss extra konfiguriert werden (siehe Gruppe sudoers und Konfigurationen in /etc/sudo)
  • Netzwerk mit openSUSE 42.1
    1) ifup - die klassische Technik der Einbindung von NICs und Netzwerkumgebungen
    Tools: ifup , ifdown , ifconfig
    2) NetworkManager - eine Red Hat Technik mit Applet (Miniprogramm für Windows Manager KDE kde5-nm-connection-editor , Gnome und Co)
    Wichtig: entweder / oder nutzen - Konfiguration mittels YaST - Netzwerkeinstellungen - Global Options
    3) NEU seit openSUSE 13.2: Wicked Service als Standardinstallation auf Desktop-Systemen
    Anm.: bei Notebooks weiterhin NetworkManager als Standard
    Befehle: ping -c 10 www.bahn.de, traceroute www.vhs-braunschweig.de  
    Analysewerkzeuge:
    dig , host , nslookup , arp , ifconfig (auch Konfigurationen), iwconfig (für WLAN)
    Konfiguration DNS-Namenserver: /etc/resolv.conf (natürlich auch alles per YaST einstellbar)
    manuelle Namensauflösung für Seminarnetz mit /etc/hosts (Rechnernamen linux01, ..., linux17)
    Zusammenfassung Netzwerkanalyse mit Linux
    IP-KonfigurationShellaufrufe
    IPv4-/IPv6-Adresse
    Subnetmask
    ip address show   (zeigt immer alle NICs)
    ip a s   (kurze Variante)
    /sbin/ifconfig
    Standardgateway
    (bzw. Router)
    /sbin/route -n  
    hier: in Spalte Flags das G suchen - dann Spalte Router
    ip route show
    ip r s   (kurze Variante
    DNS-Server cat /etc/resolv.conf
    hier: Zeile mit nameserver analysieren
    aber: Datei wird von den Netzwerkkonfigurations-Diensten
    Wicked (bzw. NetworkManager) manipuliert
    keine manuelle Änderung gewünscht!
    Natürlich gibt es auch diverse Tools/Skripte, die diese Aufgaben/Aufrufe zusammenlegen, aber wir wollen auch immer die Basics bemühen und "Linux" verstehen

 

  • Yet Another Setup ToolYet Another Setup Tool
  • RepositoriesRepositories
  • Paket suchen mit YaSTPaket suchen mit YaST
  • AbhängigkeitenAbhängigkeiten
  • Neuer BenutzerNeuer Benutzer
  • Netze testen mit pingNetze testen mit ping

Do., 01.09.16

Donnerstag, 01.09.16, 08.30 - 16.00 Uhr

  • Rekapitulation, TN-Fragen
  • Dateiberechtigungen
    in detaillierter Liste (ls -l  )die Berechtigungen r (read), w (write), x (eXecute)  für
    u - Benutzer/Besitzer (u - user),
    g - Gruppe (g - group) und
    o - "alle Anderen" (o - others) hergeleitet,
    Standard-Berechtigungen in der (oktalen) Form 755 oder 644 erläutert (technisch 3 mal 3 Bit = 9 Bit)
    Hinweis auf umask (hier openSUSE: 0 022) mit Ordnern (777 - 022 = 755) und Dateien (666 - 022 = 644)
    Befehl chown (bzw. chgrp) zum Ändern von Besitzer und/oder Gruppe
    chown -R wwwrun:www:run /var/www/html   (Ordner html für Apache2 User:Gruppe konfigurieren)
    Anm.: chown kann auch einfach Gruppe setzen mit chown :groupname 
    Befehl chmod eingeführt und nachrecherchiert (für Gruppen chgrp);
    Beispiele:
    chmod -R 750 testordner  (Ordner testordner rekursiv auf 750)
    chmod u+x skript.sh  (Datei skript.sh für Benutzer/Besitzer ausführbar machen)
    Alt.: Berechtigungen mittels Eigenschaften Dialogfenster mit Dateimanager Dolphin angesehen (Rechte Maus - Eigenschaften)
    Übung mit "chmod" bzw. Dateiberechtigungen über Dolphin (Dateimanager) und Eigenschaften:
    Ordner /home/donnerstag  mit Berechtigungen 750 und 700 ausstatten, und Tests mit ls mit anderen Usern (joeb, mittwoch)
    Für chmod (Change Modus) an Unterordnern muss -R (Achtung: hier großes R für --recursive) gesetzt werden.
    Beim Dolphin muss ein Haken für das Anwenden auf die Unterordner aktiviert werden.
    Sonder-Berechtigen: (zus. 3 Bit Berechtigungen => siehe chmod 4740 SetUID oder chmod 1777 Sticky-Bit)
    SetUserId-Bit: - rwsr----- root shadow /usr/bin/passwd  (siehe Besitzer: root)
    Sinn: auch normale User müssen Passworte für sich wechseln können - dazu braucht man aber Schreibzugriffe root auf Passwort-Datei /etc/shadow !
    SetGroupId-Bit: dasselbe Verhalten bei Ausführung von Programmen mit Gruppen-Rechte-Übernahme
    Sticky-Bit: d rwxrwxrwt  /tmp  
    der Temp-Ordner für Alle - im wahrsten Sinne, aber durch Sticky-Bit werden Dateien/Ordner-Berechtigungen und Besitz/Gruppe mit in den Ordner /tmp transportiert und sind so gegen die anderen Nutzer von /tmp schützbar
  • Benutzer- und Gruppenverwaltung (Teil II)
    Tools für Benutzer- und Gruppenerstellungen / Anpassungen:
    useradd , usermod , userdel , groupadd , groupmod , groupdel 
    Empfehlung: vorher useradd -D  - zeigt die Defaults/Vorgaben für User) mit Home-Dir und Passwort.
    Profitipp: die Konfiguration für Standarduserumgebung kann mit /etc/default/useradd  vom root angepasst werden!
    beispielhafter 2-Zeiler für Standarduser
    # useradd -m -c "Teilnehmer 01" tn01   (Schalter -m wichtig für Home-Dir-Erstellung)
    # passwd tn01  (Passwort setzen)
  • Übung in Konsole (Home-Dir)
    Tools: touch , mkdir , ls , cd , pwd , su , kdesu  
    immer Erinnerung an man-Pages und Hilfen im System
  • Übung zu SSH:
    1) ssh installiert? 2) Prozesse analysieren 3) Dienste-Verwaltung 4) Firewall

    eine beispielhafte Vorgehensweise mit Techniken aus der bisherigen Woche:
    1) Recherche zu ssh (Paket openssh) - ist "ssh" installiert?
    rpm -qa | grep ssh   (Vorgriff auf morgige Darstellungen zu Paketmanagement und Softwareverwaltung)
    zypper search ssh  (zypper nur bei Suse!)
    YaST Softwareverwaltung
    Anm. zu openSUSE: Paket heißt auch openssh und beinhaltet sowohl ssh-Client also auch ssh-Server Software
    2) Läuft der ssh-Dienst (sshd)?
    ps ax | grep sshd  (zeigt uns: Nein - da läuft kein sshd!)
    systemctl status sshd.service   (siehe auch Übungen der BU-Woche)
    3) Dienst sshd für unseren Standard-Runlevel 5 (genauer graphical.target für systemd) konfigurieren:
    YaST2 - System - Dienste-Verwaltung - sshd (enable und starten) - Einstellungen sichern, oder
    systemctl enable sshd.service   (wieder: siehe auch Übungen der BU-Woche)
    Neuer Test, ob sshd läuft? Ja!
    4) Für Netzwerkzugriff
    von ssh-Client (z.B. linux17 - 192.168.11.117)
    auf ssh-Server (z.B. linux11 - 192.168.11.111)
    jetzt noch die Firewall auf Serverseite mittels YaST - Sicherheit und Benutzer - Firewall - Allowed Services (Erlaubte Dienste) konfigurieren und
    den Dienst "Secure Shell Server" hinzufügen und Firewall-Konfiguration sichern
    Auf den ssh-Server dann mittels ssh Aufrufen verbinden;:
    ssh username@ip-adressse   (für namentliche Adressen linux11 benötigt man DNS oder /etc/hosts Einträge)
    ssh -X ...   (erstellt ssh-Verbindung mit Fernaufruf für X-Fenster-Programme)
    Anm.: bei Erstverbindung Signatur/md5-Fingerabdruck bestätigen
    ssh mit Windows:
    wir brauchen also einen ssh-Client und am Besten gleich noch einen X-Server (für "Linux-X-Fenster")
    putty (Link) - der Klassiker (die ssh-Tools als Sammlung oder einzeln; ohne X-Server (siehe cygwin)
    MobaXterm (Link) - die geniale "all-in-one" Lösung als kostenlose Installation, Zip oder kostenpflichtige Enterprise-Version
  • Drucken
    verschiedene Nutzungen und Installationen unter Linux
    1) lpd - Line Printer Daemon, der klassische Dienst zum Verwalten von Druckern, Druckjobs, Printqueues
    Kommandozeilentools: lp (siehe wieder lp <tab tab> zeigt: lpq , lpr , lpc , lpstat , lpinfo)
    2) YaST2 Modul Drucker 
    zum Installieren oder Verwalten von Suse-Systemen
    3) Desktopmanager Druckerkonfiguration (KDE, Gnome)
    Tipp: sind möglichst zu vermeiden, weil diese Tools manchmal individuelle Konfigurationen verwenden und statt dessen:
    4) CUPS - Common Unix Printing Service (Apple)
    der aktuelle Standard und Distro-unabhängig und per Weboberfläche verwaltbar:
    Webadresse (Browser) localhost:631  (also Port 631)
    für Seminar:
    Beispielinstallation eines "HP Color 500 Laserjet (m551)" mit Hilfe der HP Linux Imaging and Printing Toolserie auf hplip.net Website bzw. des entsprechenden Pakets
    hplip (Übung: zypper search hplip , zypper info hplip , zypper install hplip );
    damit werden alle nötigen Dateien (Druckertreiber ppd) und Konfigurationen für HP Geräte (Drucker, Scanner, Multifunktionsgeräte) erstellt
    Empfohlene Verwaltung dann mit CUPS

 

  • /etc/hosts/etc/hosts
  • Basisordner / (root)Basisordner / (root)
  • chmod 700chmod 700
  • Spez. BerechtigungenSpez. Berechtigungen
  • zypper installiert hplipzypper installiert hplip
  • CUPSCUPS

Fr., 02.09.16

Freitag, 02.09.16, 08.30 - 16.00 Uhr

  • Rekapitulation, TN-Fragen, To-Do für Seminarwoche:
    ... Shell-Übungen Dateien/Ordner (touch, mkdir, ln vs. ln -s, tar) - ... Befehlsübersicht auf diesem Portal ... 
    Bibliothek: Übersicht auf diesem Portal ...
  • Paketmanagement - Software verwalten / aktualisieren
    openSUSE verwendet RPM (Red Hat Packages) mit diversen Tools, am einfachsten natürlich YaST2 mit dem Softwareverwalten betreuen, hier werden auch gleich alle Paketabhängigkeiten analysiert und aufgelöst,
    Standard-Konsolentool rpm   ; besser: yum  (nicht bei openSUSE installiert)
    openSUSE: bessereres Tool zypper (dann klappt es auch in der Konsole mit der automatischen Auflösung von Paket-Abhängigkeiten);
    Anleitung zur Benutzung von zypper auf einem openSUSE-Info-Portal (Link)
    bei Debian/Ubuntu Paketmanagement (DEB, Standard-Konsolentool dpkg ) heißt die entsprechende Toolreihe apt (bzw. apt-get, aptitude, synaptic  )
    Vergleichsseite von RPM vs. DEB Techniken und Aufrufen (Link)
    Beitrag: Übersicht "Paketmanagement RPM vs. DEB 
  • RPM - Red Hat Package Mangement (in openSUSE Distribution)
    Haupttool: rpm für die Konsole; Beispiele:
    rpm -i <paket>  (installiert Paket)
    rpm -e <paket>  (löscht Paket)
    rpm -U <paket>  (aktualisiert Paket)
    rpm -q <paket>  (Abfrage an Paket)
    Wichtig: rpm kann die Abhängigkeiten der Pakete nur erkannen - aber nicht automatisch auflösen, daher sehr "unhandlich"
    Tipps zu rpm: (Infos und Analysen zu Paketen und Installationen mittels rpm -q  ; q für Query/Abfrage)
    rpm -qa | grep firefox  (findet die installierten MozillaFirefox Pakete)
    rpm -qa | grep ^mc  (findet Pakete die mit mc beginnen)
    besseres Konsolenwerkzeug openSUSE: zypper  (hier klappen die automatischen Auflösungen der Paketabhängikeiten)
    zypper refresh  (aktualisiert manuell die Quellen)
    zypper update  (aktualisiert die Pakete/Installationen)
    zypper install <paket>  (installiert ein Paket)
    Quellen für Pakete: Repositories (CD, DVD, FTP, HTTP, Lokal)
    Übersicht über Repositories über YaST-Softwareverwaltung
    zypper lr  bzw. zypper repos
    Hinweis auf Paketgruppen, Suchen/finden/installieren/deinstallieren von Paketen, Schemata
    Community Repos erweitern die Quellen für Pakete:
    Beispiel: Build Service (software.opensuse.org) ermöglicht Zugriff auf aktuelleres "VLC" in Version 3.3.0. statt sonst nur in 2.4er Version ;
    neue Repos mit eigener Signatur (Key)
    Beeitstellung von Installationsmedien und Software für openSUSE über Webportal erlaubt Recherche und Quellsuche für Pakete
    Weitere Spezialität openSUSE: automatische Installation mit Hilfe von YaST Meta Packages (*.ymp) in Form von 1-Click-Installs bei openSUSE
    Alternative Softwareinstallationen:
    Software mit eigenem Setup/Installer oder
    Source-Tarballs: Quellcodearchiv (Sources); nach Auspacken müssen die Quelldateien (Sources) dann mit dem passenden Compiler (GCC - GNU C Compiler) übersetzt werden
  • Prozesse
    Starten von Programmen in der Konsole im Hintegrund (Background - bg):
    kwrite mittwoch.txt & 
    Konsole meldet Prozess-ID; Recherche im Verzeichnisbaum: /proc/... (Ordner mit PIDs)
    ps in Kombination mit grep zum Suchen bestimmter laufender Prozesse (z.B. sshd)
    Befehle: fg , bg , jobs , ps 
    ps ax | grep firefox (bitte wieder an ps --help und man ps denken)
    hier: grep für "Filtern" von Daten (Wikipedia Link - global regular expressions print)
    Prozesse in Ordnerstruktur /proc; Tools: ps, pstree, pstree -p, top,
    kill
    (Signale beachten; "Overkill SIGKILL" mit -9, Standardsignal SIGTERM ist -15)
    Prozesseigenschaften: PID, Status (running, sleeping, zombie)
    Tipp: Grafische Übersicht mit Strg + Esc (oder Aufruf/Suche mit System...)
  • VI (bzw. VIM - der VI improved) - im Seminar nur kurz geübt)
    unterschiedliche Modi: Einfügenmodus (z.B. mit Taste i), Kommandomodus (ESC)
    Kommando: :w (schreiben),
    ZZ (Schreiben und beenden; :
    q (Quit - mit :q! Beenden erzwingen)
    Tipp: vi test.txt (gleich Datei laden/erstellen); vi -R test.txt (nur Lesen-Modus)
    Anmerkung: auch als Fensterprogramm verfügbar gvim (also eigentlich aus der Gnome-Ecke)
  • Mounten - Inbetriebnahme von Datenträgern
    das Einbinden von Datenspeichern/Datenträgern und anderen Komponenten (siehe virtuelle Systeme) in das System
    Befehle: (Geräte wurden automatisch erkennt und per Klick gemountet)
    mount  (der eigentliche Hauptbefehl zum Einbinden von Laufwerken/Mounten)
    umount (Mounten beenden)
    Hinweis: heutzutage bei allen Wechselmedien (optische, USB) automatisches Mounten durch User (technisch: im Userspace)
    Aktuellen Mount-Status anzeigen:
    mount  ohne Parameter (oder natürlich alternativ:
    cat /etc/mtab 
    Anweisungen für das System zum Mounten beim Systemstart:
    cat /etc/fstab  
    Darstellung der Techniken und Vorgehensweisen mit einem USB-Stick (16 GB): fdisk , mkfs.ext3 , mount 
    Alle Analysen wieder mit Hilfe von
    lsblk , blkid , fdisk -l , cfdisk  
  • Bereitstellung Seminarscreenshots per Samba-Server:
    Pfad in Dolphin: smb://192.168.3.1/Public   (Protokoll: smb/cifs)
    Servertechnik: Samba-Server
  • Musteraufgabe (aktualisierte Version) verteilt
    und Prüfungsvorbereitung durchgeführt - bzw. letzte Fragen
  • TN-Bescheinigungen, Feedback-Bögen, letzte TN-Fragen

 

  • software.opensuse.orgsoftware.opensuse.org
  • zypper updatezypper update
  • Jobs und ProzesseJobs und Prozesse
  • Prozesse mit topProzesse mit top
  • SystemaktivitätSystemaktivität
  • Geräte und MountsGeräte und Mounts

 

... Download zur Musteraufgabe bereitstellen ...

 

Auch von dieser Stelle nochmals Danke für die anregende und erfolgreiche Seminarwoche und Ihre äußerst positiven Feedbacks.
Wir sehen uns bei der abschließenden Prüfung am 14.09.16.
Ihr Trainer Joe Brandes

 

  Privates

... zu Joe Brandes

Sie finden auf dieser Seite - als auch auf meiner privaten Visitenkarte joe-brandes.de einige Hintergrundinformationen zu mir und meinem Background.
Natürlich stellt die IT einen Schwerpunkt in meinem Leben dar - aber eben nicht nur ...

joe brandes 600px

Private Visitenkarte / Technik: HTML & CSS /
  joe-brandes.de

  Jobs

... IT-Trainer & Dozent

Ich erarbeite und konzipiere seit über 20 Jahren IT-Seminare und -Konzepte. Hierfür stehen der "PC-Systembetreuer / FITSN" und der "CMS Online Designer / CMSOD". Ich stehe Ihnen gerne als Ansprechpartner für Ihre Fragen rund um diese und andere IT-Themen zur Verfügung!

becss 600px

BECSS Visitenkarte / Technik: HTML & CSS /
  becss.de

  Hobby

... Snooker & more

Wer einmal zum Snookerqueue gegriffen hat, der wird es wohl nicht wieder weglegen. Und ich spiele auch immer wieder gerne eine Partie Billard mit den Kumpels und Vereinskameraden. Der Verein freut sich über jeden, der einmal in unserem schicken Vereinsheim vorbeischauen möchte.

bsb 2011 600px

Billard Sport BS / Joomla 3.x /
  billard-bs.de

PC Systembetreuer ist J. Brandes - IT seit über 35 Jahren - Technik: Joomla 3.4+, Bootstrap 3.3.4 und "Knowledge"

© 2018 - Websitedesign und Layout seit 07/2015 - Impressum
Nach oben