Warning: Trying to access array offset on value of type null in /mnt/web515/c3/57/5488257/htdocs/_apfelz/_lib/functions.php on line 90 Apfel Z | Tipps, Tricks und Hacks für Mac, Android, Web & Co.
This page intentionally left blank
  Seite:  1 2 3  ...  22 23 24 >> 352 Artikel insgesamt   
Willkommen bei Apfel Z

Herzlich willkommen bei Apfel-Z

Bei Apfel-Z dreht sich alles um den Macintosh/MacOS X, Unix, das Web, Android und sonstige technische Basteleien. Weiterlesen...
 
SQL-Einträge mit Update durchnummerieren

"Befüllt die Datenbank erst mit Einträgen, wenn ihr euch sicher seid, dass ihr alles genau so haben und nichts mehr ändern wollt" hatte ich gesagt. Aber ne...wir wollen jetzt sofort dutzende Einträge reinhauen und nachher zum Entschluss kommen, dass die beim speichern vergebenen Ticketnummern doch irgendwie blöd sind.

Wie nummeriere ich alle vorhandenen Einträge nochmals neu durch, ohne auf die ID oder ähnliches zurückzugreifen?
Die Leute wollen in einem Feld eine Ticketnummer haben, die mit "R_2024_" anfängt und dann eine fortlaufende Zahl hintendran hat. 3stellig mit führenden Nullen.

R_2024_001
R_2024_002
...

Das geht mit folgendem SQL-Befehl (die erste Zahl ist hierbei eine 1):

SET @row := 0;
update `positionen`
  set ticketnr = concat('R_2024_', LPAD(@row:=@row+1, 3, '0'))
  WHERE typ = 1
 
Synology DSM: Speicherplatzwarnung

Mal ein Quckie: Wie ändert man das Limit für die Speicherplatzwarnung einer Synology NAS?

Nachdem bei meiner NAS von 8 TB immerhin noch 1.5 TB frei sind, nervt mich das System mit Warnungen, da standardmäßig ab 20 % freier Rest-Kapazität gewarnt wird. Einerseits mit einer einmaligen E-Mail bei Unterschreitung andererseits mit einem dauerhaft orangenen Status-Widget im Web-UI. Das nervt!

Die Lösung ist dermaßen versteckt, dass ich das hier mal notieren muss:

Nicht in der Systemsteuerung, sondern im Programm "Speichermanager" klickt man in der linken Spalte auf das Volume des Speicherpools des Speichers, rechter Hand auf das ... Menü und "Einstellungen" wählen.
Im sich öffnenden Dialogfenster ganz runter scrollen und die 20 % auf einen niedrigeren Wert ändern, dann speichern.
 
Kindle Fire HD von 2022 rooten und CustomROM flashen?

Vor 10 Jahren hatte ich mal auf einem Kindle Fire der 3. Generation eine Android Custom ROM installiert, um das Gerät einigermaßen brauchbar zu machen.
Leider wurde es nun nach 10 Jahren notwendig, ein neues Tablet zuzulegen. Am günstigsten kommt man wieder mit einem Kindle Fire weg, allerdings scheint es, dass man die Kindles inzwischen nicht mehr rooten kann, ohne sie vorher dafür auseinandernehmen und in die Hardware eingreifen zu müssen.

Zum Glück ist Amazons Auslegung von Android zwischenzeitlich einigermaßen brauchbar geworden und mit Fire-Tools gibt es eine Toolbox, mit der man fast zum Stock-Android-Erlebnis kommen kann.

Weiterlesen...
 
Autologin in Wiki

Ich hatte für einen Verein ein Mediawiki aufgesetzt und ein Verwaltungstool für diverse Tätigkeiten erstellt.
Da es den meisten Mitgliedern schon schwer fällt, sich Passwort und URL des Verwaltungstools zu merken, wollte ich von dort aus zur Wiki verlinken und den Benutzer auch gleich einloggen, denn ohne Login kann man in jener Wiki keine Artikel lesen.

Das Ganze ist gar nicht so einfach, obwohl es eine API für Logins gibt. Jene ist allerdings mit solchen Fallstricken verbunden, dass man sie an sich gar nicht verwenden kann.
Jedenfalls fand ich nirgends ein funktionierendes Praxis-Beispiel hierfür.

Im Folgenden mein Workaround, um von Seite A mit einem Klick auf Button/Link XY zur Wiki zu gelangen und dort automatisch eingeloggt zu werden.

Weiterlesen...
 
Ältere Systeme: homebrew ist nicht alles

Früher hatte ich mal MacPorts verwendet, dann kam homebrew mit seinem coolen brew-Befehl und seinen casks, die ich ehrlich gesagt immer noch nicht so richtig verstanden habe.
(Relativ) Schnell war ein Kommandozeilenprogramm mit brew install wasauchimmer installiert.

