Commit 0abc1044 authored by sfleisch's avatar sfleisch
Browse files

initial commit, linux arbeitsblätter

parents
\documentclass[german]{uebungsblatt}
\begin{document}
\lvname{Linux-Grundkenntnisse f\"ur Praktikanten}
\autoren{S\"oren Fleischer}
\begin{aufgabe}
\textbf{Filesystem}
\begin{teilaufgaben}{a)}
\teilaufgabe
Bitte erkl\"are mit eigenen Worten, wie ein Filesystem unter Linux typischerweise aufgebaut ist.
Was sind die ``wichtigsten'' Verzeichnisse? Gibt es ``spezielle'' Dateien, und wenn ja, f\"ur was sind sie da? Was bedeuten die verschiedenen Symbole in der ersten Spalte der Ausgabe von \texttt{ls -la}?
\teilaufgabe
K\"onnte man das komplette Dateisystems eines Linux-Systems einfach so auf einen anderen Datentr\"ager, etwa eine Festplatte, kopieren, so dass das System effektiv dupliziert wurde? Wenn nein, warum nicht?
\teilaufgabe
Bitte f\"uhre vor, wie man
\begin{enumerate}
\item Ein Verzeichnis betritt
\item Explizit herausfindet, in welchem Verzeichnis man sich gerade befindet
\item Herausfindet, welchem User und welcher Gruppe ein Verzeichnis geh\"ort
\end{enumerate}
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Dinge mit Verwechslungsgefahr}
\begin{teilaufgaben}{a)}
\teilaufgabe
Was ist der Unterschied bzw Zusammenhang zwischen einem \textbf{Device}, einer \textbf{Partition}, und einem \textbf{Filesystem}?
\teilaufgabe
Mit \textbf{Filesystem} k\"onnen mehrere Dinge gemeint sein. Welche?
\teilaufgabe
Was ist der Unterschied zwischen kB, kiB, kb, und kib?
\teilaufgabe
Was ist eine Disc, und was ist eine Disk?
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Permissions}
\begin{teilaufgaben}{a)}
\teilaufgabe
Bitte erkl\"are mit eigenen Worten, wie die Permissions einer Datei aufgebaut sind.
\teilaufgabe
Wie lauten die Permissions dieser Datei in oktaler Schreibweise?
\begin{verbatim}
-rw-r--r-- 1 user1 user1 1009 Apr 7 22:30 blatt1.tex
\end{verbatim}
\teilaufgabe
Welchen Permissions entspricht die oktale Schreibweise 750?
\teilaufgabe
Bitte f\"uhre vor, wie man
\begin{enumerate}
\item Eine Datei f\"ur die Mitglieder ihrer Gruppe lesbar macht
\item Eine Datei f\"ur alle ausf\"uhrbar macht
\item Eine Datei einem anderen User \"ubereignet
\end{enumerate}
\teilaufgabe
Welches Bit muss bei den Permissions gesetzt sein, damit man eine Datei l\"oschen kann? Bitte f\"uhre dies geeignet vor.
\teilaufgabe
Wer darf eine Datei mit \texttt{chown} jemand anders \"ubertragen? Bitte f\"uhre dies geeignet vor.
\newpage
\teilaufgabe
Ein User A legt f\"ur einen anderen User B eine Datei ab. User A will sicherstellen, dass User B auch darauf zugreifen kann, und stellt die Permissions der Datei auf 755.
Dennoch beschwert sich User B, dass er ``Permission Denied'' bekommt, wenn er die Datei lesen will. Woran k\"onnte das liegen? Bitte konstruiere eine solche Situation geeignet nach.
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Pipes}
\begin{teilaufgaben}{a)}
\teilaufgabe
Bitte erkl\"are mit eigenen Worten, was eine Pipe ist.
\teilaufgabe
F\"uhre an einem geeigneten Beispiel die Nutzung einer oder mehrerer Pipes vor.
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Paketmanager}
\begin{teilaufgaben}{a)}
\teilaufgabe
Bitte erkl\"are mit eigenen Worten, was ein Paketmanager ist. Welche Aufgaben erf\"ullt er? Welche Vorteile bietet er? Gibt es auch Nachteile, und wenn ja, welche?
\teilaufgabe
Bitte f\"uhre vor, wie man mit einem Paketmanager etwas installiert, z.B. den Browser Chromium.
\teilaufgabe
Wie unterscheidet sich der Workflow zur Programminstallation mittels Paketmanager von dem der Installation eines Programms unter Windows?
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{H\"aufig genutzte Hilfsmittel}
Bitte erl\"autere kurz die Funktion der folgenden Programme, und f\"uhre sie ggfs geeignet vor.
\begin{teilaufgaben}{a)}
\teilaufgabe
diff
\teilaufgabe
grep
\teilaufgabe
kill
\teilaufgabe
nano
\teilaufgabe
ssh
\teilaufgabe
sudo
\teilaufgabe
touch
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Environment-Variablen}
\begin{teilaufgaben}{a)}
\teilaufgabe
Was ist eine Environment-Variable? Welchen Zweck erf\"ullen Environment-Variablen? Welche Vor- und Nachteile haben Environment-Variablen? Was w\"aren alternative Mechanismen, die diese Zwecke auch erf\"ullen k\"onnten?
\teilaufgabe
Wie setze ich eine Environment-Variable in Bash?
\teilaufgabe
Wie l\"osche ich eine Environment-Variable in Bash?
\teilaufgabe
Ich habe in meiner \textasciitilde/.bashrc eine Environment-Variable exportiert. Mein Programm, welches per Init-Script gestartet wird, sieht diese Variable aber nicht. Warum?
\end{teilaufgaben}
\end{aufgabe}
\end{document}
\ No newline at end of file
\documentclass{uebungsblatt}
\begin{document}
\lvname{Linux-Grundkenntnisse f\"ur Praktikanten}
\autoren{S\"oren Fleischer}
\setcounter{aufgabe}{7}
\begin{aufgabe}
\textbf{Praktische Anwendung}
\begin{teilaufgaben}{a)}
\teilaufgabe
Bitte schreibe ein Script, welches ausgibt
\begin{itemize}
\item Als welcher User das Script ausgef\"uhrt wird
\item Auf welchem Host es ausgef\"uhrt wird
\item Welche Environment-Variablen f\"ur das Programm auf was gesetzt sind
\end{itemize}
\teilaufgabe
Starte dieses Script lokal, und submitte es sp\"ater auf einem geeigneten Cluster mit dem entsprechenden Batch-System.
\end{teilaufgaben}
\end{aufgabe}
\begin{aufgabe}
\textbf{Praktische Anwendung II}
Ein Service auf einem Server hat vor kurzem einige Fehlermeldungen in seine Logdatei geschrieben. Diese Logdatei ist einige GB gross.
Die Fehlermeldungen sind zum Gl\"uck so, dass man sie als Strings suchen kann.
\begin{teilaufgaben}{a)}
\teilaufgabe
Wie kann man sich ohne viel M\"uhe alle Zeilen anzeigen lassen, in denen die Fehlermeldung auftritt?
\teilaufgabe
Es sind zu viele Eintr\"age, als dass sie auf eine Bildschirmseite passen. Wie kann man selbstbestimmt durch das Ergebnis scrollen?
\teilaufgabe
Wie kann man herausfinden, wie oft diese Fehlermeldung in der Logdatei auftritt?
\teilaufgabe
Wie kann man zahlenm\"a{\ss}ig angeben, ob es sich bei der Fehlermeldung um ein relativ h\"aufiges oder seltenes Ereignis handelt?
\end{teilaufgaben}
\end{aufgabe}
\end{document}
\ No newline at end of file
%=====================================================================================================================================
% Class uebungsblatt by Igor Akkerman (c)2004,2005,2006
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License (latest version).
%
% The latest version of this license can be found at
% http://www.latex-project.org/lppl.txt
%=====================================================================================================================================
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{uebungsblatt}[2006/10/24 by Igor Akkerman (c)2004,2005,2006 v1.5.0 Klasse zum Setzen von Uebungsblaettern]
%=====================================================================================================================================
% Dokumentklassen-Optionen:
% aufgeqno - In Gleichungsnummern soll die Aufgabennummer auftauchen (<Aufgabennummer>.<Gleichungsnummer>)
% fleqn - Gleichungen werden nicht zentriert sondern linksbündig angezeigt
% leqno - Gleichungsnummern werden nicht rechts sondern links von der Gleichung angezeigt
% 10pt - Schriftgröße: 10pt (Standard)
% 11pt - Schriftgröße: 11pt
% 12pt - Schriftgröße: 12pt
%--------------------------
% \begin{aufgabe} ... \end{aufgabe}
% Aufgabe ohne Teilaufgaben
%--------------------------
% \begin{aufgabe}[<teilaufgabenlabelmuster>] ... \end{aufgabe}
% Aufgabe mit Teilaufgaben
%
% <Teilaufgabennummerierung> wie im Paket counterlabelpattern definiert
%--------------------------
%--------------------------
% \begin{aufgabe*}{<aufgabentitel>} ... \end{aufgabe*}
% Aufgabe mit Titel <aufgabentitel> ohne Teilaufgaben
%--------------------------
% \begin{aufgabe*}[<teilaufgabenlabelmuster>]{<aufgabentitel>} ... \end{aufgabe*}
% Aufgabe mit Titel <aufgabentitel> mit Teilaufgaben
%
% <Teilaufgabennummerierung> kann beliebige Werte enthalten.
%--------------------------
% Der Aufgabenzähler wird NICHT erhöht!
%--------------------------
%--------------------------
% \begin{teilaufgaben}{<teilaufgabenlabelmuster>} ... \end{teilaufgaben}
% Liste der Teilaufgaben
%--------------------------
%--------------------------
% \teilaufgabe
% beginnt eine neue Teilaufgabe
%--------------------------
%--------------------------
% \begin{teilteilaufgaben}{<teilteilaufgabenlabelmuster>} ... \end{teilteilaufgaben}
% Liste der Teilteilaufgaben
%--------------------------
%--------------------------
% \teilteilaufgabe
% beginnt eine neue Teilteilaufgabe
%--------------------------
% -------------------------------
% Lehrveranstaltungsinformationen
% -------------------------------
% Um Lehrveranstaltungsinformationen, die sich von Blatt zu Blatt derselben
% Lehrveranstaltung nicht verändern, nicht in jede Datei eintragen zu müssen
% Es wird automatisch versucht, die Datei "lv.tex" zu laden, die Angaben zur
% Lehrveranstaltung enthalten kann (Name der LV, Namen der Gruppenmitglieder usw.)
% Die Datei wird zuerst im aktuellen Verzeichnis gesucht. Wird sie dort nicht
% gefunden, wird sie im uebergeordneten Verzeichnis gesucht. Danach wird die
% Suche abgebrochen.
%--------------------------
%--------------------------
% \lvname{<lvname>}
% Setzt den Lehrveranstaltungsnamen auf <lname>.
% Der LV-Name erscheint links oben im Header so wie er hier definiert wird.
% Zum Zeilenumbruch wird \\ verwendet.
% Default: {}
%--------------------------
%--------------------------
% \blatttitel{<titel>}
% Setzt den Blatttitel auf <titel>.
% Zum Zeilenumbruch wird \\ verwendet.
% Der Titel wird im Kopf und bei Beginn des Übungsblatts verwendet.
% Optional kann im Text '\ifinhead{<danntext>}{<sonsttext>}' eingefügt werden,
% was <danntext> lediglich im Kopf an der Stelle erzeugt, ansonsten wird der <sonsttext> erzeugt
% Default: Bearbeitung des \theblatt.~Übungsblatts\ifinhead{\\}{}
%--------------------------
%--------------------------
% \blattnummer{<nummer>}
% Setzt den Wert des Zählers blatt auf <nummer>.
%--------------------------
%--------------------------
% \ifinhead{<danntext>}{<sonsttext>}
% <danntext> im inhead-Modus; <sonsttext> sonst
%--------------------------
%--------------------------
% \autoren{<autoren>}
% Setzt die Namen der Autoren auf <autoren>.
% Die Autoren erscheinen rechts oben im Header so wie sie hier definiert werden.
% Default: {}
%--------------------------
%--------------------------
% \aufgabelabel{<labelmuster>}
% Setzt das Label der Aufgaben auf <labelmuster>.
% <labelmuster> ist ein Muster wie definiert im Paket counterlabelpattern.
%--------------------------
% -----------------
% definierte Zähler
% -----------------
% uebungsblatt : Nummer des Übungsblatts
% Die Nummer wird automatisch bestimmt aus dem Dateinamen der Hauptdatei.
% Dazu muss der Dateiname mit der Blattnummer beginnen.
% (Vorsicht bei Leerzeichen: Der Dateiname könnte mit Anführungszeichen beginnen.)
% aufgabe : Nummer der aktuellen Aufgabe
% teilaufgabe : Nummer der aktuellen Teilaufgabe
% (\theteilaufgabe liefert die korrekte Darstellung)
%=====================================================================================================================================
% Initialisierungsteil
\RequirePackage{ifthen}
\newboolean{aufgeqno}
\AtBeginDocument{%
\chead{\@inhead{\textbf{\@blatttitel}}}%
\addtocounter{aufgabe}{-1}% Aufgabennummer zurücksetzen
\vspace*{-\baselineskip}%
\par%
\hspace*\fill\begin{Large}\textbf{\@blatttitel}\end{Large}\hspace*\fill%
\ifset{\@blattuntertitel}{%
\\[.5\baselineskip]%
\hspace*\fill\begin{large}\textbf{\@blattuntertitel}\end{large}\hspace*\fill%
}%
\par%
}
\AtEndDocument{%
\label{lastpage}%
}
% Deklaration von Optionen
\DeclareOption {aufgeqno} {\setboolean{aufgeqno}{true}}%
\DeclareOption {10pt} {\PassOptionsToClass{10pt}{akktecdoc}}%
\DeclareOption {11pt} {\PassOptionsToClass{11pt}{akktecdoc}}%
\DeclareOption {12pt} {\PassOptionsToClass{12pt}{akktecdoc}}%
% Ausfuehrung von Optionen
\ProcessOptions
% Laden von Paketen
\LoadClass[widepage,longpage]{akktecdoc}
\RequirePackage{akkgerman}
\RequirePackage{uebungsblatt}
\ifthenelse{\boolean{aufgeqno}} {%
\RequirePackage{amsmath}%
\numberwithin{equation}{aufgabe}% Nummerierung der Gleichungen: (<Nr. der Aufgabe>.<Nr. der Gleichung>)%
}{}
% -----------------
% Initialisierungen
% -----------------
% Seiteneinstellungen
\pagestyle{fancy}
\setlength \headheight {3\baselineskip} % max. Anzahl der Zeilen im Header: 3
\setlength \headsep {\baselineskip} % Abstand zum Text
\cfoot{\thepage/\pageref{lastpage}} % im Footer: Seitenzahl
% Defaultwerte
\blatttitel{Übungsblatt \theblatt\ifinhead{\\}{}}
\aufgabelabel{{Aufgabe }1}
% Bestimmen der Übungsblatt-Nummer
\extractnumber \jobname {blatt}
\typeout{[uebungsblatt] Dateiname: \jobname}
\typeout{[uebungsblatt] Uebungsblattnummer: \theblatt}
% Laden der Datei lv.tex
\typeout{[uebungsblatt] Suche Datei 'lv.tex'}
\InputIfFileExists {lv.tex} {
\typeout{[uebungsblatt] Datei 'lv.tex' in aktuellem Verzeichnis gefunden. Datei wird geladen.}
}
{
\InputIfFileExists {../lv.tex} {
\typeout{[uebungsblatt] Datei 'lv.tex' in übergeordnetem Verzeichnis gefunden. Datei wird geladen.}
}
{
\typeout{[uebungsblatt] Datei 'lv.tex' nicht gefunden.}
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment