Crontab bearbeiten

In jedem UNIX System gibt ein Scheduler, der Aufgaben zeitabhängig startet. Dir Crontab Tabelle legt diese Aufgaben fest mit der entsprechenden Uhrzeit oder einem Intervall.

Die Aufgaben können Shell Scripte, PHP oder auch executables sein. der Befehl crontab -l listet die aktuell eingestellten Aufträge. Mit Hilfe des Befehls crontab -e wird ein Editor gestartet der die Einträge bearbeiten läßt.

Crontab Syntax

Jeder Cronjob hat folgendes Format:

Ein Stern * bedeutet Ausführung wird immer erfolgen, also zu jeder Minute, jeder Stunde, jedem Tag, jedem Monat oder jedem Wochentag. Um die einzelnen Stellen auseinander zu halten, hilft folgendes Diagramm:

Für die ersten fünf Stellen, also die Zeitwerte sind folgende Optionen zusätzlich möglich:
* = Ausführung immer (zu jeder…)
*/n = Ausführung aller n
n,x,y = Ausführung um/am n, x und y

Cronjob Beispiele

Als Beispiel soll jede Nacht um 5 Uhr morgens das Skript, würde man den Cronjob folgendermaßen anlegen:

Cronjob-Ausgabe in Logfile umleiten

0 8,17 * * * /usr/bin/script.sh >>/var/log/cron/send_reminder_mail 2>&1

Cronjob-Ausgabe verwerfen

0 8,17 * * * /usr/bin/script.sh >/dev/null 2>&1

/etc/cron* Verzeichnisse

Eine weitere Möglichkeit Cronjobs anzulegen sind die Verzeichnisse unter /etc/cron*, in denen alle enthaltenen Dateien zum bestimmten Zeitpunkt ausgeführt werden. Die Dateien im Einzelnen

/etc/cron.d/ = Erweiterungen zur /etc/crontab-Datei, gleiche Syntax.
/etc/cron.daily/ = Einmal irgendwann täglich.
/etc/cron.hourly/ = Einmal irgendwann stündlich.
/etc/cron.monthly/ = Einmal irgendwann monatlich.
/etc/cron.weekly/ = Einmal irgendwann wöchentlich.

Die letzten vier werden oft genutzt, wenn ein Job in einem bestimmten Interval erledigt werden muß, der genaue Zeitpunkt hierfür aber unerheblich ist.

Weitere Information

Intervall Beispiele: https://crontab.guru/examples.html

X Wege zum eigenen Mediaserver

Dank vieler Mediatheken diverserer Sender ist der Zugriff auf verpasste Sendungen oder Serien einfach. Seit 4-5 Jahren unterstützten alle neuen TV-Geräte den Zugriff auf diese Medien. Zudem erlauben Zusatzgeräte wie Google Chrome stick, Firestick oder auch Blueray Player auf dieser Zeit den Zugriff.

Mittlerweile gibt es mit der Software MediaView https://mediathekview.de/ die Möglichkeit Inhalte aus den Mediatheken auf die lokale Festplatte herunterzuladen.

Nun gibt mehrere Wege diese filme anzuschauen.

1.) Der USB Stick

Verfügt das TV Gerät über einen USB Eingang, unterstützt er zumeist auch das gängige MP4 Format, so das die Filme einfach kopiert und am Fernseher ausgewählt werden können. Auch Verzeichnisse werden unterstützt.
Die meisten Geräte sortieren die Inhalte nach dem Namen, so das sich bei Serien eine Nummerierung anbietet.

So vorbereitet lassen sich die Folgen leichter wiederfinden.

2.) Der DLNA Server

DLNA steht für Digital Living Network Alliance. Es ist ein Standard um Medien über ein Netzwerk verfügbar zu machen. Er wird von einer ganzen Reihe von Software Lösungen verwendet. Auch einige Router unterstützten ihn.

Hier die wichtigsten:

Der Fritzbox Router

Die meisten Modelle unterstützen die Freigabe von Medien, die auf dem internen Speicher abgelegt werden oder auch auf externen USB Sticks.

Der Universal Media Server (Windows)

Diese freie Softwarelösung https://www.universalmediaserver.com/ stellt Fotos, Filme und Musik im internen Netzwerk zur Verfügung. Zur Konfiguration steht eine Oberfläche zur Verfügung, die ein oder mehrere Verzeichnisse freigibt. Anhand der Dateiendungen werden die Medien dem Kanal zugeordnet.

Bildergebnis für universal media server

Kodi Server (Xmbc) (viele Platformen)

Bildergebnis für media server xbmc config

Wandern rund um Osnabrück

Das Zittertal

Meller Berge

DistanzZeitHöhenunterschiedBewertung
5,3 km1:20 h160 m

Holte

DistanzZeitHöhenunterschiedBewertung
13 km3:00 h309 m

Voxtrup/Eistrup/Rochusberg