Allerdings achtet homebrew nicht all zu sehr auf Rückwärtskompatibilität. Ich will das binary aus irgendwelchen Gründen in Version 2.7 statt der aktuellen Version 2.8 installieren...das alleine kann schon tricky werden und die Jungs von homebrew haben über die Jahre hinweg die Möglichkeiten hierzu immer weiter und weiter eingeschränkt.
Klar, ist ja auch absolut unsicher, nicht die neuste Version zu nehmen. Da könnte einem das Haus abbrennen und das Bankkonto abgeräumt werden.

Nun soll es ja Leute geben, die sich nicht jedes Jahr den neusten Scheiß kaufen, weil der alte Scheiß ja immer noch hervorragend funktioniert (oder gar noch besser als der neue Scheiß) und so setze ich nun halt mal einen Mac mit macos 10.13 ein, von dem homebrew schon seit einer Zeit bei Nutzung warnt: Ist zu alt, unterstützen wir nicht, mach doch mal nen Upgrade (ergo: schmeiß es auf den Elektromüllberg und kauf Dir was Neues).

Als ich nun auf einem Rechner mit macos 10.13 mosquitto installieren wollte, was ich auf einem anderen Rechner mit macos 10.13 vor Jahren schon installiert hatte und was dort problemlos läuft, war die Verzweiflung groß. Denn inzwischen lässt es sich nicht mehr über homebrew installieren, da die Abhängigkeiten neuer sind und nicht mehr mit dem System zusammenspielen und homebrew ja sowieso rummotzt.

Weiterlesen...
 
USV an Mac und anderen Geräten
Ich habe mir neulich eine USV besorgt, die im Fall der Fälle für etwa eine Stunde meinen MacMini, ein Synology NAS, einen Switch und die Fritzbox mit Strom versorgen kann.

Es handelt sich um eine CyberPower 700VA, mit der ich soweit (sie hat bisher nur einen Stecker-zieh-Test gehabt) ganz zufrieden bin.

Zwar war der Anschaffungszweck, dass die USV die wichtigsten Geräte nur ein paar Minuten mit Strom versorgen muss, bis ich den Hausstrom auf Inselbetrieb umgeschaltet habe, allerdings kann es ja auch mal sein, dass ich nicht zu Hause bin oder schlafe.
Für den Fall, dass die Batterie ausgeschöpft ist, hat eine USV die Möglichkeit, ein Gerät herunterzufahren.

Dass die Synology NAS sich mit der USV versteht, war mir schon klar, dass der Mac sich auch mit der USV verbinden lässt, war eine positive Überraschung.

Aber wie kann ich sowohl den Mac wie auch die NAS zusammen herunterfahren lassen?

Weiterlesen...
 
Laden der Systemsoftware des Entwicklers wurde blockiert
Daran bin ich jetzt schon nen paar Mal hängen geblieben und immer wieder suche ich auf's neue nach einer Lösung, deshalb hier mal festgehalten:

MacOS X scheint (zumindest in Version 10.13) einen Bug zu haben: Wenn ich Software installiere, die eine Kernel Extension installiert, müsste ich diese Kernel Extension in den Systemeinstellungen unter Sicherheit freigeben.

Dort erscheint im Reiter "Allgemein" die Nachricht "Laden der Systemsoftware des Entwicklers XXX wurde blockiert" mit einem Button "Erlauben"

Allerdings passiert zumindest in meinem Fall nichts, wenn man den Button "Erlauben" anklickt.

Ärgerlich...

Weiterlesen...
 
bitwarden als Authenticator nutzen / Google-Authenticator-TOTPs in anderem Authenticator nutzen

Ich hatte bisher den Google Authentificator verwendet, um für verschiedene Dienste wie Google, Amazon & Co. die 2-Faktor-Authentifizierung zu verwenden, was ich jedem nur ans Herz legen kann.

Zwar hatte ich mal eine Mitteilung gelesen, dass auch bitwarden / vaultwarden als Authenticator genutzt werden kann (ob es sinnvoll ist, Passwortmanager und Authenticator zusammen im selben Dienst zu verwenden, sei nun mal dahingestellt), aber da die Funktion nicht all zu offensichtlich ist, bin ich bis vor kurzem davon ausgegangen, dass die Funktion erst noch in Planung wäre.
Aber wenn man weiß, wo sie versteckt ist...

