Die digitale Welt: IT, Smartphone und Co.
Berichte und Informationen zu verschiedenen Themen der digitalen Welt.

Wenn Du einen eigenen GitLab Server betreibst, wirst Du früher oder später gerne auch Benachrichtigungen per Mail an Dich selber oder an die Nutzer Deines Servers versenden wollen. Manchmal kann sich das Setup als ein wenig tricky erweisen.

Wenn Du einen SMTP-Server verwenden möchtest, kannst Du dies in der /etc/gitlab/gitlab.rb konfigurieren. Einige gute Beispiele für die Konfiguration verschiedener Maildienstleister sind in der GitLab-Dokumentation der SMTP-Einstellungen aufgelistet.

Testen kannst Du das sehr gut von der GitLab-Konsole aus:

$ gitlab-rails console

In der gitlab-rails Konsole erfolgt der Testversand mit:

Notify.test_email('test@testdomain.de', 'Titel der Mail', 'Inhalt der Testnachricht.').deliver_now

Die Mail wird sofort versandt und Du siehst direkt eventuelle Fehlermeldungen.

Screenshot nano editor homepage

Ich bin ein Fan vom nano editor. Er ist klein, leichtgewichtig und trotzdem sehr mächtig.
Mit folgendem Tastenbefehl kannst Du direkt in eine bestimmte Zeile springen:

Ctrl + Shift + –

Genau genommen also Ctrl und Unterstrich.
Danach in der Dialogzeile die Zeilennummer angeben und mit Enter bestätigen. Dann springt der Cursor in die entsprechende Zeile.

Die Drag and Drop-Funktion mit dem Trackpad funktioniert bei macOS Mojave nicht mehr mit den Standardeinstellungen. Tagelang habe ich nach der Lösung gesucht. Endlich funktioniert es wieder. So geht’s:  Weiterlesen

Screenshot logfile nginx client intended to send too large body

Seit kurzem habe ich den HTTP-Server nginx für mich entdeckt. Wie das bei neuer Software nun einmal so ist, gibt es diverse Herausforderungen zu bewältigen. Zum Beispiel auch die Fehlermeldung client intended to send too large body.

Ursache

nginx überprüft die Länge des request body vom anfragenden Browser. Als Standard ist 1 MB eingestellt. Bei zum Beispiel einem Bilderupload ist diese Grenze schnell erreicht. Der nginx reagiert darauf mit einem Fehlercode 413 (request entity too large).

Im error.log stellt sich das wie folgt dar:
2018/03/29 20:12:55 [error] 25755#25755: *1223 client intended to send too large body: 1052966 bytes, client: xxx.xxx.xxx.xxx, server: xentux.de, request: „POST /wp-admin/async-upload.php HTTP/1.1“, host: „
www.xentux.de“, referrer: „https://www.xentux.de/wp-admin/upload.php“

Lösung

In die Datei /etc/nginx/nginx.conf im Bereich http { … } die Zeile

client_max_body_size 10M;

eintragen und im Anschluss den nginx neu starten.
Alternativ kann man den Wert auch auf 0 setzen. Damit wird die Überprüfung komplett abgeschaltet.
In der Dokumentation ist es so beschrieben:

Syntax: client_max_body_size size;
Default: client_max_body_size 1m;
festplatten - lvm hetzner rescue

Wenn man einen dedizierten Server, dessen Festplatten mittels LVM verwaltet sind, in den Rescue Modus bootet, kann man die einzelnen logischen Laufwerke nicht einfach direkt einbinden. Wie das gemacht wird zeige ich hier. Weiterlesen

mighty timer apple watch screenshots

Tea Timer Apps gibt es wie Sand am Meer, da ich aber gerne meine Apple Watch nutzen möchte, lichtet sich das Angebot schon ein wenig. Nicht jede Timer App bietet auch eine App für die Watch an. Weiterlesen

Bildschirmausgabe Hetzner Installimage

In diesem Artikel beschreibe ich, wie man auf einem Rootserver von Hetzner OpenVZ 7 mit CentOS 7 als Betriebssystem installiert. Der erste Teil befasst sich mit der Installation von CentOS. Dieser ist natürlich speziell für Hetzner-Server ausgelegt. Der Abschnitt über die Installation von OpenVZ 7 lässt sich natürlich auf jeden anderen Server mit CentOS 7 übertragen. Weiterlesen