DistanzZeitHöhenunterschiedBewertung
13,3 km2:55 h490 m

5 Wanderrouten aus der Noz

Link aus der Noz vom 15.08.2020

Access Couchbase

After I installed the Couchbase server on my Linux machine I wanted to show some date into a web browser using my own application.

I found this page which gave me the intial idea who to start. In teh Eclipse I create a new maven project based on JDK 8. All sources were added and the pom.xml updated. However the code were not able to run and I made several adjustments on it.

public @Bean Bucket bucket() {
    Cluster mycluster;
    // mycluster = CouchbaseCluster.create(hostname);
    mycluster = Cluster.connect(hostname, user, password);


    return mycluster.bucket(bucket);
    // return cluster().openBucket(user, password);
}

The connect to the DB has change with version 3 of the client. Also I add the user name to the application.properties.
The pom.xml has been updated with these entries:


<properties>
    <jackson.version>2.11.2</jackson.version>
</properties>    
<dependency>
        <groupId>io.projectreactor</groupId>
        <artifactId>reactor-core</artifactId>
        <version>3.3.9.RELEASE</version>
    </dependency>
<dependency>
     <groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-logging</artifactId>
	<version>1.3.1.RELEASE</version>
</dependency>

In addtion I deleted some lib from the .m2 couchbase directory before they get installed without error.

Now I created a runtime environment using the Application/Main class and I was able to start the Tomcat.

There are a couple of issues with the client jar of couchbase and dependencies. Also the API has been changed since the web site mention above has been created. Now the cluster is the main entitiy to query the database:

mycluster = Cluster.connect(hostname, user, password);couchbase.Database.setCluster(mycluster);
Bucket bucket = mycluster.bucket(bucket);
String query = "select city,code,country, description from <code>beer-sample</code> where code == '94107' ";
QueryResult result = curCluster.query(query);
return extractResultOrThrow(result);

private static List> extractResultOrThrow(QueryResult result) {    
List<Map<String, Object>> content = new ArrayList<Map<String, Object>>();
    for (JsonObject row : result.rowsAsObject()) {
        content.add(row.toMap());
    }
    return content;
}

Postman request

Post request to product rest api

The couchbase is offering a API which is exposed at 8093 (not 8091 for the DV itself)

Using this statements can be executed using the statement param in the body. Also a basic auth needs to be provided which is the user credentials.

Raspi Images



To extend a given image from a smaller SD card to a larger one is more complicated as I initially thought.

Whenever I copy a older image file to a any card it get always the same size on this card whle the addtional space isn’t used.
When i try to enhance it and reapply the image it is still the same size.

Also using dd doesn’t give a different result.
So I used another image to start the Machine and put the card reader into one usb port.

Here I take a backup using tar and copy it to a network drive. After I use fdisk to drop the second partion and create it again using all space. Now I get back the files from the tar file and replace the SD card.

Now it get boot up showing the addtional size.



Bose Soundbar mit einem Samsung TV

Im Dezember 2017 hab eich eine Bose Soundbar 300 angeschafft um den Klang des Samsung TV zu verbessern. Zuvor hatte ich eine Haman Kardon 5.1 Anlage angeschlossen, die aber wegen der vielen Kabel nicht mehr um Einsatz kommen sollte.

Die Installation der Soundbar war einfach um lief problemlos. Nachdem einige Funktionen ausprobiert hatte, war das Gerät nicht mehr zu bewegen das TV  Audiosignal auszugeben. Alle Versuche, wie das komplette Ausschalten, die Neuverbindung oder das Aufspielen eines Updates, schlugen fehl.

Recherchen im Internet deuten darauf hin das es zwischen Geräten einiger Hersteller und der Soundbar Kommunikationsprobleme gibt. Es wurde darauf hingewiesen das das hier benutzte ARC Verfahren zur Steuerung noch nicht hinreichend entwickelt und abgestimmt ist. In meinem Fall scheint der Fernseher die Informationen der letzten Verbindung zwischen zu speichern was eine erneute Verbindung verhindert. Erst als der TV über Nacht stromlos gelassen wurde (Im Netz war von 3 Stunden die Rede) wurde das Gerät wieder erkannt. Hierbei sollen die letzten Verbindungsinformationen gelöscht werden.

Auch das Drücken des Netzschalters soll die gleiche Wirkung haben. Bei meinem Gerät gibt es eine Art Joystick auf der Rückseite, den ich aber nicht dazu bewegen konnte das Gerät neu zu starten.

Meine erste Seite

Willkommen zu meinem Blog! In den letzten Jahren habe ich an diversen Problemen und Herausforderungen gearbeitet, die ein Computer und andere Geräte einem so Tag für Tag stellen.

Daher kam die Überlegung einige Lösungen aufzuschreiben, damit ich und andere sie nutzen können. Schließlich stehen viele Nutzer vor der gleichen Problematik und suchen nach Strategien.