Open Source DMS / ECM agorum core das freie Dokumentenmanagement System und Enterprise Content Management System mit Workflow und Archivieren-Funktion.
Vortrag auf dem TYPO3 Meetup 3 am 13.11.2017 bei sitegeist
über Docker Umgebungen für TYPO3 zu Präsentationszwecken und als Entwicklungsumgebung mit xdebug.
Open Source DMS / ECM agorum core das freie Dokumentenmanagement System und Enterprise Content Management System mit Workflow und Archivieren-Funktion.
Vortrag auf dem TYPO3 Meetup 3 am 13.11.2017 bei sitegeist
über Docker Umgebungen für TYPO3 zu Präsentationszwecken und als Entwicklungsumgebung mit xdebug.
SNMP Applied - Sicheres Monitoring mit SNMPGerrit Beine
Der Vortrag gibt Unix-Nutzern einen Einblick, wie man Net-SNMP zum Monitoring und Steuern beliebiger Anwendungen nutzen kann.
Der Schwerpunkt liegt dabei auf dem Thema der Absicherung des SNMP-Dienstes mit Hilfe von SSL/TLS und Authentifizierung.
Als Beispiele dienen hierzu SNMP4J und Net-SNMP.
OSDC 2011 | FAI - Fully Automatic Installation by Thomas LangeNETWAYS
FAI (Fully Automatic Installation) ist eine Software zur automatischen Installation von Rechnern ohne jeglichen Benutzereingriff. Dadurch lassen sich bei der initialen Installation von einzelnen Rechnern, ganzen Rechnerpools oder größeren Clusterinstalltionen viel Zeit einsparen. Zusätzlich bietet diese Vorgehensweise eine höhere Qualität, da sich keine manuellen Fehler einschleichen können oder Rechner nach einem Ausfall schneller wiederhergestellt werden können.
FAI begann als automatisierter Netzwerkinstaller für Debian, der schon von Anfang an ein eigenes Klassenkonzept beinhaltete. Durch die konstanten Weiterentwicklung sind mit den Jahren viele Erweiterungen in das Projekt eingeflossen, sodass FAI mittlerweile auch das komplette Konfigurationsmanagement übernehmen kann. Ebenso ist FAI inzwischen nicht mehr auf Debian festgelegt, sondern kann auch andere Linux Ditsributionen wie SUSE, RedHat, CentOS und sogar Solaris installieren. Neben echter, physikalischer Hardware, können natürlich auch virtuelle Systeme installiert und konfiguriert werden.
Der Vortrag gibt einen kurzen Überblick zum Projekt und zeigt die neuesten Features der aktuellen FAI Version.
Tipps & Tricks für den erfolgreichen Einsatz von GPU-ComputingJörn Dinkla
Folien des Vortrags auf der parallel 2014. Neben den Grundlagen der Architektur von Grafikkarten werden die Besonderheiten bei der Parallelisierung von GPU-Kerneln erklärt. Anhand des Werkzeugs "Guided Application Analysis" des Nvidia Visual Profiler werden Tipps und Tricks für die Optimierung gegeben und der theoretische Hintergrund erläutert. Es wird gezeigt, wie mit Streaming und dem Einsatz von mehreren GPUs (Multi-GPU) Systeme besser ausgelastet werden können. Der Referent stellt hierbei Klassen und Hilfsmittel vor, die er bei der Projektarbeit im Bereich GPU Computing in den letzten fünf Jahren erlernt hat.
OSDC 2010 | FAI - ein Projekt wird 10 Jahre alt by Thomas LangeNETWAYS
Ende 1999 wurde Version 1.0 der Software FAI (Fully Automatic Installation) veröffentlicht. 10 Jahre später wird das Projekt immer noch aktiv weiterentwickelt und hat sich einen festen Platz in der Systemadministration geschaffen.
FAI begann als automatisierter Netzwerkinstaller für Debian, der schon von Anfang an ein eigenes Klassenkonzept beinhaltete. Mit den Jahren sind viele Erweiterungen eingeflossen, sodass FAI mittlerweile auch das ganze Konfigurationsmanagement übernehmen kann und nicht mehr auf eine bestimmte Linux Distribution festgelegt ist. Ebenso können neben realer Hardware auch virtuelle Rechner installiert und konfiguriert werden und unterschiedliche Installationsmedien genutzt werden.
Der Vortrag gibt einen kurzen Rückblick auf 10 Jahre Entwicklung des Projekts und zeigt die neuesten Features der aktuellen FAI Version 3.3.3.
Vortrag von der FrOSCon 2012
SNMP Grundlagen sowie Konfiguration für das Zusammenspiel von Net-SNMP, SNMPTT und Nagios zur Verarbeitung von SNMP Traps.
Entspannung. Der Begriff ist omnipräsent
in Seminaren zu Work-Life-Balance genauso
wie in den Medien. Als Haltung scheint Entspannung
unserem Alltag jedoch so fern zu
sein wie nie zuvor.
This document outlines the schedule for a European teachers' synthesis event taking place from March 20-26, 2011 at the Universitat Autonoma de Barcelona. Each day of the event focuses on a different theme related to European cultural identity and education, and includes presentations, seminars, group work, and cultural excursions. Participants will explore topics such as defining European identity, linking cultures through tangible and intangible heritage, and using cultural heritage and education for sustainability. The schedule provides timing for meals, presentations, activities, and social events each day of the event.
The document discusses oEmbed, an open standard for embedding third-party media content on websites. It describes how oEmbed works, lists major oEmbed providers and consumers, and details the oEmbed specification. The document also introduces oembed-provider-engine, a Ruby gem that allows Rails applications to serve as oEmbed providers by describing how media items can be represented in the oEmbed response format. Areas for future improvement to oembed-provider-engine are also outlined.
Behind the scenes of a grown-up web applicationKerstin Puschke
The document discusses the technology and architecture behind the professional networking website XING. It describes how XING began with Perl and MySQL but has expanded to include additional programming languages, databases, and technologies. These include Ruby on Rails, Scala, Hadoop, Elastic Search, and more. The document outlines XING's development process, tools for version control, continuous integration, and deployment. It provides statistics on the size and traffic of XING's main Perl application and its infrastructure across multiple data centers.
SNMP Applied - Sicheres Monitoring mit SNMPGerrit Beine
Der Vortrag gibt Unix-Nutzern einen Einblick, wie man Net-SNMP zum Monitoring und Steuern beliebiger Anwendungen nutzen kann.
Der Schwerpunkt liegt dabei auf dem Thema der Absicherung des SNMP-Dienstes mit Hilfe von SSL/TLS und Authentifizierung.
Als Beispiele dienen hierzu SNMP4J und Net-SNMP.
OSDC 2011 | FAI - Fully Automatic Installation by Thomas LangeNETWAYS
FAI (Fully Automatic Installation) ist eine Software zur automatischen Installation von Rechnern ohne jeglichen Benutzereingriff. Dadurch lassen sich bei der initialen Installation von einzelnen Rechnern, ganzen Rechnerpools oder größeren Clusterinstalltionen viel Zeit einsparen. Zusätzlich bietet diese Vorgehensweise eine höhere Qualität, da sich keine manuellen Fehler einschleichen können oder Rechner nach einem Ausfall schneller wiederhergestellt werden können.
FAI begann als automatisierter Netzwerkinstaller für Debian, der schon von Anfang an ein eigenes Klassenkonzept beinhaltete. Durch die konstanten Weiterentwicklung sind mit den Jahren viele Erweiterungen in das Projekt eingeflossen, sodass FAI mittlerweile auch das komplette Konfigurationsmanagement übernehmen kann. Ebenso ist FAI inzwischen nicht mehr auf Debian festgelegt, sondern kann auch andere Linux Ditsributionen wie SUSE, RedHat, CentOS und sogar Solaris installieren. Neben echter, physikalischer Hardware, können natürlich auch virtuelle Systeme installiert und konfiguriert werden.
Der Vortrag gibt einen kurzen Überblick zum Projekt und zeigt die neuesten Features der aktuellen FAI Version.
Tipps & Tricks für den erfolgreichen Einsatz von GPU-ComputingJörn Dinkla
Folien des Vortrags auf der parallel 2014. Neben den Grundlagen der Architektur von Grafikkarten werden die Besonderheiten bei der Parallelisierung von GPU-Kerneln erklärt. Anhand des Werkzeugs "Guided Application Analysis" des Nvidia Visual Profiler werden Tipps und Tricks für die Optimierung gegeben und der theoretische Hintergrund erläutert. Es wird gezeigt, wie mit Streaming und dem Einsatz von mehreren GPUs (Multi-GPU) Systeme besser ausgelastet werden können. Der Referent stellt hierbei Klassen und Hilfsmittel vor, die er bei der Projektarbeit im Bereich GPU Computing in den letzten fünf Jahren erlernt hat.
OSDC 2010 | FAI - ein Projekt wird 10 Jahre alt by Thomas LangeNETWAYS
Ende 1999 wurde Version 1.0 der Software FAI (Fully Automatic Installation) veröffentlicht. 10 Jahre später wird das Projekt immer noch aktiv weiterentwickelt und hat sich einen festen Platz in der Systemadministration geschaffen.
FAI begann als automatisierter Netzwerkinstaller für Debian, der schon von Anfang an ein eigenes Klassenkonzept beinhaltete. Mit den Jahren sind viele Erweiterungen eingeflossen, sodass FAI mittlerweile auch das ganze Konfigurationsmanagement übernehmen kann und nicht mehr auf eine bestimmte Linux Distribution festgelegt ist. Ebenso können neben realer Hardware auch virtuelle Rechner installiert und konfiguriert werden und unterschiedliche Installationsmedien genutzt werden.
Der Vortrag gibt einen kurzen Rückblick auf 10 Jahre Entwicklung des Projekts und zeigt die neuesten Features der aktuellen FAI Version 3.3.3.
Vortrag von der FrOSCon 2012
SNMP Grundlagen sowie Konfiguration für das Zusammenspiel von Net-SNMP, SNMPTT und Nagios zur Verarbeitung von SNMP Traps.
Entspannung. Der Begriff ist omnipräsent
in Seminaren zu Work-Life-Balance genauso
wie in den Medien. Als Haltung scheint Entspannung
unserem Alltag jedoch so fern zu
sein wie nie zuvor.
This document outlines the schedule for a European teachers' synthesis event taking place from March 20-26, 2011 at the Universitat Autonoma de Barcelona. Each day of the event focuses on a different theme related to European cultural identity and education, and includes presentations, seminars, group work, and cultural excursions. Participants will explore topics such as defining European identity, linking cultures through tangible and intangible heritage, and using cultural heritage and education for sustainability. The schedule provides timing for meals, presentations, activities, and social events each day of the event.
The document discusses oEmbed, an open standard for embedding third-party media content on websites. It describes how oEmbed works, lists major oEmbed providers and consumers, and details the oEmbed specification. The document also introduces oembed-provider-engine, a Ruby gem that allows Rails applications to serve as oEmbed providers by describing how media items can be represented in the oEmbed response format. Areas for future improvement to oembed-provider-engine are also outlined.
Behind the scenes of a grown-up web applicationKerstin Puschke
The document discusses the technology and architecture behind the professional networking website XING. It describes how XING began with Perl and MySQL but has expanded to include additional programming languages, databases, and technologies. These include Ruby on Rails, Scala, Hadoop, Elastic Search, and more. The document outlines XING's development process, tools for version control, continuous integration, and deployment. It provides statistics on the size and traffic of XING's main Perl application and its infrastructure across multiple data centers.
This document discusses Linux monitoring tools. It defines monitoring as observing an application to understand what it is doing, debug issues, and enhance performance. Linux has many built-in monitoring tools ranging from basic GUI tools to powerful command line tools. Top tools discussed include GNOME System Monitor, KSysGuard, XFCE Task Manager, and the console-based tool top, which shows CPU usage. Top has many advanced options like killing processes, customizing fields, and viewing by threads. Scripting and automating tools is recommended for effective monitoring.
Nmon Analysis - Performance monitoring tool for LINUX and AIXGanesh Mandala
Nmon is a system monitoring tool for AIX and Linux that dynamically displays performance metrics like CPU usage, memory usage, disk usage, and top processes on one screen. It can also save this data to a text file for later analysis and graphing. Nmon is run with commands specifying the sample interval, number of samples, and whether to include top processes and save to a file. The output is in a spreadsheet-friendly CSV format.
Extreme Linux Performance Monitoring and TuningMilind Koyande
This document provides an introduction to monitoring Linux system performance. It discusses determining the type of application running and establishing a baseline of typical system usage. Key CPU concepts are then outlined such as hardware interrupts, soft interrupts, real-time threads and kernel/user threads. Context switches between threads and the thread scheduling queue are also introduced. The goal is to understand typical system behavior and identify any bottlenecks.
This document provides information on the AddUsers.exe and ARP.exe Windows commands and the ASSOC command. It describes:
- AddUsers.exe automates creating large numbers of user accounts from a comma-delimited file and has options to create, dump, or erase accounts.
- ARP.exe displays and modifies the IP to physical address translation tables used for address resolution, allowing the viewing, adding, and deleting of ARP entries.
- ASSOC associates file extensions with file types in Windows so applications know what type of file it is based on the extension. It allows displaying, adding, and changing the file type associated with an extension.
The document provides guidance on troubleshooting Linux systems. It discusses preparing for troubleshooting by backing up data and documentation. When issues arise, it recommends gathering information from logs, researching if the problem is widespread, and considering likely causes such as user error, software/hardware issues, or network problems. It then offers solutions such as software and hardware remedies, and provides tips for troubleshooting specific components like applications, networks, disks, and packages.
Betriebsysteme: zwei wichtige Konzepte aus der PraxisBrigitte Jellinek
Über Betriebssysteme kann man viel theoretisches lernen. Aber beginnen wir doch mit der Praxis und erarbeiten wir zwei wichtige Begriffe:
Prozess = ein Programm in Ausführung
Dateisystem
OSMC 2008 | Nagios Hochverfügbar mit hearbeat V2 by Jan Dennis BungartNETWAYS
Das Linux HA Projekt entwickelt mit Heartbeat2 einen Active-Active Hochverfügbarkeits-Cluster zur Überwachung von Diensten. Durch die modulare Unterstützung verschiedener Resourcen-Agenten können beliebige Programme im Falle von Systemausfall oder Fehlfunktion auf dem gleichen oder einem anderen Knoten automatisiert erneut gestartet werden.
In diesem Vortrag wird der Aufbau und die Verwaltung von Heartbeat2 erklärt, die Einbindung von Nagios, und Optimierungen zur Skalierung dieses Gespanns in grossen Umgebungen.
OSMC 2008 | Programmierung von Nagios-Plugins für NetApp Speichergeräte by In...NETWAYS
Dieser Workshop ist in erster Linie für Konferenzteilnehmer gedacht, die sich für Plugin-Programmierung interessieren.
Der Workshop zeigt auf, welche überwachenswerten Daten und Parameter es auf einem NetApp-Filer gibt und wie die Zugänge zu diesen Daten (Telnet, HTTP, SNMP, SSH, XML/Webservices, Data ONTAP APIs) sind. Ingo Lantschner wird eine theoretische Einführung und Demonstration an Hand des NetApp-Simulators präsentieren und mit den Teilnehmern ein Demo-Plugin auf Basis der o.g. Erkenntnisse entwickeln, anschließend erfolgt der Upload des Plugins auf Nagios-Exchange.
Nagios Conference 2007 | Aufbau eines hochverfügbaren Nagios Clusters by Mart...NETWAYS
Nagios auf eine HA Clusterinfrastrukur mit Clusterfilesystem- warum macht man so etwas. Vorteile und Nachteile gegenüber einer Master-/Slave- Konfiguration. Wodurch kann ein solcher Konstrukt erzwungen werden? Was ist beim Aufsetzen zu bedenken? Und was mach ich mit Cronjobs?
Provisionierung von Dockerhosts und -Containern mit Terraform, Ansible und LXD auf Blech und Cloud
Lästige und aufwändige manuelle Serverinstallation kann auf einfache Art durch automatisierte Provisionierung und Konfiguration der Infrastruktur ersetzt werden. Dieser Vortrag zeigt einen Ansatz, bei dem die Definition der Infrastruktur in voll maschinenlesbarer und ausführbarer Form in einem git repo anstatt in den Köpfen der (oder des) Engineers vorhanden sind.
Es wird gezeigt, wie das Verfahren sowohl auf Blech (d.h. auf lokalen physischen Maschinen) als auch in der Cloud angewendet werden kann, und somit eine grosse Übereinstimmung zwischen Test-/Integrations- und Produktionsinfrastruktur erreicht wird.
Die vorgestellten Werkzeuge sind terraform und ansible für Provisionierung und Konfigurationsmanagement, sowie lxd (nur lokal) und docker für System- und Applikationscontainer. Die vollständige Codebasis ist auf github verfügbar, so dass alle TeilnehmerInnen auch sofort mit eigenen Experimenten loslegen können.
Dies ist der zweite Teil der Tour de Dart. Der erste Teil hat die Sprache Dart an sich betrachtet. Dieser zweite Teil betrachtet erweiterte Aspekte wie:
Das Library System von Dart und den zugehörigen Paketmanager pub. Die asynchrone Programmierung mittels Streams, Futures und Isolates. File I/O mit Dart. Zugriff auf den DOM-Tree mittels Selektoren sowie Event Handling (Client side). Server und Client side Programmierung unter Nutzung von HttpServer, dem Dart webframework Start und Websockets. Datenkonvertierungen (HTML escaping, XSS prevention, decoding and encoding of JSON, base64 encoding and decoding, hashfunction (CryptoUtils)).
Wie oft haben Sie schon in Foren gelesen: "Das geht nicht mit Bordmitteln; das muss man mit der C API machen". Schön und gut, aber wie geht das? Welche Tools benötige ich, und wo bekomme ich diese her? Die Session gibt einen Überblick über die Anwendungsgebiete der C / C++ API für Lotus Notes / Domino und erläutert die Installation einer Entwicklungsumgebung. Neben der Erstellung von C Programmen wird auch der direkte Aufruf von Funktionen aus Lotusscript heraus erläutert.
Praktische Beispiele sollen dem Entwickler den Einstieg in die Programmierung mit der C / C++ API für Lotus Notes / Domino erleichtern. Level: Einsteiger, die sich auch in Zeiten von XPages, JAVA und SSJS noch an das "Urgestein C" herantrauen.
2. Achtung!
Die Kommandozeile ist ein mächtiges Werkzeug. Es ist sehr
leicht, damit sein System irreparabel zu beschädigen oder
einen Verlust von Daten zu erleiden; insbesondere (aber nicht
nur!) wenn man als Superuser ("Root") auf der
Kommandozeile arbeitet.
Diese Folien dienen zur reinen Information und stellen
keinerlei Aufforderung zu irgendwelchen Aktionen dar.
Der Gebrauch der hier angebotenen Informationen, Beispiele
und Konzepte geschieht ausschließlich auf eigene Gefahr.
3. 1. Historisches Geschichte der Terminals
● Ganz am Anfang: Telegraphie als das "Viktorianische Internet"
● Morsecode als erstes "Online-Protokoll", Morsestationen als die ersten
"Proto"-Terminals.
● Weiterentwicklung der Morse-Telegraphie: Fernschreiber
(Engl.: TeleTYpeWriter -> tty)
● Fernschreiber: Einsatz als frühe Computer-Terminals, aber nur suboptimal
für Interaktion mit IT:
● Papierverbrauch, Ausdruck meistens unnötig
● Zu langsam
● Keine komplexere Interaktion (editieren etc.)
● Ab den 1970ern: Aufkommen der Computerterminals
● 1980er bis heute: GUIs incl. neuer Interaktionsformen (Maus, Touchscreen,
Spracherkennung, ...)
4. 2. Grundlegendes Warum eigentlich heute noch Kommandozeile?
Warum soll ich mir die Mühe mit der Kommandozeile machen?
Ist das nicht ein Relikt aus der Computer-Steinzeit?
Ich habe doch meinen schicken Desktop ... ?
● Erheblich "näher" am System (GUIs verbergen Interna als 'Black Box')
● Bessere Kontrolle über den Rechner (einer der Gründe für Linux)
● Schnellere Bedienung (mit entsprechender Übung)
-> Kurze & knackige Kommandos auch für komplexe Aktionen
-> Kein Wechsel Maus - Tastatur
● Netzzugriff (remote login) auf entfernten Rechner
● Skripte zur Verarbeitung grosser Datenmengen
● Im Notfall (Systemreparatur) ist evtl. keine GUI mehr vorhanden
● Erheblich geringerer Ressourcenverbrauch als GUIs
(wichtig z.B. für Raspberry Pi u.ä.)
5. 2. Grundlegendes Terminal aufrufen
Zuerst brauchen wir ein Terminal. Wie kriegen wir eines?
a) Einen Terminal Emulator ausführen (ist bei
jedem Linux Desktop mit dabei)
6. 2. Grundlegendes Terminal aufrufen
Ctrl + F1Alt+
b) oder: Die GUI verlassen und die Linux Console aufrufen mit:
c) oder: Sich auf einem (entfernten) Rechner einloggen mit Programmen wie PuTTY
7. 2. Grundlegendes Die Shell
Terminal Emulator Shell Linux Kernel
bash
csh
ash
ksh
zsh
xterm
Gnome
Terminal
KDE-
Terminal
8. 2. Grundlegendes Der Prompt ('Eingabeaufforderung')
max@linuxkiste:~$ _
'Prompt'
Cursor
10. 2. Grundlegendes Kommandooptionen
max@linuxkiste:~$ gimp urlaubsphoto_sonnenuntergang.jpg
(GIMP startet und öffnet gleich das Urlaubsphoto)
max@linuxkiste:~$ gimp -v
GNU Image Manipulation Program Version 2.8.2
git-describe: GIMP_2_8_0-194-ga42a02e
verwendet GEGL Version 0.2.0 (gebaut gegen Version 0.2.0)
verwendet GLib Version 2.32.4 (gebaut gegen Version 2.32.4)
verwendet GdkPixbuf Version 2.26.1 (gebaut gegen Version
2.26.1)
verwendet GTK+ Version 2.24.10 (gebaut gegen Version 2.24.10)
verwendet Pango Version 1.30.0 (gebaut gegen Version 1.30.0)
verwendet Fontconfig Version 2.9.0 (gebaut gegen Version 2.9.0)
verwendet Cairo Version 1.12.2 (gebaut gegen Version 1.12.2)
max@linuxkiste:~$ _
11. 2. Grundlegendes Kommandooptionen
Grundlegende Struktur eines Kommandos:
<Kommando> <Parameter1> <Parameter2> <...>
Übliche Parameterformen:
● Argumente: Dateinamen, Suchmuster etc.
~$ gimp sonnenuntergang.jpg
● Single Options: Ein Minus '-' und ein Zeichen
~$ ls -l -r -t -h
● Combined single options: Ein Minus '-' und mehrere Zeichen
~$ ls -lrth
● Long options: Zwei Minus '-' und eine Beschreibung
~$ gimp --license
12. 2. Grundlegendes Hilfe zu Kommandos
Kurzüberblick über Ausruf und Optionen eines Kommandos häufig mit -h
(häufig, aber leider nicht immer)
max@linuxkiste:~$ gimp -h
Aufruf:
gimp [OPTION …] [DATEI|URI...]
GNU Image Manipulation Program
Hilfeoptionen:
-h, --help Hilfeoptionen anzeigen
--help-all Alle Hilfeoptionen anzeigen
--help-gegl Show GEGL Options
--help-gtk GTK+-Optionen anzeigen
Anwendungsoptionen:
-v, --version Versionsinformationen anzeigen
--license Lizenzinformationen anzeigen
--verbose Ausführlicher verhalten
...
14. 2. Grundlegendes Man-Pages
GIMP(1) GIMP Manual Pages GIMP(1)
NAME
gimp - an image manipulation and paint program.
SYNOPSIS
gimp [-h] [--help] [--help-all] [--help-gtk] [-v]
[-version] [--license] [--verbose] [-n] [--new-instance]
[-a] [--as-new] [-i] [--no-interface] [-d] [--no-data] [-f]
[--no-fonts] [-s] [--no-splash] [--no-shm] [--no-cpu-accel]
[--display display] [--session <name>] [-g]
[--gimprc <gimprc>] [--system-gimprc <gimprc>]
[--dump-gimprc] [--console-messages] [--debug-handlers]
[--stack-trace-mode <mode>] [--pdb-compat-mode <mode>]
[--batch-interpreter <procedure>] [-b]
[--batch <command>] [filename] ...
DESCRIPTION
GIMP is the GNU Image Manipulation Program. It is used to
edit and manipulate images. It can load and save a variety
of image formats and can be used to convert between
formats. GIMP can also be used as a paint program.
...
15. 2. Grundlegendes Help für Shell-interne Kommandos
Die Shell hat einige fest eingebaute (interne) Kommandos, für die keine Man-Page
vorhanden ist. Hier kann help weiterhelfen:
max@linuxkiste:~$ man cd
Kein Handbucheintrag für cd vorhanden
max@linuxkiste:~$ help cd
cd: cd [-L|[-P [-e]]] [dir]
Change the shell working directory.
Change the current directory to DIR. The default DIR is
the value of the HOME shell variable.
...
16. 2. Grundlegendes Prozess im Hintergrund starten
max@linuxkiste:~$ gimp
(Konsole nimmt keine Kommandos an)
max@linuxkiste:~$ gimp &
[1] 8169
max@linuxkiste:~$ _
Aufgepasst: Ein Kommando blockiert die Konsole solange bis es beendet ist.
Lösung: Programm im Hintergrund starten (mit '&'-Zeichen am Ende)
Ctrl + C
Erzwungenes Beenden von Programmen im Vordergrund der Konsole mittels:
(funktioniert häufig, aber leider nicht immer ...)
17. 2. Grundlegendes Sonstige Tastenkombinationen
Tab
Shift +
Ctrl + C
Durch vorherige Kommandos
scrollen
Textausgabe durchscrollen
Autocompletion
Prozess im Vordergrund abbrechen
Page
up
Page
downShift + Textausgabe durchscrollen
(Linux Konsole)
18. 3. Kommandozeile als Dateibrowser
Das sog. aktuelle Verzeichnis wird (meist) im Prompt angezeigt:
max@linuxkiste:/usr/local/share$ _
max@linuxkiste:~$ _
Die Tilde '~' bedeutet dabei das Home-Verzeichnis des Benutzers
max@linuxkiste:~/Dokumente/Post$ _
19. 3. Kommandozeile als Dateibrowser In Verzeichnissen navigieren
pwd zeigt das aktuelle Verzeichnis an ('Print Working Directory'):
max@linuxkiste:~/Dokumente/Post$ pwd
/home/max/Dokumente/Post
20. 3. Kommandozeile als Dateibrowser In Verzeichnissen navigieren
cd wechselt das aktuelle Verzeichnis (Tipp: Autocompletion per <tab> sehr nützlich)
max@linuxkiste:~/Dokumente$ cd Post
max@linuxkiste:~/Dokumente/Post$ _
max@linuxkiste:~/Dokumente/Post$ cd ..
max@linuxkiste:~/Dokumente/$ _
Relative Pfade:
Ein Verzeichnis zurück:
max@linuxkiste:~/Dokumente/Post$ cd /usr/share
max@linuxkiste:/usr/share$ _
Absolute Pfade:
max@linuxkiste:/usr/share$ cd ~/Dokumente
max@linuxkiste:~/Dokumente$ _
Home-Verzeichnis:
21. 3. Kommandozeile als Dateibrowser Verzeichnisinhalt anzeigen
ls zeigt Inhalt eines Verzeichnisses an:
max@linuxkiste:~/Dokumente$ ls
Bücher Job Post Rezepte howto.txt kuendigung.pdf
sonnenuntergang.jpg
max@linuxkiste:~/Dokumente$ ls Rezepte/
cocktails.txt curry_huehnchen.txt spargel.txt
ls hat enorm viele Optionen. Man sollte kennen:
-l Ausgabe als Liste
-a Ausgabe versteckter Dateien (Name beginnt mit '.')
-h (mit -l) Größe als 'human-readable' ausgeben
-t Sortieren nach Änderungszeit
-X Sortieren nach Dateiendung
--color Farbige Ausgabe
22. 3. Kommandozeile als Dateibrowser Verzeichnisinhalt anzeigen
max@linuxkiste:~/Dokumente$ ls -laht --color
drwxr-xr-x 13 max users 4,0K Mai 26 15:10 .
drwxr-xr-x 63 max users 4,0K Mai 26 11:44 ..
-rw-r--r-- 1 max users 1,3M Apr 26 11:05 kuendigung.pdf
-rw-r--r-- 1 max users 91K Mär 10 17:43 howto.txt
-rw-r--r-- 1 max users 984K Mär 10 15:52 sonnenuntergang.jpg
-rw------- 1 max users 342 Feb 05 16:00 .hidden
drwxr-xr-x 12 max users 4,0K Feb 05 15:00 Bücher
drwxr-xr-x 8 max users 4,0K Feb 05 15:00 Job
drwxr-xr-x 4 max users 4,0K Feb 05 15:00 Post
drwxr-xr-x 5 max users 4,0K Feb 05 15:00 Rezepte
ls zeigt Inhalt des aktuellen Verzeichnisses an (Listenformat):
23. 3. Kommandozeile als Dateibrowser Dateien kopieren
max@linuxkiste:~/Dokumente$ ls Post/
bestellung.pdf storno.pdf
max@linuxkiste:~/Dokumente$ cp kuendigung.pdf Post/
max@linuxkiste:~/Dokumente$ ls Post/
bestellung.pdf kuendigung.pdf storno.pdf
max@linuxkiste:~/Dokumente$ mv Post/storno.pdf .
max@linuxkiste:~/Dokumente$ ls Post/
bestellung.pdf kuendigung.pdf
cp kopiert Dateien und Verzeichnisse (Autocompletion auch hier sehr hilfreich)
mv verschiebt Dateien und Verzeichnisse.
Die wichtigsten Optionen:
-i Vor Überschreiben nachfragen
-n Existierende Dateien nicht überschreiben
-u Nur kopieren wenn Datei nicht existiert oder neuer
-r Verzeichnisse rekursiv kopieren
24. 3. Kommandozeile als Dateibrowser Bedeutung von '.' und '..'
max@linuxkiste:~/Dokumente$ cp Post/kuendigung.pdf .
'.' und '..' sind automatisch in jedem Verzeichnis vorhanden
. bezeichnet das Verzeichnis selbst
.. bezeichnet das Verzeichnis eine Ebene höher
Kopieren einer Datei ins aktuelle Verzeichnis:
max@linuxkiste:~/Dokumente$ cd ..
max@linuxkiste:~$ _
Wechseln ins Verzeichnis höher:
25. 3. Kommandozeile als Dateibrowser Dateien löschen
max@linuxkiste:~/Dokumente$ ls Post/
bestellung.pdf kuendigung.pdf
max@linuxkiste:~/Dokumente$ rm Post/kuendigung.pdf
max@linuxkiste:~/Dokumente$ ls Post/
bestellung.pdf
rm löscht Dateien und Verzeichnisse
Die wichtigsten Optionen:
-f Löschen ohne Nachfragen (Vorsicht!)
-i Vor Löschen nachfragen
-r Verzeichnisse mit Inhalt rekursiv löschen
26. 3. Kommandozeile als Dateibrowser Wildcards
cp, mv, rm können mehrere Dateien auf einmal verarbeiten:
max@linuxkiste:~/Dokumente/Post$ cp bestellung.pdf
kuendigung.pdf storno.pdf ~/Backup/
max@linuxkiste:~/Dokumente/Post$ cp *.pdf ~/Backup/
Dateien mit Ähnlichkeiten im Dateinamen kann man per Wildcard zusammenfassen:
* Beliebig viele Zeichen (auch keines)
? Genau ein beliebiges Zeichen
[abc] Ein Zeichen aus der Liste
[a-m] Ein Zeichen aus dem Bereich
{pdf,txt} Eine der angegebenen Zeichenketten
27. 3. Kommandozeile als Dateibrowser Wildcards: Beispiele
max@linuxkiste:~$ ls *.pdf
Zeige alle PDF-Dateien im Verzeichnis an:
max@linuxkiste:~$ ls Bild_1??.jpg
Zeige alle Bilder mit Nummer 100-199 an:
max@linuxkiste:~$ ls [a-d]*
Zeige alle Dateien an, die mit a, b, c oder d anfangen:
max@linuxkiste:~$ ls *.{pdf,txt}
Zeige alle PDF- und TXT-Dateien im Verzeichnis an:
28. 3. Kommandozeile als Dateibrowser
mkdir Neuen Ordner anlegen
touch Neue Datei anlegen (eigentlich: Zeitstempel ändern)
df Dateisystembelegung anzeigen
du Speicherplatz von Dateien anzeigen
cat Inhalt einer Datei anzeigen (alles auf einmal)
less Inhalt einer Datei anzeigen (mit Scrollen)
find Dateien finden
grep Muster in Dateien finden
vi Der klassische UNIX Texteditor
nano Noch ein Texteditor
Diverse Kommandos, die man auch kennen sollte:
29. 3. Kommandozeile als Dateibrowser Vorsicht!
Aufgepasst: Die Dateikommandos löschen / überschreiben Dateien idR ohne
nachzufragen!
Es gibt keinen "Papierkorb", aus dem man versehentlich gelöschte Dateien
wiederherstellen kann!
Tippfehler können schwerwiegende Auswirkungen haben.
Beispiel: Geplant mit folgendem Kommando ist eigentlich, alle .o-Dateien zu
löschen. Aus Versehen ist ein Leerzeichen reingekommen. Was passiert?
$ rm * .o
Im Zweifelsfall lieber die -i Option verwenden, mit der die Shell immer erst
nachfragt, bevor Dateien gelöscht / überschrieben werden.
$ rm -i *.o
30. 4. Alias Häufige Kommando-Optionen mit Alias abkürzen
$ alias ll='ls -l --color=auto'
Sicherheitsmaßnahme, damit bei cp, mv, rm immer nachgefragt wird:
$ alias cp='cp -i'
$ alias mv='mv -i'
$ alias rm='rm -i'
Für Optionen, die man häufig verwendet kann man mit alias eine Kurzform
definieren:
Beispiel: ls als Liste und mit Farbhervorhebung
Und damit man das dauerhaft hat kann man es in die .bashrc eintragen ... das
ist aber Material für einen nächsten Vortrag.
31. 4. Systemkommandos (benötigt teilweise root, Vorsicht!)
uname Systeminformationen anzeigen (Kernelversion etc.)
dmesg Kernel Ring Buffer anzeigen
lspci PCI-Bus Belegung anzeigen
lsusb USB-Bus Belegung anzeigen
lsmod Geladene Kernelmodule anzeigen
lsof Geöffnete Dateien anzeigen
uptime Anzeigen wie lange das System schon läuft
top Monitor der laufenden Prozesse (fortlaufend)
ps Laufende Prozesse anzeigen (als Liste)
kill Prozess stoppen (eigentlich: Signal an Prozess senden)
fdisk Partitionierung der Festplatte anzeigen / ändern
mount Gerät in das Dateisystem einhängen
32. 5. Was nicht behandelt wurde
● Shell Konfigurationsdateien
● Redirects und Pipes
● Den Prompt individuell konfigurieren
● Umgebungsvariablen
● Prozessverwaltung
● Command expansion
● Shell Scripting
● Programmpakete direkt aus Sourcen bauen
● Terminal capabilities
● TUIs ('Text User Interfaces' - 'Halbgraphik')