Archiv der Kategorie: Computer und Internet

Eine Sammlung der Beitrage rund um Computer und Internet

Spamassassin mit Postfix unter Debian 7 Wheezy

Dies ist der zweite Teil in der Anleitung zu Postfix, also ist die Fortsetzung zu Postfix unter Debian 7 installieren. Diese Anleitung fügt nun den Spamfilter Spamassassin zu Postfix hinzu. Für mich war es auch das erste Mal, aber die Konfiguration ging schneller, als gedacht.

Spamassassin wird dabei so konfiguriert, dass Spam zwar als Spam markiert wird, aber keine Email gelöscht wird. Das Filtern übernimmt dann euer Mailprogramm.

Voraussetzungen

Ihr benutzt die neuste Version von Debian 7 und habt Postfix bereits installiert. Ob dies nach der oben genannten Anleitung geschehen ist oder nicht, ist zunächst egal.

Spamassassin installieren

Zunächst installieren wir uns Spamassassin:

aptitude update
aptitude install spamassassin spamc

Das war’s auch schon. Es werden natürlich viele benötigte Pakete mit installiert, aber der Overhead hält sich in Grenzen.

User mit beschränkten Rechten erstellen

Spamassassin läuft standardmäßig mit root Rechten. Da dies eine Sicherheitslücke ist und einfach zu beheben ist, erstellen wir zunächst einen eingeschränkten Benutzer und Gruppe:

groupadd -g 5555 spamd
useradd -u 5555 -g spamd -s /sbin/nologin -d /usr/local/spamassassin spamd
mkdir -p /usr/local/spamassassin/log
chown spamd:spamd -R /usr/local/spamassassin

Spamassassin konfigurieren

Die Konfigurationsdatei zu Spamassassin liegt unter /etc/default/spamassassin. Öffnet die Datei mit einem Editor eurer Wahl und passt die Konfigurationsdatei wie folgt an:

# /etc/default/spamassassin
# Duncan Findlay

# WARNING: please read README.spamd before using.
# There may be security risks.

# Change to one to enable spamd
ENABLED=1
SPAM_HOME="/usr/local/spamassassin"

# Options
# See man spamd for possible options. The -d option is automatically added.

# SpamAssassin uses a preforking model, so be careful! You need to
# make sure --max-children is not set to anything higher than 5,
# unless you know what you're doing.

OPTIONS="--create-prefs --max-children 5 --helper-home-dir ${SPAM_HOME} --username spamd"

# Pid file
# Where should spamd write its PID to file? If you use the -u or
# --username option above, this needs to be writable by that user.
# Otherwise, the init script will not be able to shut spamd down.
PIDFILE="${SPAM_HOME}/spamd.pid"

# Set nice level of spamd
#NICE="--nicelevel 15"

# Cronjob
# Set to anything but 0 to enable the cron job to automatically update
# spamassassin's rules on a nightly basis
CRON=0

Die Kommentare sollten alle Einstellungen bereits ausreichend erklären. Nun bearbeiten wir noch die Einstellungen von Spamassassin in /etc/spamassassin/local.cf
Ich habe hier nur die Teile aufgeführt, die ich aktiviert oder verändert habe. Wiedermal sollten die Kommentare alles erklären.

#   Add *****SPAM***** to the Subject header of spam e-mails
#
rewrite_header Subject *****SPAM*****

#   Save spam messages as a message/rfc822 MIME attachment instead of
#   modifying the original message (0: off, 2: use text/plain instead)
#
report_safe 0

#   Set the threshold at which a message is considered spam (default: 5.0)
#

required_score 2.0
#   Use Bayesian classifier (default: 1)
#
use_bayes 1

#   Bayesian classifier auto-learning (default: 1)
#
bayes_auto_learn 1

Das wars‘ auch schon mit der Konfiguration von Spamassassin. Nun muss lediglich Spamassassin noch in Postfix integriert werden.

Spamassassin in Postfix integrieren

Damit die Mails auch von Spamassassin „betrachtet“ werden können, müssen wir Postfix noch nicht konfigurieren. Dazu muss die Datei /etc/postfix/master.cf angepasst werden:
Der Eintrag

smtp      inet  n       -       -       -       -       smtpd

muss wie folgt ergänzt werden:

smtp      inet  n       -       -       -       -       smtpd
        -o content_filter=spamassassin

Am Ende der Datei noch folgendes ergänzen:

spamassassin unix -     n       n       -       -       pipe
        user=spamd argv=/usr/bin/spamc -f -e
        /usr/sbin/sendmail -oi -f ${sender} ${recipient}

Tada! Das wars. Nun nur noch alles neustarten und fertig ist unser System.

/etc/init.d/spamassassin restart
/etc/init.d/postfix restart

Spamassassin testen

Natürlich wollen wir jetzt auch gleich mal testen, ob Spam richtig erkannt wird. Beobachtet zunächst die Logdatei:

tail -f /var/log/mail.info

Nun senden eine Email an euren Mailserver mit folgendem Inhalt:

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

Die Mail wird dann von Spamassassin automatisch erkannt und mit *****SPAM***** deklariert. Achtung: Die üblichen Mailprogramme sortieren die Mails gleich automatisch aus.

Fertig. Nun läuft Spamassassin und Spam wird automatisch aussortiert. Spamassassin holt sich jede Nacht die neusten Regeln und hält sich selbst aktuell.

Wie immer würde ich mich über Kritik, Anregungen und Kommentare jeglicher Art freuen :).

Redmine 2.5.0 auf Debian 7 Wheezy mit Apache Passenger

Heute gibts mal wieder eine kleine Anleitung. Dieses mal installieren wir Redmine 2.5.0 auf Debian 7 Wheezy mit Apache und dem Applikationsserver Passenger. Das Installieren von Redmine ist immer ein riesen Heckmeck aber man kommt einigermaßen gut zurecht wenn man ein paar Kleinigkeiten beachtet. Freut euch auf das erste Update der Software ;), da geht dann wieder alles von vorne los. Nichts desto trotz ist Redmine einfach genial für das Verwalten verschiedenster Projekte. Mit dieser Anleitung könnt ihr eine frische Installation erstellen oder eine alte Version migrieren. Funktioniert beides wunderbar und beide Wege sind in dieser Anleitung beschrieben.

