<!doctype html>
<html lang="de">

	<head>
		<meta charset="utf-8">

		<title>Einführung in Linux</title>

		<meta name="description" content="YALC - Yet Another Linux Course ">
		<meta name="author" content="Daniel Schubert">

		<meta name="apple-mobile-web-app-capable" content="yes">
		<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">

		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

		<link rel="stylesheet" href="css/reveal.css">
		<link rel="stylesheet" href="css/theme/league.css" id="theme">
		
		<link rel="icon" href="img/openlogo-nd-25.png" type="img/png">

		<!-- Theme used for syntax highlighting of code -->
		<link rel="stylesheet" href="lib/css/zenburn.css">

		<!-- Printing and PDF exports -->
		<script>
			var link = document.createElement( 'link' );
			link.rel = 'stylesheet';
			link.type = 'text/css';
			link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css';
			document.getElementsByTagName( 'head' )[0].appendChild( link );
		</script>

	</head>

	<body>
		<div class="reveal">
			<!-- Any section element inside of this container is displayed as a slide -->
			<div class="slides">

				<section data-transition="slide" data-background="#4d7e65" data-background-transition="zoom">
					<h1>LINUX</h1>
					<h3>Das universelle Betriebssystem</h3>
					<p>Eine Einführung - Teil 2
					<p> <small>Deutsche Angestellten Akademie</small> </p>
				</section>

				<section>
					<section><h3>Weitere Desktop Systeme</h3>



					<aside class="notes">
						<ul>
							<li>X window - X11</li>
							
						</ul>
					</aside>


					</section>
					<section>
						xfce 
						<figure>	<img style="max-height: 25vw" src="img/Xfce_4.12_on_Fedora_22.png"><figcaption>zB xubuntu</figcaption></figure>
						<aside class="notes">
							<ul>
								<li>Windows XP Ähnlich</li>
								<li>rechts oben START</li>
								<li>Ressourcen Sparsam</li>
								<li>alte hardware</li>
								<li>XUBUNTU</li>
							</ul>
						</aside>
					</section>
					<section>
						KDE
						<figure><img style="max-height: 25vw" src="img/linux-mint-18.1-kde-screenshot-2.png"><figcaption>zB kubuntu / SUSE</figcaption></figure>
						<aside class="notes">
							<ul>
								<li>Sehr umfangreich konfigurierbar</li>
								<li>Modern</li>
								<li>vlcht mit WIn7 vergleichbar</li>
								<li>KUBUNTU</li>
							</ul>
						</aside>
					</section>
					<section>
						Pantheon
						<figure><img style="max-height: 25vw" src="img/Elementary_OS_0.3.1.png"><figcaption>elementaryOS</figcaption></figure>
						<aside class="notes">
							<ul>
								<li>Modern</li>
								<li>die stylischte Variante</li>
								<li>Ubuntu Deriv</li>
							</ul>
						</aside>
					</section>
					<section>
						i3wm / awesome
						<figure><img style="max-height: 25vw" src="img/d1mscg9xqj7z.png"><figcaption>tiling window managers</figcaption></figure>

						<aside class="notes">
							<ul>
								<li>tiling window manager</li>
								<li>komplett per tastatur steuerbar</li>
								<li>schnell</li>
							</ul>
						</aside>
					</section>
				</section>

				<section>
					<h3>Wichtige „Freie“ Programme</h3>
					
					<ul>
						<li class="fragment ">LibreOffice</li>
						<li class="fragment ">Thunderbird</li>
						<li class="fragment ">Firefox / Chromium</li>
						<li class="fragment ">GIMP</li>
						<li class="fragment ">InkScape - Vector Grafik</li>
						<li class="fragment ">ImageMagick - Bildmanipulation</li>
						<li class="fragment ">Blender - 3D Rendering</li>
						<li class="fragment ">VLC</li>
						<li class="fragment ">mplayer</li>
					</ul>

					<aside class="notes">
						<ul>
							<li>ImageMagick - scriptbar</li>
						</ul>
					</aside>

				</section>

				<section>
					<h3>Wichtige „Freie“ Dienste</h3>
					<ul>
						<li class="fragment ">Webserver : Apache / Nginx</li>
						<li class="fragment ">Datenbanken: MySql / PostgreSql / MariaDB</li>
						<li class="fragment ">Email: Postfix / Sendmail </li>
						<li class="fragment ">Fileserver: Samba</li>
						<li class="fragment ">BIND / DNSmasq</li>
					</ul>

					<aside class="notes">
						<ul>
							<li>Samba: Nachbau von Windows SMB -> Kompatibel</li>
							<li>Samba: läuft auf meinem PI</li>
							<li>BIND DNSMASQ : ohne die kein internet denkbar</li>
						</ul>
					</aside>
				</section>

				<section>
					
					<h3>Basics / Unterschiede zu Windows</h3>	
						<ul>
							<li class="fragment ">Verzeichnistrenner : <code>/</code>
							<li class="fragment">Unterscheidung von gross / klein -Schreibung: Datei.txt ≠ datei.txt
							<li class="fragment ">Benutzerverzeichnis : <code>/home/username</code>
							<li class="fragment ">Wurzelverzeichnis „root directory“ :<code>/</code>
							<li class="fragment">gültige Dateinamen / Pfade:
								<ul>
									<li><code>/home/daniel/Dokumente/Wichtig.dez-2018.ods</code></li>
									<li><code>WichtigerText</code></li>
									<li><code>dies.darf_Nicht.weg</code></li>
									<li><code>README</code></li>
								</ul>
							</li>
						</ul>
				</section>

				

				<section>
					<h3>Basics / Unterschiede zu Windows</h3>	
					<ul>
						<li class="fragment ">versteckte Datei/Ordner beginnt mit . : <code>.config</code> </li>
						<li class="fragment ">Datei-Endungen nicht vorgeschrieben</li>
						<li class="fragment ">Keine Laufwerksbuchstaben</li>
						<li class="fragment ">Laufwerke ( DVD, USB etc ) werden im Verzeichnisbaum „eingehängt” : mount</li>
					</ul>
				</section>			

				<section>
					<h3>Alles ist eine Datei !</h3>
					<li class="fragment "><strong>Verzeichnisse</strong>   
					<li class="fragment "><strong>Symbolische Links</strong> ähnlich zu »Verknüpfungen« unter Windows.
					<li class="fragment "><strong>Gerätedateien</strong> (engl. devices): Schnittstellen zu beliebigen Geräten wie Laufwerken. <code>/dev/fd0</code>   ist das erste Diskettenlaufwerk.
				</section>
				
				<section>
					<figure><img src="img/hN4lt.jpg"></figure>
				</section>	
				
				<section>
					<h3>Übungen</h3>
					<ol>
						<li>Wie werden versteckte Dateien Sichtbar?</li>
						<li>Einbinden eines USB Stick</li>
						<li class="fragment ">Installation von XFCE</li>
						<li class="fragment ">Wechsel der Desktop Umgebung zu xfce</li>
					</ol>


					<aside class="notes">
						<ul>
							<li>X Window System  X11 </li>
							<li>Benennung mit G und K und X </li>
						</ul>
					</aside>
				</section>

				<section data-transition="slide" data-background="#4d7e65" data-background-transition="zoom">
					<h3>Paketverwaltung</h3>
				</section>

				<section>
					
					<h3>Debian Versions-Bezeichungen</h3>

					<ul>
						<li class="fragment">4 Stränge, benannt nach Figuren aus <i>Toy Story</i></li>
						<li class="fragment">Testing ( Buster - wird Debian 10)</li>
						<li class="fragment">Unstable ( heisst immer Sid ) </li>
						<li class="fragment">Stable ( stretch - Debian 9 )</li>
						<li class="fragment">Oldstable ( Jessie - Debian 8 )</li>
					</ul>
				</section>
				<section>
					<h3>Programme zum Paketmanagement</h3>
					<ul>
						<li class="fragment">synaptic - point and click</li>
						<li class="fragment">apt-get - kann Abhängigkeiten selbständig auflösen</li>
						<li class="fragment">apt - das hübschere apt-get  </li>
						<li class="fragment">dpkg - low level paket management</li>

					</ul>

				
					
				</section>

				<section>
					<h3>apt</h3>

					<table style="font-size: .5em"><tbody><tr><td> <code class="notranslate">update</code> </td><td> Neueinlesen der Paketlisten  </td></tr><tr><td> <code class="notranslate">upgrade</code> </td><td> Installierte Pakete wenn möglich auf eine verbesserte Version aktualisieren. Um geänderte Abhängigkeiten zu erfüllen, werden ge­ge­be­nen­falls auch neue Pakete installiert. </td></tr><tr><td> <code class="notranslate">full-upgrade</code> </td><td> Wie <code class="notranslate">upgrade</code>, nur können bei dem Vorgang auch Pakete entfernt werden. Alternativ kann statt <code class="notranslate">full-upgrade</code> auch der Befehl <code class="notranslate">dist-upgrade</code> verwendet werden. Das Ergebnis ist identisch, allerdings ist <code class="notranslate">dist-upgrade</code> in der Hilfe und der Man-Page von <code class="notranslate">apt</code> nicht dokumentiert. </td></tr><tr><td> <code class="notranslate">install PAKETNAME</code> </td><td> installiert das Paket <code class="notranslate">PAKETNAME</code> </td></tr><tr><td> <code class="notranslate">install /PFAD/ZUM/PAKET</code> </td><td> installiert ein lokales Paket und dessen Abhängigkeiten  </td></tr><tr><td> <code class="notranslate">remove PAKETNAME</code> </td><td> deinstalliert das Paket <code class="notranslate">PAKETNAME</code> </td></tr><tr><td> <code class="notranslate">purge PAKETNAME</code> </td><td> wie <code class="notranslate">remove</code>, es werden aber zusätzlich auch alle Konfigurationsdateien gelöscht </td></tr><tr><td> <code class="notranslate">autoremove</code> </td><td> deinstalliert alle automatisch installierten Pakete, die nicht mehr benötigt werden und keine Abhängigkeiten mehr zu anderen Paketen haben </td></tr></tbody></table>

					<p><small>Quelle: https://wiki.ubuntuusers.de/apt/apt/</small> </p>


				</section>
				<section>
					<h3>Andere Distros</h3>
					<ul>
						<li>RedHat / CentOs : rpm ( *.rpm )</li>
						<li>YUM</li>
						<li>arch: pacman ( *.pkg.tar.xz )</li>
					</ul>
					<p class="fragment">Kovertierung möglich mit <span style="color: green">alien</span>

					<div class="fragment grow highlight-red">NICHT MISCHEN!!</div>

				</section>
				<section>
					<h3>Nachteile:</h3>
					<ul>
						<li>Häufige Updates</li>
						<li>grosse Downlods bei Updates</li>
						<li>ältere Distris manchmal nicht mit neuen Programmen kompatibel</li>
					</ul>
				</section>
				<section>
					<h3>Jetzt Neu!</h3>
					<ul>
						<li class="fragment">snappy ( ubuntu ) </li>
						<li class="fragment">flatpack</li>
						<li class="fragment">Lösen das Problem der unterschiedlichen Abhängigkeiten und Versionen je nach Distro</li>
					</ul>

					<aside class="notes">
						<ul>
							<li>snappy: container mit allem drin</li>
							<li>flatpack: ähnlich, und open source ;-)</li>
						</ul>
					</aside>
				</section>

				<section>
					Manche Programme sind nicht als Paket verfügbar. Installation von Hand möglich.
					
					<pre style="background-color:#000">programm.tar.gz</pre>

					<ul>
						<li class="fragment ">-> tar : tape archive</li>
						<li class="fragment ">-> gz :  zip  ( gzip )</li>
						<li class="fragment ">gezippter container</li>
						<li class="fragment ">nachteil: umgeht Paketverwaltung</li>
					</ul>
 				</section>

				<section>
					<section>
						<h3>Übungen</h3>

						<p> Im Terminal 

						<ol>
							<li>Update des Systems mit apt</li>
							<li>Upgrade des Systems mit apt</li>
							<li>Liste alle installierten Paketen</li>
							<li>Welches sind die momentan aktiven repositories?</li>
						</ol>

						<div style="font-size:.8em" class="fragment">
							<p>Halp!!</p>
							<ul >
								<li>sudo apt update</li>
								<li>sudo apt upgrade</li>
								<li>apt list</li>
								<li>dpkg --list</li>
								<li>less /etc/apt/source.list</li>
							</ul>
						</div>
					</section>

					<section>
							<p>
					<pre>

