<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Linuxkurs-Blog (Einträge über Web)</title><link>https://lannert.de/debloss/</link><description></description><atom:link href="https://lannert.de/debloss/categories/web.xml" rel="self" type="application/rss+xml"></atom:link><language>de</language><copyright>Contents © 2026 &lt;a href="mailto:lannert@hhu.de"&gt;Detlef Lannert&lt;/a&gt; 
&lt;a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;
&lt;img alt="Creative Commons License BY-NC-SA"
style="border-width:0; margin-bottom:12px;"
src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png"&gt;&lt;/a&gt;</copyright><lastBuildDate>Fri, 20 Mar 2026 21:56:19 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Speicherplatz sparen durch Deduplizieren</title><link>https://lannert.de/debloss/posts/speicherplatz-sparen-durch-deduplizieren/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;Wenn man im Firefox mehrere Webseiten einer Site „komplett“ (in einem
dafür eigens angelegten Unterverzeichnis) speichert, legt er zusätzlich
zu einer HTML-Datei pro Seite jeweils ein Verzeichnis mit den verlinkten
Dateien an. Dadurch entstehen meist zahlreiche Kopien derselben JS- und
CSS-Dateien, Hintergrund- oder Titelbilder usw. usf., die unnötig Platz
beanspruchen. Wie kann man diese Daten platzsparender speichern?&lt;/p&gt;
&lt;p&gt;Das Programm &lt;code class="docutils literal"&gt;rdfind&lt;/code&gt; (das z.B. für Debian-Systeme als gleichnamiges Paket
existiert) kann helfen: Man wechselt in das Verzeichnis, in dem die Downloads
liegen, und ruft es zunächst im dry-run-Modus auf:&lt;/p&gt;
&lt;pre class="literal-block"&gt;rdfind -dryrun true -makehardlinks true .&lt;/pre&gt;
&lt;p&gt;Wenn die Ausgabe plausibel erscheint, klopft man dreimal auf Holz und lässt es
im Normalmodus laufen:&lt;/p&gt;
&lt;pre class="literal-block"&gt;rdfind -makehardlinks true .&lt;/pre&gt;
&lt;p&gt;Es gibt einige Informationen über den Ablauf aus und teilt u.a. mit, wieviel
Speicherplatz eingespart wurde, indem die Dateiduplikate durch Hardlinks
ersetzt wurden. Das heißt, in jedem Seitenverzeichnis sind nach wie vor alle
Dateien vorhanden, aber identische Dateien sind nur einmal im Dateisystem
gespeichert, alle Kopien verweisen auf denselben Datenbereich. Löscht man
später einzelne Verzeichnisse, so bleiben die Daten so lange erhalten, bis die
letzte Referenz (der letzte Hardlink) gelöscht wurde – genau so, wie man es
braucht.&lt;/p&gt;
&lt;p&gt;Je nachdem, welches Backup-Tool man verwendet (hoffentlich überhaupt eines!),
kann es sein, dass dieses die Hardlinks nicht berücksichtigt und die Dateien
pro Link einmal auf das Backup-Medium kopiert. Dadurch kann sich der
Speicherplatzbedarf der Backups unerwartet vergrößern. Falls das Tool selbst
dedupliziert, dürfte dieser Effekt nicht auftreten.&lt;/p&gt;</description><category>CLI</category><category>Dateisystem</category><category>Shell</category><category>Web</category><guid>https://lannert.de/debloss/posts/speicherplatz-sparen-durch-deduplizieren/</guid><pubDate>Fri, 20 Mar 2026 19:00:00 GMT</pubDate></item><item><title>Kampagnen zur „Altersverifikation“ im Internet – kommt die freie Software dabei unter die Räder? [Update]</title><link>https://lannert.de/debloss/posts/altersverifikation-im-internet-freie-software/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;Einer &lt;a class="reference external" href="https://github.com/upper-up/meta-lobbying-and-other-findings"&gt;umfangreichen Recherche&lt;/a&gt;
zufolge hat Meta viele Millionen $$ und mehr als 80 Lobbyisten eingesetzt,
um Google und Apple mit ihren App-Stores für eine Altersverifikation im Internet
verantwortlich zu machen – und selbst, mit seinen Social-Media-Angeboten, damit
keinen Aufwand zu haben.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://lwn.net/Articles/1062779/"&gt;LWN&lt;/a&gt; macht darauf aufmerksam, zumal in einigen
US-Bundesstaaten schon (offenbar als Ergebnis dieser Lobbyarbeiten) entsprechende
Gesetze verabschiedet wurden. Dabei soll die Altersverifikation, natürlich
verbunden mit biometrischer Identifikation der Nutzer, vom Betriebssystem
erzwungen werden. Dies wäre nicht nur eine großartige Basis für eine totale
Überwachung aller Internetaktivitäten der ganzen Bevölkerung (Big Brother lässt
grüßen!), sondern womöglich auch das Ende freier Betriebssystemsoftware.&lt;/p&gt;
&lt;p&gt;Sollten die Internetaktivitäten Minderjähriger nicht am besten von ihren Eltern
kontrolliert (und mitverantwortet) werden? Vielleicht durch administrative
Einstellungen im System? Kinder können auch ohne „Root-Rechte“ ein Smartphone,
ein Tablet oder einen Laptop / PC sinnvoll für Schul- und Freizeitzwecke
nutzen und dabei Medienkompetenz erwerben …&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; Ein &lt;a class="reference external" href="https://www.theregister.com/2026/03/13/opinion_os_verification/"&gt;Artikel von The Register&lt;/a&gt;
behandelt ebenfalls dieses Thema und die Auswirkungen auf Linux.&lt;/p&gt;</description><category>Linux</category><category>Programmieren</category><category>Sicherheit</category><category>Web</category><guid>https://lannert.de/debloss/posts/altersverifikation-im-internet-freie-software/</guid><pubDate>Fri, 13 Mar 2026 16:00:00 GMT</pubDate></item><item><title>Ein schnelles, typsicheres API-Framework für Python mit Django-ORM</title><link>https://lannert.de/debloss/posts/ein-schnelles-typsicheres-api-framework-fur-python-mit-django-orm/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://github.com/FarhanAliRaza/django-bolt"&gt;django-bolt&lt;/a&gt; ist ein auf
Rust aufbauendes API-Framework, schneller als FastAPI, das mit dem Django-ORM,
Django-Admin und Django-Paketen arbeitet und voll typisiert ist.&lt;/p&gt;</description><category>API</category><category>Django</category><category>Python</category><category>Rust</category><category>Web</category><guid>https://lannert.de/debloss/posts/ein-schnelles-typsicheres-api-framework-fur-python-mit-django-orm/</guid><pubDate>Fri, 12 Dec 2025 19:00:00 GMT</pubDate></item><item><title>Spambots aussperren, ohne Menschen mit Bilderrätseln zu plagen</title><link>https://lannert.de/debloss/posts/spambots-aussperren-ohne-menschen-mit-bilderratseln-zu-plagen/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://mosparo.io/"&gt;mosparo&lt;/a&gt; ist ein Open-Source-Spamchecker für
Webformulare, der nicht das Lösen von Bilderrätseln verlangt und keine Daten
an Google schickt – das scheint ein guter Captcha-Ersatz zu sein.
Es gibt Plugins zur leichteren Integration in z.B. Django oder Typo3.
Die mosparo Association ist eine gemeinnützige Organisation in der Schweiz.&lt;/p&gt;</description><category>Django</category><category>Sicherheit</category><category>Web</category><guid>https://lannert.de/debloss/posts/spambots-aussperren-ohne-menschen-mit-bilderratseln-zu-plagen/</guid><pubDate>Fri, 05 Dec 2025 19:00:00 GMT</pubDate></item><item><title>Einen Python-Editor oder ein Jupyter-Notebook in eine Webseite einbetten</title><link>https://lannert.de/debloss/posts/einen-python-editor-oder-ein-jupyter-notebook-in-eine-webseite-einbetten/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;Mit &lt;a class="reference external" href="https://getpynote.net/"&gt;pynote&lt;/a&gt; kann man Python-Notebooks in Webseiten
einbetten – es genügt dafür ein Script-Tag und ein Element
&lt;code class="docutils literal"&gt;&lt;span class="pre"&gt;&amp;lt;pynote&amp;gt;&amp;lt;/pynote&amp;gt;&lt;/span&gt;&lt;/code&gt;. Wenn das Element leer ist, bekommt man einen
Python-Editor mit leerem Arbeitsbereich, in den man Programmzeilen eintippen
und ausführen lassen kann; alternativ kann auch Code für den Editorbereich
vorgegeben oder aus einer Datei geladen werden. Wird eine &lt;code class="docutils literal"&gt;.ipynb&lt;/code&gt;-Datei
geladen, stellt pynote das Jupyter-Notebook dar, das wie gewohnt eine bearbeit- und
ausführbare Mischung aus Text- und Programmabschnitten sein kann.&lt;/p&gt;
&lt;p&gt;Auf der verlinkten Webseite gibt es eine Reihe von Beispielen zum Ausprobieren.&lt;/p&gt;</description><category>Notebook</category><category>Programmieren</category><category>Python</category><category>Web</category><guid>https://lannert.de/debloss/posts/einen-python-editor-oder-ein-jupyter-notebook-in-eine-webseite-einbetten/</guid><pubDate>Thu, 27 Nov 2025 19:00:00 GMT</pubDate></item><item><title>Materielles Design</title><link>https://lannert.de/debloss/posts/materielles-design/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;div&gt;&lt;p&gt;Von Google gibt es einen Satz von Icons nach deren
Material-Design-Gestaltungsrichtlinien – die Symbole kommen einem sehr bekannt
vor, weil sie auf vielen Webseiten benutzt werden. Da sie unter einer
freizügigen Lizenz stehen, spricht (jedenfalls rechtlich) nichts dagegen, sie
ebenfalls zu benutzen. Wie macht man das?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://lannert.de/debloss/posts/materielles-design/"&gt;Weiterlesen…&lt;/a&gt; (1 min verbleiben zum Lesen)&lt;/p&gt;&lt;/div&gt;</description><category>Fonts</category><category>Grafik</category><category>Publishing</category><category>Web</category><guid>https://lannert.de/debloss/posts/materielles-design/</guid><pubDate>Sat, 04 Oct 2025 18:00:00 GMT</pubDate></item><item><title>OCSP wird unbeliebt</title><link>https://lannert.de/debloss/posts/ocsp-wird-unbeliebt/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://de.wikipedia.org/wiki/Online_Certificate_Status_Protocol"&gt;OCSP&lt;/a&gt; galt mal als sehr
empfehlenswertes Protokoll, weil es ermöglicht, mit wenig Aufwand die aktuelle Gültigkeit von
Zertifikaten zu überprüfen. Nun &lt;a class="reference external" href="https://lwn.net/Articles/982965/"&gt;fällt es jedoch in Ungnade&lt;/a&gt;,
weil Certification Authorities juristisch dazu herangezogen werden könnten, (Web-) Clients
über ihre OCSP-Abfragen zu verfolgen. Let's Encrypt will deshalb den Support für OCSP einstellen.&lt;/p&gt;</description><category>Sicherheit</category><category>Web</category><guid>https://lannert.de/debloss/posts/ocsp-wird-unbeliebt/</guid><pubDate>Tue, 30 Jul 2024 09:00:00 GMT</pubDate></item><item><title>APIs auf der Kommandozeile aufrufen</title><link>https://lannert.de/debloss/posts/apis-auf-der-kommandozeile-aufrufen/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://github.com/darrenburns/posting"&gt;posting&lt;/a&gt; ist ein TUI-basiertes Kommandozeilenprogramm,
mit dem Web-APIs recht komfortabel aufgerufen werden können.&lt;/p&gt;</description><category>API</category><category>Programmieren</category><category>Web</category><guid>https://lannert.de/debloss/posts/apis-auf-der-kommandozeile-aufrufen/</guid><pubDate>Fri, 12 Jul 2024 08:00:00 GMT</pubDate></item><item><title>Eine Alternative zu Google Analytics</title><link>https://lannert.de/debloss/posts/eine-alternative-zu-google-analytics/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;&lt;a class="reference external" href="https://github.com/umami-software/umami"&gt;umami&lt;/a&gt; ist eine einfache und sicherheitsorientierte
Alternative zu Google Analytics.&lt;/p&gt;</description><category>Web</category><guid>https://lannert.de/debloss/posts/eine-alternative-zu-google-analytics/</guid><pubDate>Wed, 22 May 2024 08:00:00 GMT</pubDate></item><item><title>Cheatsheets für dies und jenes</title><link>https://lannert.de/debloss/posts/cheatsheets-fur-dies-und-jenes/</link><dc:creator>Detlef Lannert</dc:creator><description>&lt;p&gt;Eine kleine Sammlung von Cheatsheets, die gegebenenfalls ergänzt wird, wenn weitere Fundstücke
entdeckt werden:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://getbootstrap.com/docs/5.3/examples/cheatsheet/"&gt;Bootstrap cheatsheet&lt;/a&gt;
(für Bootstrap 5.3)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://proxiesapi.com/articles/the-complete-beautifulsoup-cheatsheet-with-examples"&gt;BeautifulSoup-Cheatsheet&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://gto76.github.io/python-cheatsheet/"&gt;Comprehensive Python Cheatsheet&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The (arguably) &lt;a class="reference external" href="https://kieranholland.com/best-python-cheat-sheet/"&gt;Best Python cheat sheet&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://mypy.readthedocs.io/en/stable/cheat_sheet_py3.html"&gt;mypy-Typing-CheatSheet&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="reference external" href="https://www.pythonsheets.com/notes/python-asyncio.html"&gt;Python asyncio cheatsheet&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Siehe auch &lt;a class="reference external" href="https://lannert.de/debloss/posts/freie-cheatsheets-im-paket/"&gt;hier&lt;/a&gt;.&lt;/p&gt;</description><category>Linux</category><category>Programmieren</category><category>Web</category><guid>https://lannert.de/debloss/posts/cheatsheets-fur-dies-und-jenes/</guid><pubDate>Wed, 10 Apr 2024 08:00:00 GMT</pubDate></item></channel></rss>