Benötigte Pakete installieren

Ich setzte hier mal voraus, dass ihr bereits einen Debian 7 Server mit LAMP-Konfiguration aufgesetzt habt. Es fehlen lediglich ein paar Pakete und Gems für Ruby.

aptitude install ruby libapache2-mod-passenger libmagickwand-dev libmagickcore-dev ruby1.9.3 libmysqlclient-dev imagemagick
gem install bundler
bundle install --without development test

Mit den Befehlen haben wir auch gleich den bundler installiert und mit „bundle install –without development test“ haben wir alle gems installiert die für die Redmine-Installation nötig sind.

Redmine herunterladen und entpacken

Einfach auf www.redmine.org den aktuellen Downloadlink suchen und kopieren. Mit dem Befehl

wget http://www.redmine.org/releases/redmine-2.5.0.tar.gz

Dann die tar.gz-Datei herunterladen und mit

tar -xzf redmine-2.5.0.tar.gz

entpacken. Ich habe das Verzeichnis /sr/www/htdocs/ gewählt. Für die richtigen Rechte muss noch folgender Befehl ausgeführt werden

chown -R www-data:www-data redmine-2.5.0

Redmine konfigurieren

Nun geht es los und wir müssen uns mal um die Konfiguration kümmern. In dieser Anleitung setze ich voraus, dass ihr bereits eine Datenbank erstellt habt. Für den geübten Linuxnutzer empfehle ich die Konsole ansonsten geht auch mal phpmyadmin und andere Programme zum administrieren der Datenbanken. Dazu kopieren wir uns die Beispiel-Config-Datei und bearbeiten diese:

cd redmine-2.5.0/config
cp database.yml.example database.yml
vim database.yml

Folgende Einstellungen müssen entsprechend der Datenbank angepasst werden:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: ""
  encoding: utf8

Es ist dabei egal ob ihr eine leere Datenbank erstellt oder eine alte Redmineversion auf eine neue Version migrieren wollte. Redmine kommt auf jeden Fall damit klar. Für die Migration einfach die alte Datenbank einstellen. Der nächste Schritt migriert dann auf die neue Version.

Redmine benötigt auch ein paar neue Ordner.  Dazu einfach in den Redmine-Root-Ordner gehen und folgende Befehle ausführen:

mkdir tmp tmp/pdf public/plugin_assets
chown -R www-data:www-data files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets

Wer eine Installation migriert muss nun auch die Files aus der alten Installation übertragen. Dazu einfach den Ordner files kopieren (und eventuell die Rechte anpassen). Außerdem sollten auch die Plugins nicht vergessen werden.

Redmine installieren

Nun legen wir noch einen secret_token an. Dieser wird für die Sicherheit von Redmine benötigt. Anschließend wird die Datenbank gefüllt. Es ist dabei egal ob es sich um eine alte Datenbank aus einer älteren Version handelt die ihr migrieren wollt oder um eine leere Datenbank. Redmine wird alles für euch erledigen. Zum Ausführen der Befehle muss in den Ordner von Redmine gewechselt werden.

rake generate_secret_token
RAILS_ENV=production rake db:migrate

Anschließend wollen wir erst einmal testen ob alles geklappt hat. Dazu einfach folgenden Befehl ausführen:

ruby script/rails server webrick -e production

Öffnet einfach einen Browser mit der Domain bzw. der IP-Adresse eures Servers und dem Port 3000 (z.B. www.beispielseite.de:3000 ). Wenn alles geklappt hat sollte das Loginfenster erscheinen. Wer eine alte Installation migriert hat sollte sich mit den alten Benutzerdaten wieder einloggen können.

Redmine mit Passenger und Apache2 ausführen

Nun wollen wir aber das ganze mit Apache2 und dem Application-Server Passenger ausführen. Dazu müssen zunächst folgende Pakete zusätzlich installiert werden:

aptitude install build-essential apache2-prefork-dev libapr1-dev libssl-dev zlib1g-dev libcurl4-openssl-dev libssl-dev libapr1-dev libaprutil1-dev rubygems
gem install passenger

Und anschließend sollte der folgende Befehl ohne Probleme ausführbar sein. Sollte dennoch etwas fehlen, wird der Befehl erklären was weiter zu machen ist.

passenger-install-apache2-module

Am Ende der Installation wird eine Ergänzung zur Konfiguration ausgegeben. Dies sollte ungefähr so aussehen:

LoadModule passenger_module /var/lib/gems/1.9.1/gems/passenger-4.0.38/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
   PassengerRoot /var/lib/gems/1.9.1/gems/passenger-4.0.38
   PassengerDefaultRuby /usr/bin/ruby1.9.1
</IfModule>

Der Code wird vom Programm automatisch am Ende ausgegeben und kann leicht abweichen. Dieser Teil muss in folgenden Dateien ergänzt werden /etc/apache2/mods-available/passenger.load und /etc/apache2/mods-available/passenger.conf (einfach mit vim öffnen und unten anhängen bzw ersetzen). Nun aktivieren wir den passenger-mod mit dem Befehl:

a2enmod passenger

Sollte etwas mit der Konfiguration nicht geklappt haben startet der Apache2-Server nicht. Beachtet hier die Ausgabe des Apache-Log-Files bzw. die Fehlermeldungen. Jetzt müssen wir noch den guten alten Apache richtig konfigurieren. Hier ist eurer Fantasie freien Lauf gelassen. Ich möchte redmine als Subdomain laufen lassen. Dazu muss die entsprechende Datei unter /etc/apache2/sites-available/ konfigurieren. Mein Beispiel sieht wie folgt aus:

#################################
#                               #
#      redmine.website.de       #
#                               #
#################################

<VirtualHost *:80>
        ServerName redmine.website.de
        DocumentRoot /srv/www/htdocs/website.de/redmine/public

        #Extra logs for this page
        ErrorLog /var/log/apache2/website.de/redmine/error.log
        LogLevel warn
        CustomLog /var/log/apache2/website.de/redmine/access.log combined

        #Redirects http:// to https://
        Redirect permanent / https://redmine.website.de/