Aber da tut sich gleich ein Problem auf:
Wie bekomme ich die OTP-Infos (One Time Password) der Konten, die ich im Google Authenticator eingerichtet hatte, nach bitwarden?
Zwar hat der Google Authenticator eine Export-Funktion. Jene ist aber eher dafür gedacht, die Infos aus dem Google Authenticator auf ein anderes Handy mit ebenfalls dem installierten Google Authenticator zu übertragen, indem man sich einen QR-Code anzeigen lässt, welchen man mit dem anderen Handy abscannt.
Zwar haben einige Online-Dienste wie etwa Amazon die Möglichkeit, mehrere Authenticators hinzuzufügen, andere wie etwa Google aber nicht. Dort kann man nur den einen Authenticator entfernen und dann einen neuen hinzufügen. Ich möchte aber sowohl den Google Authenticator wie auch bitwarden erstmal parallel nebeneinander nutzen können, falls etwas schief läuft oder ich doch wieder zum Google Authenticator zurückkehren möchte.

Deshalb im Folgenden einmal erklärt, wie man bitwarden generell als OTP-Authenticator verwenden kann und wie man OTP-Accounts aus dem Google Authenticator exportieren und wo anders wieder importieren oder backupen kann.

Weiterlesen...
 
PH-803W per PHP abfragen

PH-803W ist wohl ein Wasserqualitäts-Sensor, den ein Freund von mir in Verwendung hat und in seine IP Symcon-Heimautomation einbinden möchte.

Allerdings hat der Sensor keine offene API, sondern sendet seine Werte an eine Handyapp.
Für den IOBroker hatte jemand eine Lösung auf GitHub veröffentlicht und hier fand' ich noch ein python-Skript, um an die Werte zu kommen.

Allerdings wäre für IP Symcon ein PHP-Skript notwendig, also musste ich ran.
Zum Glück hatte der Entwickler der IOBroker-Lösung auch noch eine gute Dokumentation beigelegt, welche HEX-Werte zu senden sind und wie die Antworten zu interpretieren sind, so dass die Sache kein großes Problem war.

Weiterlesen...
 
.htaccess-Refresher

Ich habe ein paar Websites (wie z.B. auch in so gut wie allen Fällen den phpMyadmin) per .htaccess abgesichert, so dass man nur von bestimmten IP-Adressen aus darauf zugreifen kann.

Beispiel:

order deny,allow
deny from all
Allow from 198.141.12.11
Allow from 198.141.12.12

Das funktioniert für den Zugriff vom Firmennetzwerk aus recht gut, von zu Hause aus allerdings nur für einen Tag, da sich bei mir zu Hause die IP täglich ändert und ich somit immer erst die .htaccess-Datei ändern muss, um zugreifen zu können.

Deshalb habe ich mir ein Skript geschrieben, welches in sämtlichen .htaccess-Dateien meine IP-Adresse aktualisiert.

Weiterlesen...
 
Würde die Autoindustrie wie die Computerindustrie ticken...

...wären alle Autos seit Jahren elektrifiziert und würden mit 10kWh/100km über die Autobahn jagen.

Auf der anderen Seite würden die Marketing-Eckpunkte für die Präsentation des kommenden Golf, Generation 47, in etwa so aussehen:

  • Laut Benchmark doppelt so viel Leistung, wie das Vorgänger-Modell. Nun satte 5523 PS! (dass alles ab über 150PS für den Ottonormalverbraucher Unsinn war, ist jedem egal. Hat ja nun immerhin doppelt so viel Leistung!!!111!!)
  • Wir konnten auch die Höchstgeschwindigkeit auf 729km/h steigern (das sieht gut aus...auch wenn inzwischen in jeder Stadt nur max 30km/h gefahren werden darf)
  • Der neue FastCharge-4-Ladeport ermöglichst eine schnellere Beladung des Akkus (leider muss man mal wieder das Ladekabel und die heimische Wallbox austauschen, weil die zum neuen Ladeport nicht kompatibel sind. Auch mit dem Laden unterwegs könnte es schwierig werden, bis die Ladenetzbetreiber nachgezogen sind. So ne Technologie macht man ja nicht abwärtskompatibel...ist ja schließlich FastCharge 4!!!11!)

Und auf der Kehrseite habe ich mit meinem noch gut funktionierenden Golf Baujahr 2014 inzwischen einige Probleme:

  • Ich darf in kein Parkhaus mehr rein fahren, da er "viel zu unsicher" ist
  • Die VW-Werkstatt will mir auch keinen Termin mehr geben, da er "viel zu unsicher" ist. Passende Ersatzteile haben sie sowieso schon lange keine mehr.
  • Unterwegs laden kann mühselig sein, da es fast keine FastCharge-1-Ladestationen mehr gibt und der 2014er-Golf schon mit FastCharge2-Ladestationen nicht mehr kompatibel war
  • Damals wurde ich belächelt, dass ich 20'000€ für so nen Golf ausgebe. Wie kann man so viel Geld für ein Auto ausgeben...?! Den aktuellen Golf reißen die Leute dem VW-Händler allerdings für 50'000€ aus den Händen, weil er halt trendy ist
  • Wahrscheinlich darf ich demnächst nicht mehr auf die Autobahn damit, weil das Fahrzeug dafür ein wichtiges Software-Update benötigen würde. Allerdings macht VW für die 2014er-Modelle keine Softwareupdates mehr. Für das neuste Softwareupdate benötige ich doch schon nen neues Auto

 
