Du hast gleich mehrere Probleme:
- Im Wert von caption hast Du einen Unterstrich, »_«. Das ist ein Mathebefehl und deshalb nur im Mathemodus erlaubt. Du willst vermutlich \_.
- Du hast im optionalen Argument von lstlisting einfach mal eben irgendwo einen LaTeX-Befehl \label eingestreut. Nimm stattdessen die Option label, die dafür vorgesehen ist.
- Das Paket listings kann nicht mit utf8 umgehen, jedenfalls nicht wenn diese per inputenc bereitgestellt wird.
Für die ersten beiden Probleme habe ich bereits die Lösung genannt. Für das letzte Problem gibt es eine Notlösung (von Markus Kohm) wenn man nur einige wenige Zeichen benötigt:
\documentclass[a4paper,12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{marvosym}
\DeclareInputText{128}{\EUR}
\usepackage[scaled]{helvet}
\renewcommand*\familydefault{\sfdefault}
\usepackage{setspace}
\usepackage[pdftex]{graphicx}
\usepackage{listings}
\usepackage{color}
\usepackage{xcolor}
\lstset{
basicstyle=\ttfamily,
basicstyle=\scriptsize,
keywordstyle=\color{red},
commentstyle=\color{blue},
stringstyle=\color{green},
backgroundcolor=\color{lightgray},
morecomment=[s][\color{blue}]{/*}{*/},
literate={ä}{{\"a}}1 {ö}{{\"o}}1 {ü}{{\"u}}1
{Ä}{{\"A}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1
{ß}{\ss}1,
}
\begin{document}
\begin{onehalfspacing}
Text und chapters etc.
\begin{lstlisting}[caption={\texttt{Linux\_Disk-Wipe}},label=linux-wipe,captionpos=t]
sudo sh -c 'cryptsetup -d /dev/urandom -c aes-xts-plain create delete GERÄT && shred -vzn 0 /dev/mapper/delete && sync && sleep 4 && cryptsetup remove delete'
\end{lstlisting}
text usw.
\end{onehalfspacing}
\end{document}
luximono habe ich übrigens weg gelassen, weil ich den zugehörigen Font gerade nicht installiert habe. utf8x habe ich durch utf8 ersetzte, weil man für Deutsch kein utf8x braucht und utf8x mit diversen Paketen Probleme macht.
Übrigens solltest Du Deine Präambel etwas entrümpeln. So genügt beispielsweise ein Farbpaket vollkommen.
Eine andere Alternative wäre die Verwendung von XeLaTeX oder LuaLaTeX an Stelle von pdfLaTeX. Mit den beiden kann listings nämlich auch UTF8. Man darf dann natürlich weder fontenc noch inputenc verwenden, sondern nimmt fontspec (UTF8 unterstützten XeLaTeX und LuaLaTeX von Haus aus):
\documentclass[a4paper,12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{listings}
\lstset{
basicstyle=\ttfamily,
basicstyle=\scriptsize,
keywordstyle=\color{red},
commentstyle=\color{blue},
stringstyle=\color{green},
backgroundcolor=\color{lightgray},
morecomment=[s][\color{blue}]{/*}{*/},
}
\begin{document}
Text und chapters etc.
\begin{lstlisting}[caption={\texttt{Linux\_Disk-Wipe}},label=linux-wipe,captionpos=t]
sudo sh -c 'cryptsetup -d /dev/urandom -c aes-xts-plain create delete GERÄT && shred -vzn 0 /dev/mapper/delete && sync && sleep 4 && cryptsetup remove delete'
\end{lstlisting}
text usw.
\end{document}
Ich habe dieses Mal alles weggelassen, was für das Beispiel überflüssig ist, um ein echtes vollständiges Minimalbeispiel zu erhalten.