</VirtualHost>

<VirtualHost *:443>
        ServerName redmine.website.de
        ServerAdmin mail@website.de

        DocumentRoot "/srv/www/htdocs/website.de/redmine/public"

        #Extra logs for this page
        ErrorLog /var/log/apache2/website.de/redmine/error.log
        LogLevel warn
        CustomLog /var/log/apache2/website.de/redmine/access.log combined

        #DefaultInitEnv RAILS_ENV production
        RailsBaseURI /redmine
        <Directory /srv/www/htdocs/website.de/redmine/public>
                Options Indexes FollowSymLinks -MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        SSLEngine On
        SSLCertificateFile /etc/apache2/ssl/website.de/redmine.website.de.crt
        SSLCertificateKeyFile /etc/apache2/ssl/00basic-certificates/private.pem
        SSLCACertificateFile /etc/apache2/ssl/00basic-certificates/ca.pem
        SSLCertificateChainFile /etc/apache2/ssl/00basic-certificates/sub.class2.server.ca.pem
        SSLHonorCipherOrder On
        SSLProtocol all -SSLv2
        SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:!RC4:HIGH:!MD5:!aNULL:!EDH
</VirtualHost>

Mit dieser Konfiguration wird die gesamte Kommunikation über eine sichere SSL-Verbindung abgehandelt und die Seite ist dann unter https://redmine.website.de erreichbar. Jetzt nur noch ein einziges mal den Apache2-Server neustarten und wir sind fertig.

apachectl restart

Wir haben fertig!

Ich hoffe ich konnte euch mit dieser kleinen Anleitung ein bisschen Hilfe geben. Redmine ist wirklich super und die etwas komplizierte Installation sollte euch nicht abschrecken. Wenn ihr Fehler findet, Fragen habt oder eine Methode wisst wie es besser und einfacher geht, schreibt mir bitte. Vielleicht können wir die Anleitung gemeinsam noch weiter verfeinern :).

Programmcode in Lyx und Latex sauber darstellen

Tja es gibt immer wieder was zu lernen und heute ist es das Programmlisting bei LyX bzw. LaTeX.

Wer kennt es nicht? Man hat einen schönen Programmeditor und hat sich durchs Programmieren schon so an das Codelayout gewöhnt, dass man es am liebsten gleich bei seiner Arbeit verwenden möchte. Gesagt getan. Mit folgendem Code erreicht man das ganz einfach.

%Farben fuer Programmlisting
\usepackage{listings,xcolor}
\definecolor{pl_background}{rgb}{0.95,0.95,0.95}
\definecolor{pl_comment}{rgb}{0.12, 0.38, 0.18 }
\definecolor{pl_ifelse}{rgb}{0.74,0.74,.29}
\definecolor{pl_keyword}{rgb}{0.37, 0.08, 0.25}
\definecolor{pl_string}{rgb}{0.06, 0.10, 0.98}
% Vordefiniertes Programmlisting
\lstset{
language = php,
basicstyle = \small\sffamily,
backgroundcolor = \color{pl_background},
stringstyle = \color{pl_string},
keywordstyle = \color{pl_keyword}\bfseries,
commentstyle = \color{pl_comment}\itshape,
frame = lrbt,
numbers = left,
showstringspaces = false,
breaklines = true,
xleftmargin = 15pt,
emph = [1]{php},
emphstyle = [1]\color{black},
emph = [2]{if,and,or,else},
emphstyle = [2]\color{pl_ifelse}}

Dieses Beispiel verwendet PHP als Programmcode und lehnt sich an das Design von Eclipse an. Das Ergebnis sieht man dann in folgendem Screenshot:

Programmlisting in Latex und Lyx mit Eclipse-Style

Der oben gezeigte Code muss in den Latex-Vorspann eingefügt werden. Bei Lyx geht das einfach über Dokument –> Einstellungen –> Latex Vorspann. Die Latex-Geeks wissen das sicher auch bei Latex ;).

Ein Programmlisting kann entweder über Einfügen –> Programmlisting eingefügt werden, oder über Einfügen –> Datei –> Unterdokument. Die zweite Methode ist deutlich angenehmer, weil hier die Formatierung (Einrückungen, Leerzeichen etc) der eingefügten Dateien übernommen wird.

Zum Ändern der Farben empfehle ich auch noch diese Seite: http://www.farb-tabelle.de/de/rgb2hex.htm Damit kann man schnell und einfach Farben in den RGB-Raum übersetzten.

Beim Einfügen des Programmlistings per externe Datei, beachtet bitte auch die zwei Felder für den Untertitel (Legende) des Listings und die Marke um sich im Text darauf beziehen zu können:

Programmlisting in Lyx mit Marke und Legende

Ich hoffe ich konnte dem einen oder anderen weiterhelfen. Fragen, Anregungen und Kommentare sind herzlich willkommen :).

Litecoin-QT für Ubuntu 13.10

Heute gibts nur eine kurze Schnellanleitung für das installieren von Litecoin-QT für Ubuntu 13.10. Litecoin QT ist ein Wallet für Litecoins und es gibt davon ein Linux-Paket… Wer das Programm aber nicht hässlich über die Konsole starten will, kann dieser Anleitung folgen.

Download

Erst mal das Programm herunterladen: Download Litecoin QT für Linux

Entpacken und Verzeichnis verschieben

Dann erst mal das Programm entpacken und an einen Ort eurer Wahl verschieben (ich habe /opt/ gewählt).

cd Downloads
tar -xvf litecoin-0.8.6.2-linux.tar.xz
sudo mv litecoin-0.8.6.2-linux /opt/

Hier kann sich eure Version natürlich von meiner unterscheiden. Im Ordner /opt/litecoin-0.8.6.2-linux befindet sich der der order „bin“ in diesen verstecken sich die verschiedenen Versionen für 32 und 64 Bit.