Heute ist Release-Day! iOS10 soll heute offiziell zum Download bereit stehen. Apple kündigt die neue Version als das bisher größte Release an. Lassen wir uns überraschen!
Einige der neuen Funktionen sind durchaus interessant, wie z.B. die Ansage der eingehenden Anrufe. Sofern eingestellt, kündigt Siri eingehende Anrufe mit dem Namen des Kontaktes an. So kann man sich schnell entscheiden, ob es sich lohnt, vom Sofa aufzustehen. Scherz beiseite, im Auto über die Freisprechanlage finde ich es ziemlich nützlich.
Eher ein nettes Gimmick sehe ich in der Handschrift-Funktion von Messages. Nun kann man in einer iMessage etwas handschriftlich hinterlegen und der Empfänger bekommt es animiert angezeigt. Sicherlich ganz nett, aber spätestens nach dem dritten Mal ist es eher nervig.
Ebenso gibt es nun bildschirmfüllende Animationen in iMessage. Als Gag zwischendurch kann man das mal machen.
Wie man sieht, wird bei den meisten Funktionen der Spieltrieb angesprochen, genau so auch bei den „geheimen Fotos“ die ihre Information nur preisgeben, wenn man darüber streicht.

Eher funktional ist die Funktion „Tapback“: Man kann auf schnelle Weise aus sechs Reaktionen auswählen, die als Antwort gesendet werden können, z.B. Daumen hoch.
Der Sperrbildschirm wird zukünftig bereits beim Hochheben des iPhones angezeigt – nicht erst beim Druck auf den HomeButton. Für mich persönlich eine Bereicherung, da ich meist nur für Sekundenbruchteile die Information auf dem Lock-Screen zu sehen bekomme bevor das iPhone per Fingerabdrucksensor entsperrt wird und damit die Information verschwunden ist.
Sehr gespannt bin ich auf das mehrsprachige Schreiben. Es soll nun möglich sein, z.B. Englisch und Deutsch gemischt zu schreiben, ohne dass die Autokorrektur verrücktspielt.

Für die Besitzer deutlich älterer Geräte wird es jetzt natürlich eng. iOS10 läuft ab dem iPhone 5, iPad 4, iPad mini 2, iPad Air und natürlich auf den Pros. Der iPod Touch ist ab der 6. Generation dabei.

Erfahrungsgemäß wird der Download in den frühen Abendstunden verfügbar sein.

Wie man aus einem Quellcode ein einfach zu handhabendes .deb Paket baut, ist ziemlich einfach.
Sofern noch nicht vorhanden, sollten einige Voraussetzungen geschaffen werden, indem benötigte Pakete installiert werden. Hierzu gehört u.a. das Paket checkinstall.

aptitude install build-essential checkinstall

Zuerst entpackt man den vorhandenen Quellcode, sofern dieser als z.B. tar Archiv vorliegt.

tar xfjv quellcode-1.0.tar.bz2

Danach wird konfiguriert und die Binaries gebaut.

cd quellcode-1.0
./configure
make

Anstatt nun mit make install die Binaries zu installieren, führt man checkinstall aus.

checkinstall

Als Ergebnis erhalten wir ein quellcode-1.0.deb, welches sich auf bequeme Art mittels

dpkg -i quellcode-1.0.deb

installieren lässt.
Auf gleichem Wege ist es auch bequem wieder entfernt.

dpkg -r quellcode-1.0

Für die ganz Schnellen unter Euch kann man das ganze natürlich auch noch zu einer Zeile zusammenfassen.

./configure && make && checkinstall

Auf diese Weise lässt sich z.B. ein Programm auf mehreren Rechnern installieren, ohne auf jedem einzelnen Rechner die Quellen kompilieren zu müssen. Voraussetzung ist jedoch, daß man sich an die CPU-Architektur hält.

Da sich mein QNAP NAS auf einmal merkwürdig verhalten hatte, hatte ich mich entschlossen, das System komplett neu aufzusetzen. Das „Problem“ dabei ist, daß es nicht einfach reicht, die Partitionstabelle der einzelnen Platten zu löschen. Auf Grund der Informationen im MBR sieht das NAS sofort, daß es „eigene“ Platten sind, also nicht fabrikneu. Floglich muß der MBR neu geschrieben oder schlichtweg geschreddert werden. Am einfachsten geht das, in dem man die Platten in eine einfache Linuxkiste einbaut und mit

dd if=/dev/zero of=/dev/sda bs=440 count=1

den MBR mit Nullen überschreibt.

Wenn man ganz auf Nummer sicher gehen will, nimmt man count=2 oder höher, dann wird die Partitionstabelle auch gleich vernichtet.

Platten wieder rein ins Gehäuse und das NAS erkennt die Drives nun als vollständig leer und fängt von ganz vorne an.