Shelly - WiFi Geräte komplett ohne Cloud-Kram nutzbar

Ich hatte schon immer ein Auge auf die Shelly-Produktfamilie, mit der man bestimmte Geräte zu Hause steuern, bzw. ein- und ausschalten kann.
Und zwar ohne, dass ich mir nen klobigen Stecker zwischen Steckdose und Lampe stecke und ohne dass ich mir eine extra Glühbirne kaufen muss, die WLAN, Bluetooth und LTE eingebaut hat.

Als ich mal den Stromverbrauch einiger Elektrogeräte wie Geschirrspüler und Waschmaschine aufzeichnen wollte (also nicht nur den Gesamtverbrauch in kWh, sondern wann während des Betriebes wie viel Watt gezogen werden), stieß ich wieder auf Shelly.

Sowohl der/die/das Shelly Plug wie auch der/die/das Shelly Plug S (und Shelly Plug Plus S – da konnte ich aber keinen wirklichen Benefit im Vergleich zu den beiden anderen feststellen) können den aktuell anliegenden Verbrauch messen.
Shelly Plug S ist allerdings nur bis zu 2500 Watt ausgelegt, der teurere Shelly Plug ohne S macht bis zu 3500 Watt mit.

Nun habe ich doch den klobigen Stecker zwischen Steckdose und Gerät, aber für diesen Zweck genau das Richtige – ist sowieso hinter nem Schrank ;-)

Toll, dass ich den Shelly Plug sowohl ohne irgendeinen Hersteller-Cloud-Registrierungszwang in Betrieb nehmen kann, als auch ohne irgend einen Cloud-Kram nutzen kann, denn die Shelly-Geräte können unter anderem über MQTT kommunizieren.

Weiterlesen...
 
Webserver-Backup mit Kommandozeilenprogramm sftp

Eigentlich geht es hier nicht speziell um Webserver-Backups, sondern eher allgemein um die Verwendung des sftp-Kommandozeilenprogrammes.

In meinem ganz speziellen Fall wollte ich jedoch ein wöchentliches Backup aller PHP-Skripte & Co. von einem Webserver machen, da ich an den PHP-Skripten ständig arbeite und im Hintergrund gerne eine relativ aktuelle funktionierende Kopie haben möchte.

Sucht man im Internet zu Hilfestellungen zum sftp-Kommandozeilenprogramm, endet die Hilfestellung meist mit dem Tipp, doch lieber scp oder rsync zu verwenden.
Dies soll hier nicht der Fall sein, da in meinem Fall der betroffene Webserver jegliche Verbindung außer explizit sftp ausschließt.

Mein Ziel:
Ein kurzes Skript, das fast alle Dateien eines Verzeichnisses auf dem SFTP-Server herunterlädt. Ich paar Dateien und Verzeichnisse möchte ich allerdings vom Herunterladen ausschließen, da sie Bilder, Dokumente und temporäre Daten enthalten, welche ich bei meiner Kopie nicht benötige.
Das schließt die einfachste Verwendung von sftp schonmal aus...

Weiterlesen...
 
mysql: Datumsintervall generieren

Absolutes Randgruppenthema und ein exotisches noch dazu, aber da ich mir für die Lösung eines Problemes stundenlang die Finger wundgegoogelt hatte, hier mal ein Treffer mehr für die Google-Suche.

Was war das Problem?

Ich habe ein Tabelle mit Bestellungen verschiedener Shops, wie etwa vereinfacht jene hier

id shop datum
 1    1 2022-12-01
 2    1 2022-12-01
 3    1 2022-12-02
 4    2 2022-12-02
 5    2 2022-12-02

Nun will ich je Shop und je Tag (und auch je Woche, je Monat, je Jahr) wissen, wie viele Bestellungen für Shop 1 und Shop 2 jeweils eingegangen sind. Das ganze auch grafisch in einem Diagramm darstellen.

Man möchte meinen, mit einem COUNT() und GROUP BY sei dies ja ganz einfach. Allerdings bekomme ich kein Ergebnis für die Tage/Wochen/Monate/Jahre, wo es bei einem Shop keine Bestellung gab.

SELECT COUNT(id) AS anzahl, shop, datum
  FROM bestellungen
  WHERE datum >= '2022-12-01' AND datum <= '2022-12-02'
  GROUP BY shop, datum

anzahl shop datum
     3    1  2022-12-01
     1    1  2022-12-02
     2    2  2022-12-02

Ich vermisse das Ergebnis "Shop 2 am 1.12.2022 Anzahl: 0"

Weiterlesen...
 
  Seite:  1 2 3  ...  22 23 24 >> 352 Artikel insgesamt