Im Folgenden müsst ihr euch für eine Version entscheiden. Also 32-Bit oder 64-Bit. Meine Beispielcodes sind ab sofort für die 64-Bit Version. Ab jetzt kann litecoin-qt mit folgendem Befehl gestartet werden:

/opt/litecoin-0.8.6.2-linux/bin/64/./litecoin-qt

Nun fügen wir noch einen Symlink hinzu, um das Programm bequem per Konsole zu starten:

sudo ln -s /opt/litecoin-0.8.6.2-linux/bin/64/litecoin-qt /usr/bin/litecoin

Ab jetzt könnt ihr das Programm einfach durch eingeben von „litecoin“ in der Konsole starten. Aber wir sind immer noch nicht am Ziel angelangt. Wir wollen einen schönen Starter für Gnome bzw. Unity. Dazu einfach folgendes in die Datei „/usr/share/applications/litecoin.desktop“ einfügen:

[Desktop Entry]
Name=Litecoin
Name[de]=Litecoin
GenericName=Litecoin
GenericName[de]=Litecoin
Comment=Litecoin QT
Comment[de]=Litecoin QT
Exec=/opt/litecoin-0.8.6.2-linux/bin/64/litecoin-qt
Icon=/opt/litecoin-0.8.6.2-linux/litecoin.png
Terminal=false
Type=Application
StartupNotify=false
OnlyShowIn=GNOME;XFCE;

Die dazu nötige Logo-Datei könnt ihr einfach hier herunterladen:

Litecoin Logo

und dann mit

sudo mv litecoin.png /opt/litecoin-0.8.6.2-linux/

an die richtige Stelle verschieben.
Fertig! Nun könnt ihr das Programm ganz gewohnt verwenden. Bitte vergesst nicht eure wallet-Datei zu sichern (diese befindet sich standardmäßig unter /home/BENUTZER/.litecoin/ ).

Vorlage für Bachelor- und Master-Arbeit (mit LyX bzw. LaTeX)

In diesem Artikel möchte ich euch beschreiben wie ihr einfach und schnell ein passables Layout für eure Bachelorarbeit hinkriegt. Da ich an der OTH Regensburg studiere ist dies am Beispiel der OTH Regensburg, Logo und Hochschulname kann natürlich ausgetauscht werden.

Hinweis: Ich studiere nicht mehr an der OTH und die Vorlage ist ein wenig veraltet. Die TeX-Vorlage ist mit Vorsicht zu genießen, da diese Vorlage aus der LyX-Vorlage erstellt wurde und LyX sauberes TeX nur selten umsetzt.

Was zur Hölle ist LyX?

Am Anfang jeder Arbeit stellt sich für viele die Frage: Mit welchem Programm schreibe ich meine Arbeit am Besten? Die meisten werden sich auch gar nicht mit dieser Frage auseinander setzten und gleich auf Word setzten. LyX bzw. LateX bietet hier eine gelungene Alternative mit der Dokumente einfach schöner werden.

Viele haben vielleicht schon einmal etwas von LaTeX gehört,  die „Programmiersprache für Dokumente“. Diese ist unheimlich komplex, aber dafür auch unheimlich fortschrittlich und mächtig. LyX ist ein Editor der diese Sprache nimmt und in einen schönen Editor packt. Man muss also nicht Codezeile um Codezeile programmieren, sondern hat einen komfortablen Editor mit dem einfach und schnell Dokumente erstellt werden können.

Was kann LyX was Microsoft Word nicht kann?

Achtung diese Aufzählung ist sicher nicht vollständig und Microsoft Word kann das sicher auch alles, aber die Funktionen sind meist total versteckt und kompliziert. LaTeX wird bereits seit mehreren Jahrzehnten zum schreiben von Büchern und wissenschaftlichen Arbeiten eingesetzt und zeigt daher einige Vorteile die man bei Word vermisst.

  1. Im Text auf Bilder und Tabellen verweisen: In LyX kann man einfach „Marken“ setzen und auf diese im Text referenzieren. LyX kümmert sich dabei automatisch um die Nummerierung, selbst wenn man noch was neues einfügt oder ganze Kapitel einfach verschiebt.
  2. Inhaltsverzeichnis automatisch erstellen: LyX erstellt viele Verzeichnisse vollautomatisch. Dazu gehören das Inhaltsverzeichnis, Abbildungsverzeichnis, Tabellenverzeichnis, ….
  3. Einfaches erstellen von Literaturverzeichnissen: Das Literaturverzeichnis wird automatisch erstellt und beinhaltet (auf Wunsch) nur Inhalte die auch wirklich im Text genannt sind. Fällt also ein Zitat raus, wird das auch im Inhaltsverzeichnis gelöscht.
  4. Es sieht einfach besser aus: Ich kann nicht genau sagen was es ist, aber ein LaTeX bzw. LyX Dokument sieht einfach besser aus. Alles ist stimmig und schön. Am Besten beschreibt es dieser Comic (siehe LATEX).

Was brauch ich alles um diese Vorlage zu nutzen?

Einen PDF Reader

Da LyX das fertige Dokument als PDF ausgibt muss ein PDF-Reader installiert werden. Ich empfehle den Acrobat Reader, dieser sollte aber wohl auf jedem Rechner schon installiert sein.

(Optional) Ein Programm für Vektorgrafiken

Wenn ihr Grafiken und Diagramme als SVG (Vektorgrafik) speichern wollt, weil das eine bessere Druckqualität bietet, müsst ihr VOR der Installation von LyX noch das freie Vektorgrafik-Programm Inkscape installieren. Ihr müsst das Programm vorher installieren, weil LyX Inkscape benutzt um Vektorgrafiken darzustellen. Dadurch habt ihr später im PDF dann auch eine Vektorgrafik und keine Pixelgrafik.

Das Programm LyX

Für das Erstellen und Bearbeiten der Arbeit benötigt ihr jetzt natürlich noch LyX. Für Windowsbenutzer empfehle ich das Bundle herunterzuladen, da hier gleich MikTeX mit dabei ist. Für Linuxbenutzer einfach über den Paketmanager installieren. Kleiner Tipp bei der Installation von MikTex. Wenn er euch fragt, wie ihr fehlende Pakete installieren wollt wählt nicht „Ask first“ sondern „Insall without asking“ (oder so ähnlich ^^).