deb http://ftp.uni-stuttgart.de/debian/ stretch main contrib non-free
deb-src http://ftp.uni-stuttgart.de/debian/ stretch main contrib non-free

Types: deb
URIs: http://ftp.uni-stuttgart.de/debian/
Suites: stretch
Components: main contrib non-free</pre>

					</section>
				</section>


				<section data-transition="slide" data-background="#4d7e65" data-background-transition="zoom">
					<h1>Das Hilfesystem</h1>
				</section>

				<section>
					<h3>Wie finde ich Hilfe??</h3>
					<blockquote>Man muss nicht alles wissen, aber man sollte wissen wo ma  n es nachschlagen kann.</blockquote>

					<ul>
						<li class="fragment ">Im Internet ;-)</li>
						<li class="fragment ">www.debian.org/doc/</li>
						<li class="fragment ">wiki.ubuntuusers.de </li>
						<li class="fragment ">The Linux Documentaion Project  - http://tldp.org/ </li>
						<li class="fragment ">&lt;F1&gt;   ( nicht im Terminal ) </li>
					</ul>

					<p class="fragment fade-right   ">Ausserdem:::</p>

				</section>

				<section>
					<h3>Die man - Pages</h3>
					<p > Für (fast) alle Terminal-Programme existiert  eine <br><span class="fragment highlight-green">man - Page</span>
					</p>

					 <pre>man sudo  </pre>
				</section>

				<section style="font-size: .8em">
					
					<p>In Linux-Literatur oder auch in den Manpages selbst ist häufig eine man-Nummer hinter dem Kommando angegeben, z.B. less(1), damit der man-Text zielgenau aufgerufen werden kann. <br>Es gibt die Themenbereiche 1 bis 9 und n.
					<ol style="font-size: .6em">
						<li>Benutzerkommandos</li>
						<li>Systemaufruf</li>
						<li>Funktionen der Programmiersprache C</li>
						<li>Dateiformate</li>
						<li>Konfigurationsdateien</li>
						<li>Spiele</li>
						<li>Diverses</li>
						<li>Kommandos zur Systemadministrati</li>
						<li>Kernelfunktionen</li>
					</ol>
					
					<p>Die Eingabe für den Aufruf von less mit dem Thema (1) sieht so aus:

						<pre>man 1 less </pre>
				</section>

				<section>
					
					<table style="font-size: .5em"><tr class="titel"><td colspan="4">Die Tastenkürzel</td></tr><tr class="kopf"><td>Taste</td><td>Bedeutung</td><td>Taste</td><td>Bedeutung</td></tr><tr><td>
					<span class="key">↑</span>  oder 
					<span class="key">Y</span> </td><td>im Text nach oben scrollen</td><td>
					<span class="key">↓</span>  oder 
					<span class="key">E</span> </td><td>im Text nach unten scrollen</td></tr><tr class="highlight"><td>
					<span class="key">←</span> </td><td>im Text nach links scrollen</td><td>
					<span class="key">→</span> </td><td>im Text nach rechts scrollen</td></tr><tr><td>
					<span class="key">Bild ↑</span>  oder 
					<span class="key">U</span>  oder 
					<span class="key">B</span> </td><td>im Text seitenweise nach oben scrollen</td><td>
					<span class="key">Bild ↓</span>  oder 
					<span class="key">D</span>  oder 
					<span class="key">F</span> </td><td>im Text seitenweise nach unten scrollen</td></tr><tr class="highlight"><td>
					<span class="key">G</span> </td><td>zum Textanfang springen</td><td>
					<span class="key">⇧</span>  + 
					<span class="key">G</span> </td><td>zum Textende springen</td></tr><tr><td>
					<span class="key">⇧</span>  + 
					<span class="key">7</span> </td><td>in den Suchmodus &quot;Vorwärtssuche&quot;</td><td>
					<span class="key">⇧</span>  + 
					<span class="key">ß</span> </td><td>in den Suchmodus &quot;Rückwärtssuche&quot;</td></tr><tr class="highlight"><td>
					<span class="key">N</span> </td><td>zum nächsten Suchresultat springen</td><td>
					<span class="key">⇧</span>  + 
					<span class="key">N</span> </td><td>zum vorherigen Suchresultat springen</td></tr><tr><td>
					<span class="key">H</span> </td><td>Hilfetext mit vielen zusätzlichen Tasten und Optionen</td><td>
					<span class="key">Q</span> </td><td>Beenden</td></tr></table>

					<p><small>https://wiki.ubuntuusers.de/man/</small></p>
				</section>

				<section data-transition="slide" data-background="#4d7e65" data-background-transition="zoom">
					<h2>Die Bash</h2>
				</section>


				


				

			</div>

		</div>

		<script src="lib/js/head.min.js"></script>
		<script src="js/reveal.js"></script>

		<script>

			// More info https://github.com/hakimel/reveal.js#configuration
			Reveal.initialize({
				controls: true,
				progress: true,
				history: true,
				center: true,

				transition: 'slide', // none/fade/slide/convex/concave/zoom

				// More info https://github.com/hakimel/reveal.js#dependencies
				dependencies: [
					{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
					{ src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
					{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
					{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
					{ src: 'plugin/search/search.js', async: true },
					{ src: 'plugin/zoom-js/zoom.js', async: true },
					{ src: 'plugin/notes/notes.js', async: true }
				]
			});

		</script>

	</body>
</html>