Multiple Sections revised

This commit is contained in:
Uwe Schimanski 2025-01-18 19:42:46 +01:00
parent 124455ed02
commit 6d60de9b8c
13 changed files with 863 additions and 656 deletions

View File

@ -53,9 +53,12 @@ uws@tux>curl -sf "https://www.getlektor.com/installer.py" | sudo python3
uws@tux># Nur das Skript herunterladen
uws@tux>curl -O "https://www.getlektor.com/installer.py"
\end{lstlisting}
\newpage
Eine Hilfe "uber Befehle kann man sich folgenderma"sen anzeigen lassen.
\listBash
\begin{lstlisting}[captionpos=b, caption=Hilfe Commands]
uws@tux>curl cheat.sh/ip
uws@tux>curl cheat.sh/ruby/:Learn
uws@tux>curl cheat.sh/ruby/write
\end{lstlisting}
\end{justify}

View File

@ -1,4 +1,47 @@
\section{Grep}
Für {ttfamily grep} gibt es mehrere Parameter, die man verwenden kann. Nachfolgend eine Auswahl von Parametern.
\begin{longtable}[l]{p{2cm}p{5cm}p{9cm}}
\rowcolor{hellgrau}\multicolumn{1}{l}{\textbf{Kurzform}} & \multicolumn {1}{l}{\textbf{Langform}} & \multicolumn {1}{l}{\textbf{Beschreibung}} \\
\hline
\hline
\endfirsthead
\multicolumn{2}{r}{{\bfseries continued from previous page.}} \\
\rowcolor{hellgrau}\multicolumn{1}{l}{\textbf{Kurzform}} & \multicolumn {1}{l}{\textbf{Langform}} & \multicolumn {1}{l}{\textbf{Beschreibung}} \\
\hline
\hline
\endhead
\multicolumn{2}{r}{{\bfseries Continued on next page}} \\
\endfoot
\caption{Parameter} \\
\endlastfoot
-A num & \verb|--|after-contect=num & Gibt zusätzlich nach dem passenden Suchbegriff die num Zeilen aus \\
-a text & --text & Eine Binäre Datei wird verarbeitet, als wäre sie Text. Entpricht \ver|--|binary-files=text \\
-B num & \verb|--|before-context=num & Gibt zusätzlich vor dem passenden Suchbegriff die num Zeilen aus \\
-b & \verb|--|byte-offset & gibt den Byte-Offset innerhalb der Datei vor jeder gefundenen Zeile an \\
-C num &\verb|--|context=num & gibt zusätzlich NUM Zeilen von Kontext aus. Zwischen zusammenhängende Gruppen von Treffern werden Zeilen mit \verb|""| eingefügt \\
-c & \verb|--|count & Es wird nur die Anzahl der Treffer ausgegeben und nicht die normale Ausgabe \\
-E & \verb|--|extended-regexp & Die extended Variante wird verwendet \\
-e Muster & \verb|--|regexp=Muster & Regular expression Suche \\
-F & \verb|--|fixed-strings & Das übergebene Muster wird als Liste von Zeichenketten interpretiert, die durch Zeilenumbrüche getrennt sind \\
-f Datei & \verb|--|file=Datei & Angabe einer Datei, in der die Suchmuster stehen. Eine pro Zeile \\
-H & \verb|--|with-filename & Bei jedem Treffer wird vorne der Dateinamen ausgegeben \\
-h & \verb|--|no-filename & Keine Ausgabe des Dateinamens am Anfang, wenn es sich um mehrere Dateien handelt \\
-I & \verb|--|binary-files=without-match & Binärdateien werden ausgeschlossen \\
-i & \verb|--|ignore-case & Zwischen Klein- und Großschreibung wird nicht unterschieden \\
-L & \verb|--|files-without-match & Es werden nur die Dateien ausgegeben, auf dehnen das Suchmuster nicht passt. Stopt bei dem ersten Treffer \\
-l & \verb|--|files-with-match & Es werden nur die Dateien ausgegeben, auf dehnen das Suchmuster passt. Stopt bei dem ersten Treffer \\
-n & \verb|--|line-number & An Anfang wird die Zeilenmer ausgegeben \\
-o & \verb|--|only-matching & Nur die passenden Zeichnekette wird ausgegeben \\
-P & \verb|--|perl-regexp & Das Perl Regular expression wird verwendet \\
-q & \verb|--|quiet,\verb|--|silent & Es erfolgt keine Ausgabe, bei dem ersten Treffer wird gestoppt \\
-r & \verb|--|reursive & Auch Unterverzeichnisse werden nach dem Suchmuster durchsucht. Nicht verfolgt werden Symbolische Links \\
-R & \verb|--|derederence-recursive & Wie \verb|--|recursive, nur das Symbolische Links vervolgt werden \\
-v & \verb|--|invert-match & Es werden alle Zeilen ausgegeben, die nicht das Suchmuster enthalten \\
-w & \verb|--|word-regexp & Es werden nur die Zeilen ausgegeben, die aus vollständigen Wörterm nestehen \\
\end{longtable}
%----------------------------------------------------------
% In Farbe
%----------------------------------------------------------
\subsection{In Farbe}
\begin{justify}
Soll die Ausgabe von {\ttfamily grep} in Farbe passieren, so gibt man die Option {\ttfamily -\hspace{0.05cm}-color=auto} mit an. Dauerhaft kann man diese Option in der {\ttfamily .bashrc} einschalten.
@ -46,8 +89,8 @@ Mit {\ttfamily grep} kann man die Optionen {\ttfamily -E} oder {\ttfamily -e} ne
\listBash
\begin{lstlisting}[captionpos=b, caption=Mehrere W"orter Suchen]
uws@tux>grep -i "Manager\|Sales" employee.txt
100 Thomas Manager Sales $5,000
400 Willi Manager Marketing $2,500
100 Thomas Manager Sales 5,000€
400 Willi Manager Marketing 2,500€
uws@tux>grep -i -E "Manager|Sales" employee.txt
@ -56,7 +99,7 @@ uws@tux>egrep -i "manager|sales" employee.txt
uws@tux>grep -e "Manager" -e "Sales" employee.txt
uws@tux>grep -E "Manager.*Sales" employee.txt
100 Thomas Manager Sales $5,000
100 Thomas Manager Sales 5,000€
\end{lstlisting}
%----------------------------------------------------------
% Zeilen Nummer
@ -113,6 +156,16 @@ uws@tux>grep -i service_name tnsnames.ora | grep -v WARTUNG | \
grep -i 'pds[0-9][0-9]' | awk '{print $5}' | sed 's#..$##'
\end{lstlisting}
%----------------------------------------------------------
% Block-Device
%----------------------------------------------------------
\subsection{Block-Device}
Ein Block-Device kann man auch durchsuchen.
\listBash
\begin{lstlisting}[captionpos=b, caption=Block-Device]
uws@tux>cat /dev/sda1 | tr '\0' '\n' | grep -ba 'SuchString'
\end{lstlisting}
\newpage
%----------------------------------------------------------
% Weitere Ausgabe
%----------------------------------------------------------
\subsection{Weitere Ausgabe}

View File

@ -36,6 +36,7 @@ Wurde mit \verb|\usepackage[latin1]{inputenc}| oder \verb|\usepackage[utf8]{inpu
%---------------------------------------------------
\subsection{PDF erstellen}
Aus einer Tex-Datei kann man mit {\ttfamily xelatex} oder {\ttfamily pdflatex} PDF-Dateien erstellen.
\newpage
%---------------------------------------------------
% Subsection: Package ngerman
%---------------------------------------------------
@ -49,7 +50,6 @@ uws@tux>pamac install texlive-langgerman
uws@tux># Debian
uws@tux>sudo apt install texlive-lang-ngerman
\end{lstlisting}
\newpage
%---------------------------------------------------
% Subsection: Solutions
%---------------------------------------------------

View File

@ -29,41 +29,43 @@ In der nachfolgenden Tabelle sind die Unterschiede zwischen Apt-get und Apt aufg
%-------------------------------------------------------------------------------
\subsection{Paket installieren}
\listBash
\begin{lstlisting}[captionpos=b, caption=Paket installieren, label=lst:bash]
\begin{lstlisting}[captionpos=b, caption=Paket installieren]
uws@tux>sudo apt install inxi
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
.
.
uws@tux># Reinstall Paket
uws@tux>sudo apt --reinstall install paket1 paket2
\end{lstlisting}
%-------------------------------------------------------------------------------
% Section: Paket suchen
%-------------------------------------------------------------------------------
\subsection{Paket suchen}
\listBash
\begin{lstlisting}[captionpos=b, caption=Paket suchen, label=lst:bash]
\begin{lstlisting}[captionpos=b, caption=Paket suchen]
uws@tux>sudo apt search inxi
uws@tux>sudo apt content inxi
\end{lstlisting}
%-------------------------------------------------------------------------------
\newpage%-------------------------------------------------------------------------------
% Section: Paket loeschen
%-------------------------------------------------------------------------------
\subsection{Paket l"oschen}
\listBash
\begin{lstlisting}[captionpos=b, caption=Paket l"oschen, label=lst:bash]
\begin{lstlisting}[captionpos=b, caption=Paket l"oschen]
uws@tux>sudo apt remove <paket-name>
uws@tux>sudo apt purge <paket-name>
\end{lstlisting}
\newpage
%-------------------------------------------------------------------------------
% Section: Paket Informationen
%-------------------------------------------------------------------------------
\subsection{Paket Informationen}
\listBash
\begin{lstlisting}[captionpos=b, caption=Paket Informationen, label=lst:bash]
\begin{lstlisting}[captionpos=b, caption=Paket Informationen]
uws@tux>sudo apt show inxi
Package: inxi
State: installed

View File

@ -98,6 +98,17 @@ uws@tux>sudo pacman -Syu --overwrite=true /usr/lib\*/pll-kit-trust.so
\end{lstlisting}
\newpage
%-------------------------------------------------------------------------------
% Section: Paket downgrade
%-------------------------------------------------------------------------------
\subsection{Paket downgrade}
Wird ein Paket von einer bestimmten Version benötigt, so kann man das Paket {\ttfamily manjaro-downgrade} installieren. Damit kann man ein Paket mit der benötigten Version installiert werden.
\listBash
\begin{lstlisting}[captionpos=b, caption=Paket downgrade]
uws@tux>pamac install manjaro-downgrade
uws@tux>#sudo manjaro-downgrade thunderbirdq
\end{lstlisting}
%-------------------------------------------------------------------------------
% Section: Paket auflisten
%-------------------------------------------------------------------------------
\subsection{Paket auflisten}

View File

@ -10,8 +10,41 @@ iface enp0s3 inet static
address 10.81.12.150
netmask 255.255.255.0
gateway 10.81.12.1
dns-search localnet
dns-nameserver 10.81.12.200
\end{lstlisting}
Die Zeile {\ttfamily iface enp0s3 inet dhcp} aus der Datei auskommentieren. In diesem Beispiel hat das Interface den Namen {\ttfamily eth0}. Er kann bei ihnen auch anders lauten.
Die Zeile {\ttfamily iface enp0s3 inet dhcp} aus der Datei auskommentieren. In diesem Beispiel hat das Interface den Namen {\ttfamily enp0s3}. Er kann bei ihnen auch anders lauten. Man kann auch in der Datei interfaces die Zeilen für enp0s3 auskommentieren und in dem Verzeichnis /etc/network/interface.d eine Datei mit dem obrigen Inhalt erstellen. Die Nameserver werden am besten in der Datei /etc/resolf.conf eingetragen. Zum Abschluß muss das Netzwerk einmal neu gestartet werden.
\begin{lstlisting}[captionpos=b, caption=Network restart]
uws@tux>sudo systemctl restart networking
\end{lstlisting}
\end{justify}
\newpage
%---------------------------------------------------------------------------
% Subsection: NetworkManager
%---------------------------------------------------------------------------
\subsection{Network Manager}
Auf verschiedenen Linux Systemen, wie z.B. Manjaro, wird das Netzwerk vom Network Manager verwaltet. In dem Verzeichnis /etc/NetworkManager/system-connections befinden sich die Konfigurations-Dateien.
\begin{lstlisting}[captionpos=b, caption=Example]
[connection]
id=Kabelgebundene Verbindung 1
uuid=7671b9d8-2136-3c85-a959-3ad2096e446b
type=ethernet
autoconnect-priority=-100
[ethernet]
[ipv4]
address1=192.168.70.130/24,192.168.70.200
dns=192.168.70.200;
dns-search=seabaernet;
method=manual
[ipv6]
addr-gen-mode=stable-privacy
method=auto
[proxy]
\end{lstlisting}
%---------------------------------------------------------------------------
% Subsection: SystemD
%---------------------------------------------------------------------------
\subsection{SystemD}
Auch unter SystemD kann man ein Netzwerk einrichten und verwalten. Siehe hier unter {\\ttfamily 9.3 Network} für weitere Informationen nach.

View File

@ -43,6 +43,7 @@
\input{Kapitel8/Battery}
\newpage
\input{Kapitel8/Hardware}
\newpage
\input{Kapitel8/Spracheinstellung}
\newpage
\input{Kapitel8/Benachrichtigungen}

View File

@ -1,9 +1,79 @@
\section{Spracheinstellung}
\begin{justify}
Die eingestellte Sprache kann man in der Variable {\ttfamily LANG} abfragen.
Die eingestellte Sprache kann man in der Variable {\ttfamily LANG} abfragen. Alle Werte befinden sich in der Datei locale.conf im /etc Verzeichnis.
\listBash
\begin{lstlisting}[captionpos=b, caption=Sprache, label=lst:bash]
\begin{lstlisting}[captionpos=b, caption=Sprache]
uws@tux>echo $LANG
de_de.UTF-8
uws@tux>cat /etc/locale.conf
LANG=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_MONETARY=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_NUMERIC=de_DE.UTF-8
LC_PAPER=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
\end{lstlisting}
Mit dem Command {\ttfamily locale} kann man sich die akuellen Einstellungen anzeigenlassen. Eine Auswahl an Parametern wird nachfolgend aufgeslistet.
\begin{itemize}
\item -a, --all-locales - Auflistung aller verfügbaren Sprachen
\item -m, --charmaps - Anzeige der verfügbares Zeichentabellen
\item -k --keyword-name - Ausgabe des angegebenen Schlüsselwort
\item -v, --verbose - Ausführliche Ausgabe
\item --usage - Syntax Anzeige
\end{itemize}
\listBash
\begin{lstlisting}[captionpos=b, caption=locale Beispiele]
uws@tux>locale
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_ALL=
uws@tux>locale -a | head -n 5
aa_DJ
aa_DJ.utf8
aa_ER
aa_ER.utf8
aa_ER.utf8@saaho
uws@tux>locale -m | head -n 5
ANSI_X3.110-1983
ANSI_X3.4-1968
ARMSCII-8
ASMO_449
BIG5locale -k LC_TIME | head -n 5
abday="So;Mo;Di;Mi;Do;Fr;Sa"
day="Sonntag;Montag;Dienstag;Mittwoch;Donnerstag;Freitag;Samstag"
abmon="Jan;Feb;Mär;Apr;Mai;Jun;Jul;Aug;Sep;Okt;Nov;Dez"
mon="Januar;Februar;März;April;Mai;Juni;Juli;August;September;Oktober;November;Dezember"
am_pm=";"
uws@tux>
\end{lstlisting}
Mit dem Befehl {\ttfamily localectl} kann man die Einstellungen ändern und auch abfragen.
\listBash
\begin{lstlisting}[captionpos=b, caption=localectl]
uws@tux>localectl status
System Locale: LANG=de_DE.UTF-8
VC Keymap: de
X11 Layout: de
uws@tux># Set Lang
uws@tux>sudo localectl set-locale LANG=uws_US.UTF-8
uws@tux># Or
uws@tux>sudo update-locale LANG=LANG=us_US.UTF-8
\end{lstlisting}
\end{justify}

View File

@ -15,10 +15,19 @@ Die Syntax kann man sich mit dem folgenden Satz beschrieben:
\end{itemize}
\listBash
\begin{lstlisting}[captionpos=b, caption=Syntax sudo]
# User
User Hostname = (ZielUser) Einstellungen: Befehl, Befehl
# Group
%wheel ALL=(ALL) ALL
\end{lstlisting}
Anstelle eines Users kann man auch eine Gruppe angeben, die mit einem vorangestellten
Prozentzeichen definiert werden.
Prozentzeichen definiert werden.\\
Ein Syntax Check der Datei kann man mit der Option \verb|--|check durchführen.
\begin{lstlisting}[captionpos=b, caption=Syntax Check]
uws@tux>sudo visudo --check --file /etc/sudoers.d/my-sudo
/etc/sudoers.d/my-sudo: Analyse OK
\end{lstlisting}
%-------------------------------------------------------------------------------
% Section: Alias
%-------------------------------------------------------------------------------
@ -42,9 +51,10 @@ Folgende Alias Typen gibt es:
\listBash
\begin{lstlisting}[captionpos=b, caption=Beispiel Alias]
Cmnd_Alias CMD_SHUTDOWN = /sbin/shutdown, !/sbin/init *, /sbin/init 0
Host_Alias WEB_SERVER = websrv201, websrv202, websrv203
User_Alias WEB_ADMINS = uwe, klaus, jan, tim
\end{lstlisting}
In dem Beispiel kann ein Shutdown durchgef"uhrt werden, aber kein /sbin/init Befehl, bis auf /sbin/init 0. Die Negation wird mit einem vorangestellten Ausrufezeichen eingeleitet.
\newpage
%-------------------------------------------------------------------------------
% Section: Einstellungen
%-------------------------------------------------------------------------------
@ -64,7 +74,7 @@ In der folgenden "Ubersicht gibt es die Ausf"uhrungsbeschr"ankungen.
%-------------------------------------------------------------------------------
% Section: Beispiele
%-------------------------------------------------------------------------------
\subsection{Beispiele}
\subsection{Beispiele Sudoers}
Alle User d"urfen einen Befehl ohne Passwort Abfrage ausf"uhren, au"ser der User harry.
\listBash
\begin{lstlisting}[captionpos=b, caption=Beispiel harry]
@ -87,12 +97,15 @@ Cmnd_Alias CMD_UPDATE = /usr/bin/zypper, /usr/bin/zypper pchk, !/usr/bin/zypper
Nun folgen ein paar Beispiele, wie man sudo verwenden kann.
\listBash
\begin{lstlisting}[captionpos=b, caption=sudo anwenden]
uws@tux># Befehle auflisten, die man ausführen darf
uws@tux># Befehle auflisten, die man ausfuehren darf
uws@tux>sudo -l
uws@tux># Zu root wechseln
uws@tux>sudo -i
uws@tux># Privilegierte Shell oeffnen
uws@tux>sudo -s
uws@tux># Eine Datei editieren
uws@tux>sudoedit /etc/hosts
\end{lstlisting}

View File

@ -141,7 +141,7 @@ uws@tux>cat /etc/systemd/network/20-static-lan.network
# Network configuration for systemd
# Valid values for each section predefined
# More infos:
# https://wiki.archlinux.org/index.php/Systemd-networkd
# https://wiki.archlinux.org/title/Systemd-networkd
#----------------------------------------
[Match]
Name=enp4s0

View File

@ -522,6 +522,22 @@ root@tux>rm /var/run/utmp
root@tux>touch /var/run/utmp
\end{lstlisting}
%-------------------------------------------------------------------------------
% Subsection: Tastaturlayout
%-------------------------------------------------------------------------------
\subsection{Tastaturlayout}
Wird eine Verbindung von z.B. einem iPad mit externer Tastatur aufgebaut und in der Shell ist dann das Englische Layout aktiv, so ist in der Datei {\ttfamily /etc/X11/xorg.conf.d/00-keyboard.conf} die Zeile mit {\ttfamily Identifier} auf {\ttfamily Keyboard Defaults} zu ändern. Ist die Datei nicht vorhanden, die Datei mit folgendem Inhalt erstellen:
\listBash
\begin{lstlisting}[captionpos=b, caption=00-keyboard.conf]
uws@tux>cat /etc/X11/xorg.conf.d/00-keyboard.conf
# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
Identifier "Keyboard Defaults"
MatchIsKeyboard "on"
Option "XkbLayout" "de"
EndSection
\end{lstlisting}
%-------------------------------------------------------------------------------
% Subsection: Beispiele
%-------------------------------------------------------------------------------
\subsection{Beispiele}

Binary file not shown.

File diff suppressed because it is too large Load Diff