Ein Literaturverwaltungsprogramm

Wenn ihr auch ein Literaturverzeichnis mit angeben wollt, empfehle ich euch für das Bearbeiten der Literaturdatenbank das freie Literaturverwaltungsprogramm JabRef.

Das klingt aufs erste jetzt viel, aber im Normalfall habt ihr nur mit 2 oder 3 dieser Programme wirklich was zu tun.

Wie sieht die Vorlage eigentlich aus?

Natürlich ist das nicht die offizielle Vorlage, aber ich habe jetzt schon zwei Diplomarbeiten, zwei Praxisberichte, ein Paper und eine Bachelorarbeit mit dieser Vorlage geschrieben und bis jetzt war noch jeder zufrieden.  Damit ihr euch aber nicht die Katze im Sack kauft, hier ein paar hübsche Bildchen vom fertigen PDF.

Das Deckblatt

Einfach aber effizient das Deckblatt für die OTH Regensburg (das Logo und die Überschrift kann natürlich nach belieben angepasst werden). Das ist nur ein Vorschlag.  Die Gestaltung des Layouts ist relativ einfach.

Deckblatt der Beispiel-BA

Deckblatt der Beispiel-BA

Das Inhaltsverzeichnis

Dieses wird natürlich automatisch von LyX erstellt. Ihr müsst euch eigentlich um nichts mehr kümmern.Das Inhaltsverzeichnis (wird natürlich automatisch erstellt)

Das Inhaltsverzeichnis (wird natürlich automatisch erstellt)

Der Fließtext

In diesem Screenshot seht ihr gleich mal wie Kapitel, Abschnitte und Unterabschnitte aussehen mit ein bisschen Fließtext außen rum. Ich habe versucht alles im Dokument selbst zu beschreiben. Dort steht also direkt drin wie ihr Bilder einfügt etc.

Ein Beispiel für Fließtext in der BA

Ein Beispiel für Fließtext in der BA

Beispiel für Bilder in der Arbeit

Ein wichtiger Teil der Arbeit sind natürlich die Bilder und wie diese darin verarbeitet werden.

Beispiel für Bilder in der Bacheloar Arbeit

Beispiel für Bilder in der Bacheloar Arbeit

Und am Ende natürlich noch das Literaturverzeichnis

Das Literaturverzeichnis ist nach DIN 1505-2 erstellt. Die Verwaltung erfolgt mit dem bereits erwähnten Programm JabRef.

Das Literaturverzeichnis der BA nach DIN 1505-2

Das Literaturverzeichnis der BA nach DIN 1505-2

Etwas spezieller: Programmcode

Da ich selbst gerade Informatik studiere, darf der Programmcode natürlich nicht fehlen. Einen Screenshot habe ich nicht beigefügt, ihr könnt euch im PDF selbst davon überzeugen.

Da die Geschichte doch etwas ausführlicher ist, habe ich einen eigenen Beitrag dazu verfasst: Programmcode in Lyx und Latex sauber darstellen

Download

Die Vorlage könnt ihr einfach so verwenden. Ihr müsst weder den Autor noch die Quelle nennen, aber wenn ihr anderen davon erzählt, würde ich mich natürlich freuen. Das verwendete Bild steht unter Public Domain Lizenz. Das Logo der OTH Regensburg ist natürlich Copygewritet und darf nicht einfach so verwendet werden. Wenn ihr OTH Student seid, kann da natürlich keiner was sagen ;).

Die komplette Vorlage als ZIP (neue Version v4)

Bachelor Thesis – Template in English (new Version v4)

Die komplette Vorlage als PDF

Am Ende eine Bitte

Ich bin mir sicher, dass sich noch der ein oder andere Fehler eingeschlichen hat. Wenn ihr also einen findet, schreibt hier einfach einen Kommentar. Wenn ihr einen Verbesserungsvorschlag oder eine Anregung habt, lasst es mich wissen. Ich helfe gerne weiter. In diesem Sinne viel Erfolg beim schreiben der Arbeit.

Nachtrag 03.02.2014

Danke an Venti für das Finden des kleinen Schönheitsfehlers. Das Tabellenverzeichnis und Abbildungsverzeichnis hat als Seitennumerierung arabische Zahlen. Da beide Listen aber noch zum Inhaltsverzeichnis gehören, sollten hier römlische Zahlen verwendet werden. Wie das gemacht wird, ist auf folgendem Screenshot zu sehen:

Lyx Screenshot für richtige Seitenzahlen im Inhaltsverzeichnis

Folgender Code sollte vor das Abbildungsverzeichnis:

\pagenumbering{roman}
\setcounter{page}{7}

Die erste Zeile setzt das Pagenumbering auf roman (Römische Zahlen). Die zweite Zeile setzt die richtige Seitenzahl. Hier muss leider manuell die richtige Seitenzahl gesetzt werden. Ich habe noch keine komfortable Lösung gefunden. Ich hoffe ich vergesse das am Ende meiner Arbeit nicht ;).

\pagenumbering{arabic}

Dieser Text stellt wieder auf Arabische-Seitenzahlen um.

Nachtrag 27.02.2014

Mir ist aufgefallen, dass zwischen Tabelle und Untertitel viel zu wenig platz ist. Einfach folgendes in den Latex-Vorspann und das Problem ist gegessen:

% Mehr Platz zwischen Tabelle und Untertitel
\usepackage{caption}
\captionsetup[table]{skip=10pt}

Außerdem hab ich den Randabstand nach unten auf 3,5 cm erhöht, dies sieht in der gedruckten Form deutlich besser aus.

Nachtrag 12.05.2014

Ich habe nun die Änderungen aus den beiden anderen Nachträgen in das Dokument eingefügt. Es gibt jetzt auch eine Englische Version und Latex-Dokumente wurden hinzugefügt.

Nachtrag 11.10.2014

Vielen Dank für die vielen Kommentare. Es ist aufgefallen, dass die falsche Seitenzahl für das Literaturverzeichnis angezeigt wird. Dies wird damit gelöst, dass vor dem Literaturverzeichnis folgender Code geschrieben wird:

% Dieser Code ist noetig, da sonst die falsche Seitenzahl im Inhaltsverzeichnis angezeigt wird
\clearpage
\phantomsection

Zusätzlich wird jetzt auch noch der Glossar im Inhaltsverzeichnis angezeigt. Dies wird erreicht mit folgendem Code vor der Nomenklatur:

% Dieser Code ist noetig, da sonst die falsche Seitenzahl im Inhaltsverzeichnis angezeigt wird
\clearpage
\phantomsection
% Die folgende Zeile sorgt dafuer, dass der Glossar im Inhaltsverzeichnis angezeigt wird.
\addcontentsline{toc}{chapter}{Glossar}

Ich habe die Vorlage entsprechend angepasst.

Nachtrag 25.02.2015

Dank der vielen Kommentare sind zwei kleine Fehler entdeckt worden (siehe Kommentar: https://www.timoschindler.de/vorlage-fuer-bachelor-und-master-arbeit-mit-lyx-bzw-latex/#comment-1431 )

Der Fehler wurde behoben und die Vorlagen entsprechend angepasst.

Update 11.03.2016

Ich möchte mich bei allen wirklich bedanken. Es gibt viel Zuspruch und viele neue Infos dazu kommen. Als Dank würde ich mich natürlich mega freuen, wenn ihr das ein oder andere Teil über diesen Amazon Link kaufen könntet. Dadurch bleibt ein kleiner Prozentsatz bei mir hängen und der Server lässt sich einfacher bezahlen.

Brother MFC-9140CDN Toner resetten

Vor einiger Zeit hat mein alter Brother HL2030 nach 27000 Seiten den geist aufgegeben. Für das kleine Ding eigentlich eine tolle Leistung. Da der Drucker oft im Geschäft gebraucht wird, habe ich mir mal etwas besseres geleistet und einen Brother MFC-9140CDN gekauft. Ist schon wirklich ein hübsches Teil und ich bin auch top zufrieden. Nur ist nun nach 868 Seiten der schwarze Toner leer geworden. Laut Herstellerangaben hält dieser zwar 1000 Seiten (immerhin über 10% weniger) aber hey, ein bisschen Diskrepanz ist ja immer dabei. Eigentlich wollte ich mir nur einen neuen Toner zulegen, bin dann aber durch Zufall auf ein ominöses „Reset-Menü“ gestoßen und konnte damit den Toner einfach resetten und seit dem läuft alles wieder Einwand frei. Hier folgt nun die Anleitung wie ihr den Toner resetten könnt.

Liste der funktionierenden Drucker

Dank zahlreicher Kommentare kann ich nun auch weitere Drucker bestätigen, bei denen mit dieser Methode der Toner resettet werden kann. Es funktioniert auch mit folgenden Modellen:

  • DCP-9020CDW – Allerdings muss man sich beim Einschalten das Sternchen merken, weil dieser Drucker kein Fax hat.
  • MFC-9142CDN (Danke an Kaipirinha)
  • MFC-9140CDN (Danke an Elfriede)
  • MFC-9342CDW – Man muss nach Öffnen der Klappe nur die Fehlermeldung “Klappe offen” wegdrücken, dann den Stern drücken und voilà. (Danke an Christian)
  • MFC-9330CDW (Danke an Cetin)
  • MFC-9340CDW (Danke an Peter)
  • DCP-9022CDW (Danke an J.H.)
  • MFC-9332 (Danke an Christian Rosenblatt)
  • MFC-9142CDN (Danke an BZ)
  • MFC-9840CDW (Danke an Richard)
  • MFC-9332CDW (Danke an Andreas S. per Email)
  • DCP-9022CDW (Danke an Armin)
  • MFC L 8650CDW – Allerdings muss man da die Stelle der Stern Taste gedrückt halten und dann die Klappe öffnen. Dann erscheint das Reset Menü. (Danke an Hr. Greskamp)
  • MFC-9450CDN: Klappe öffnen, Storno Taste drücken, Toner mit den Pfeiltasten auswählen, auf OK drücken, 1. Reset oder 2. Nein drücken, FERTIG. (Danke an Werner)
  • MFC-L8850CDW: Sternchen halten und dann klappe Öffnen (Danke an Daniel)
  • DCP-8110DN: Die Front wird geöffnet, 1x Storno drücken. Dann erscheint das Trommel Menü. Dort dann statt einer Eingabe im Menü *00 eintippen und danach die Klappe wieder schließen. Erledigt. (Danke an Daniel)
  • MFC-9430CDW (Danke an Marc)
  • MFC-L9550CDW (Danke an Friedhelm)
  • HL-3152CDW (Danke an Verena. Anleitung leicht angepasst, siehe Kommentar)
  • DCP-9017CDW
  • MFC-9332CDW
  • DCP-9017CDW (Danke an Schramm)
  • Brother MFC-L3750CDW (und vermutlich alle Modelle Brother MFC-L37****):
    1) Obere Abdeckung auf
    2) Zuerst die Tastenkombination <cancel>+<back> drücken und dann nochmals <back>
    3) Falls das wegen einer Fehlermeldung in der Anzeige (z.B. low toner) nicht geht:
    Vorab 5-10s “*“ drücken – dann 1)à 2)

Sollte es weitere Drucker geben, die mit dieser Methode funktionieren, würde ich mich freuen, wenn ihr einen kurzen Kommentar hinterlasst.

Toner Reset

Der Toner Reset kann direkt auf dem Gerät durchgeführt werden. Ihr müsst dabei nichts ausbauen oder rum schrauben.

Zuerst müsst ihr alle etwaigen Fehlermeldungen oder Hinweismeldungen auf dem Display wegklicken und in den Fax-Modus gehen, damit das Zahlenfeld rechts neben dem Display auftaucht.

IMG_20131227_171425

Merkt euch die Position des *-Symbols (links unten im Tastenfeld), denn das Tastenfeld verschwindet nun gleich wieder.

Nun geht ihr wieder zurück auf dem Home-Bildschirm und öffnet die Klappe.

IMG_20131227_171543Nun drückt für etwa 7 Sekunden die Stern-Taste (oder besser: Die Stelle wo die Sterntaste eigentlich sein sollte). Ein neues Menü springt auf und ihr könnt nun jeden Toner resetten.

IMG_20131227_171552

Die Kodierung lautet wie folgt:

Der erste Buchstabe steht für die Farbe z.B. K.TNR-STD = TN-230BK/Standard Toner (K=Schwarz) oder K.TNR-STR = Startertoner. Einfach auf den Toner drücken, den ihr resetten wollt und tada:

IMG_20131227_214814Wie aus Zauberhand hat sich der Toner wieder aufgefüllt (in diesem Beispiel habe ich nur den schwarzen resettet). Ich weiß nicht wie viel mehr Ausdrucke man damit rausholen kann, aber ich werde euch weiter auf dem laufenden halten.

An die Druckerhersteller

Ich weiß ja nicht was ihr euch dabei gedacht habt, aber ich finde es ehrlich gesagt eine Frechheit. Geplante Obsoleszenz ist nicht die beste Art mit seinen Kunden umzugehen. Zumindest liefert Brother in diesem Fall eine Lösung mit, erwähnt diese aber mit keinem Wort. Schon schade.

Update 25.04.2014

Mein „leerer Toner“ der nach 868 Seiten bereits „leer“ war. Druckt nach 1937 Seiten immer noch. Echt unglaublich wie toll diese Funktion den Toner wieder auffüllt ;).

Update 12.05.2014

So nun hat der Toner aber aufgegeben. Das Druckbild ist auf die letzten 50 Blatt schwach geworden und es sind Streifen aufgetaucht, die aber durch schütteln des Toners weitestgehend unterbunden werden konnten.

Der Toner hat alles in allem nun für 2262 Seiten gehalten.

Wenn man sich vor Augen führt, das der Toner bereits nach 868 Seiten „leer war“, wurde der Toner bei 61% Füllstatus bereits als leer angezeigt!! Was für eine Sauerei von Brother…

Update 19.10.2014

Dank eines Kommentars (Danke an Thorsten) bin ich drauf gekommen was eigentlich mit den Trommeln ist? Die sind bei mir zwar noch nicht „leer“ aber eine Anleitung schadet nie:

Anleitung zum zurücksetzen der Trommeleinheit und Transfereinheit

Update 11.03.2016

Gerade per Mail bekommen:
Dein Hinweis auf den Tonerreset hat bestens geklappt, vielen Dank.  Das war vor einiger Zeit.  Nun habe ich es wieder probiert, allerdings kommt außer Piepsen nichts mehr..
Unterschied zu früher: Update der Firmware auf S1.07K
Mir hat das Ganze natürlich keine Ruhe gelassen. Ich habe das mittlerweile immer wieder probiert und mir dann den Stern mit einem Aufkleber gekennzeichnet, wodurch die Erfolgsrate beim Drücken signifikant stieg. Somit kann ich bestätigen, dass auch nach dem Upgrade der Firmware der Vorgang noch funktioniert.

Eclipse Kepler 4.3 auf Ubunut 13.10 installieren

Hier möchte ich euch kurz eine Anleitung geben, wie ihr Eclipse 4.3 Kepler auf Ubuntu 13.10 installiert. Ich verwende die 64-Bit Version, es sollte aber auch mit der 32-Bit Version klappen.

In einem ersten Schritt prüfen wir zuerst, welche Java-Version installiert ist:

java -version

Wird hier nichts oder ein Fehler angezeigt, muss Java zuerst installiert werden. Hierzu einfach folgenden Befehl ausführen

sudo apt-get install  openjdk-7-jre

Ist das erledigt, können wir mit der eigentlichen Installation von Eclipse 4.3 Kepler beginnen. Zuerst einmal müssen wir Eclipse Kepler 4.3 von www.eclipse.org/downloads/ herunterladen. Ich habe die Version „Eclipse Standard 4.3“ in der 64-Bit Version verwendet.

Nun gehen wir in den Ordner wo der Download liegt und entpacken das Archiv. Der Befehl zum entpacken kann sich natürlich unterscheiden, je nachdem welche Version ihr installieren möchtet.

cd Downloads
tar -zxvf eclipse-standard-kepler-R-linux-gtk-x86_64.tar.gz

Nach dem Entpacken befindet sich nun ein neuer Ordner „eclipse“ im Verzeichnis. Das Archiv kann gelöscht werden. Nun verschieben wir das ganze nach /opt/:

sudo mv eclipse/ /opt/

Nun fügen wir noch einen Symlink für eclipse ein, um es einfacher starten zu können:

sudo ln -s /opt/eclipse/eclipse /usr/bin/eclipse

Ab jetzt kann Eclipse in der Konsole mit dem befehl „eclipse“ gestartet werden. Möchte man noch ein Shortcut auf Unity einfach folgendes in die Datei „/usr/share/applications/eclipse.desktop“ einfügen:

[Desktop Entry]
Name=Eclipse
Name[de]=Eclipse
GenericName=Eclipse
GenericName[de]=Eclipse
Comment=Eclipse
Comment[de]=Eclipse
Exec=/opt/eclipse/eclipse
Icon=/opt/eclipse/icon.png
Terminal=false
Type=Application
StartupNotify=false
OnlyShowIn=GNOME;XFCE;

In diesem Befehlssatz wird noch eine alternative Icon-Datei verwendet. Ich habe diese aus der Google-Suche und einfach dann ins Verzeichnis /opt/eclipse/icon.png verschoben.

JDownloader 2.0 BETA auf Ubuntu 13.10 installieren

Halli Leute,
JDownloader 2.0 ist ein sehr schönes Stück Programmcode und das darf man eigentlich niemanden vorenthalten. Da bei mir die Installation über den Paketmanager bzw. über die Version der Homepage nicht funktioniert hat, zeige ich euch hier, wie ihr es von einer Datei installieren könnt.

Vorbereitung

Zuerst einmal checken ob Java installiert ist:

java -version

Wird hier nichts oder ein Fehler angezeigt, muss Java zuerst installiert werden. Hierzu einfach folgenden Befehl ausführen

sudo apt-get install  openjdk-7-jre

Jetzt müsst ihr euch die JDownloader.jar-Datei herunterladen. Ich weiß leider nicht mehr wo ich sie her habe, sonst würde ich euch die original Quelle nennen. Hier einfach als Download: jdownloader_2.0_BETA.zip. Darin enthalten ist eine .jar-Datei. Beim ersten ausführen werden alle aktuellen Daten vom JDownloader-Server gezoge. Und alles ohne Werbung und Co.

Installation

Wenn ihr die Datei im Zip-File entpackt habt verschiebt ihr es an einen Ort eurer Wahl. Diese Anleitung nimmt den Ordner /opt/jdownloader/ (diesen Ordner müssen wir erst mal erstellen):

sudo mkdir /opt/jdownloader
sudo mv JDownloader.jar /opt/jdownloader/

Nun das Programm starten, damit alle Dateien heruntergeladen werden können.

sudo java -jar /opt/jdownloader/JDownloader.jar

Wenn alles fertig ist das Programm beenden und noch kurz die Rechte ändern. Bei dem folgenden Befehl müsst ihr noch euren aktuellen Benutzer ändern.

sudo chown -R benutzer:benutzer /opt/jdownloader/

Ab sofort könnt ihr den Jdownloader mit folgendem Befehl starten:

java -jar /opt/jdownloader/JDownloader.jar

Shortcut erstellen

Da uns das ja sicherlich viel zu umständlich ist, erstellen wir noch einen shortcut. Die Anleitung ist angelehnt an die Anleitung von Ubuntu selbst: http://wiki.ubuntuusers.de/.desktop-Dateien

Im Ordner /usr/share/applications/ wird die Datei jdownloader.desktop erstellt und mit Inhalt gefüllt:

sudo vim /usr/share/applications/jdownloader.desktop

In die Datei einfach folgenden Text eingeben:

[Desktop Entry]
Name=JDownloader
Name[de]=JDownloader
GenericName=Downloader
GenericName[de]=Downloader
Comment=JDownloader
Comment[de]=Jdownloader
Exec=java -jar /opt/jdownloader/JDownloader.jar
Icon=/opt/jdownloader/themes/standard/org/jdownloader/images/logo/jd_logo_64_64.png
Terminal=false
Type=Application
StartupNotify=false
OnlyShowIn=GNOME;XFCE;

Ab jetzt kann JDownloader einfach über den Befehl JDownloader gestartet.

Eclipse 4.3 Kepler auf Ubuntu 13.04 installieren

Hier möchte ich euch kurz eine Anleitung geben, wie ihr Eclipse 4.3 Kepler auf Ubuntu 13.04 installiert. Ich verwende die 64-Bit Version, es sollte aber auch mit der 32-Bit Version klappen.

In einem ersten Schritt prüfen wir zuerst, welche Java-Version installiert ist:

java -version

Wird hier nichts oder ein Fehler angezeigt, muss Java zuerst installiert werden. Hierzu einfach folgenden Befehl ausführen

sudo apt-get install  openjdk-7-jre

Ist das erledigt, können wir mit der eigentlichen Installation von Eclipse 4.3 Kepler beginnen. Zuerst einmal müssen wir Eclipse Kepler 4.3 von www.eclipse.org/downloads/ herunterladen. Ich habe die Version „Eclipse Standard 4.3“ in der 64-Bit Version verwendet.

Nun gehen wir in den Ordner wo der Download liegt und entpacken das Archiv. Der Befehl zum entpacken kann sich natürlich unterscheiden, je nachdem welche Version ihr installieren möchtet.

cd Downloads
tar -zxvf eclipse-standard-kepler-R-linux-gtk-x86_64.tar.gz

Nach dem Entpacken befindet sich nun ein neuer Ordner „eclipse“ im Verzeichnis. Das Archiv kann gelöscht werden. Nun verschieben wir das ganze nach /opt/:

sudo mv eclipse/ /opt/

Nun fügen wir noch einen Symlink für eclipse ein, um es einfacher starten zu können:

sudo ln -s /opt/eclipse/eclipse /usr/bin/eclipse

Ab jetzt kann Eclipse in der Konsole mit dem befehl „eclipse“ gestartet werden. Möchte man noch ein Shortcut auf Unity einfach folgendes in die Datei „/usr/share/applications/eclipse.desktop“ einfügen:

[Desktop Entry]
Version=1.0
Name=Eclipse
Exec=eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Type=Application
Categories=IDE;Development
X-Ayatana-Desktop-Shortcuts=NewWindow
[NewWindow Shortcut Group]
Name=New Window
Exec=eclipse
TargetEnvironment=Unity

Wer die klassische Gnomeoberfläche verwendet, kann einfach mit Rechtsklick auf „Anwendungen“ und „Menü bearbeiten“ einen neuen Eintrag machen. Das Icon findet ihr im Ordner /opt/eclipse

eclipse-starter-anlegen

Update 28.12.2013

Ich bin nun auf Gnome Ubuntu 13.10 umgestiegen. Hier die Anleitung für die neue Version:

Eclipse 4.3 Kepler auf Ubuntu 13.10 installieren

Brother DCP-115C bei Ubuntu 12.04 LTS 64-Bit installieren

Hallo Leute,

ich hab heute mal wieder ein nettes Problem gehabt. Ich hab versucht einen Brother DCP-115C bei Ubuntu 12.04 LTS 64-Bit zu installieren. Es stellte sich als schwerer heraus als gedacht. Folgendes war dann schlussendlich die Lösung:

  1. Drucker ausschalten
  2. Den Befehl „sudo aptitude install brother-lpr-drivers-extra“
  3. Drucker anschalten
  4. Im Browser auf http://localhost:631/printers/ gehen
  5. Den Drucker auswählen und beim Dropdownmenü von Administration „Standardeinstellungen festlegen“
  6. Dort dann die Media Size auf A4 stellen und fertig

So hat es zumindest bei mir funktioniert. Vielleicht kann ich damit jemanden weiterhelfen.

Grüzi