logo

Suletuxe.de
Linux - Nutzer
helfen
Linux - Nutzern

Willkommen, Gast. Bitte Login oder Registrieren.
06. Dezember 2022, 04:03:50
Übersicht Hilfe Suche Login Registrieren

Amateurfunk Sulingen
 1   allgemeine Kategorie / Allgemeine Diskussionen / Zufall oder nicht  am: 05. Dezember 2022, 09:31:06 
Begonnen von Andreas | Letzter Eintrag von Andreas
Heute habe ich in meinem (ganz normalen) Adventskalender dies hier gefunden:


Der Kalender hat keinerlei Bezug zu Software oder IT...

LG
Andreas
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 2   allgemeine Kategorie / Installation & Einrichtung / Manueller Eingriff erforderlich: python-cairo, In Konflikt stehende Dateien  am: 04. Dezember 2022, 09:35:18 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Heute Morgen, bekam ich folgende Fehlermeldung während des Updates:

Code:

Fehler: Der Vorgang konnte nicht durchgeführt werden (In Konflikt stehende Dateien)
python-cairo: /usr/lib/python3.10/site-packages/cairo/__pycache__/__init__.cpython-310.pyc existiert im Dateisystem
Fehler sind aufgetreten, keine Pakete wurden aktualisiert.

Das Endevour Team zeigt diese Lösung dafür auf:

https://forum.endeavouros.com/t/manual-intevention-needed-python-cairo-conflicting-files-during-update/34508/1

Danach lief das Update durch

Edit:

Um die Fehlermeldung zu verstehen, muss man sie wie folgt interpretieren:

In meinem Dateisystem gab es die binäre Datei /usr/lib/python3.10/site-packages/cairo/__pycache__/__init__.cpython-310.pyc schon, die vorher noch nicht im Paket python-cairo vorhanden war. Nun gibt es in der neusten Fassung auch eine binäre Datei unter demselben Pfad/Namen, im Paket python-cairo. Da pacman diese Datei nicht angelegt hat, lässt er diese Datei aus Sicherheitsgründen lieber in Ruhe, um nicht etwas kaputtzumachen, was man vielleicht selbst so wollte. Man könnte ja schließlich aus welchen Grund auch immer die Datei dort selbst angelegt haben.

Wäre es eine einfache Textdatei, und keine binäre so hätte pacman eine .pacnew Datei mit den neusten inhalt einfach angelegt, damit der Benutzer später selbst entscheiden kann welche Version er verwenden möchte. Bei binären Dateien geht dies nicht. Deswegen bricht hier pacman ab.

Der Befehl aus der Lösung von EndevourOS Team sorgt jetzt dafür, dass pacman mitgeteilt wird, dass er die Datei ruhig überschreiben darf, um diese mit der Version aus dem Paket zu ersetzten. Deswegen läuft das Update danach auch weiter durch.

Wie kann so etwas nun passieren, dass es auf einmal Dateien gibt, die der Paketmanger nicht kennt, man aber auch nicht selbst angelegt hat?

Nun manchmal werden von Programme beim ersten Starten auch Dateien generiert, und wenn diese Programme mit erhöhten Rechten laufen können diese natürlich auch Dateien in Systemverzeichnisse erstellen. Ob das nun auch hier der Fall war, kann ich nicht beurteilen, denn dafür kenne ich das Paket python-cario nicht gut genug, und weiß nur soviel, dass es etwas mit Grafiken zu tun hat und von anderen Paketen, die ich benötige, gebraucht wird.
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 3   allgemeine Kategorie / Allgemeine Diskussionen / Aufbau des Portable Document Format (PDF)  am: 01. Dezember 2022, 16:45:00 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Wie hier angekündigt, wollte ich mich zurückmelden, sobald ich etwas mehr über das PDF weis. Da das Thema komplexer ist, mache ich dafür lieber einen eignen Thread auf.

Der Post wird noch nicht ganz fertig und ich werde ihn später noch weiter ergänzen.

PDF Syntax

Der Dokumenteninhalt besteht aus verschiedenen Objekten, die aus folgenden Elementen bestehen:


  • Namen geschrieben als /Name
  • Ganzzahlen wie 30
  • Strings, die mit Klammern dargestellt werden (Dies ist ein String)
  • Objektreferenzen wie 3 0 R das zum dritten Objekt verweist.
  • Arrays wie [30 70 /Name] ein Array mit 3 Objekten 30, 70 und /Name
  • Dictionaries (Bilioteken) wie << /ten 10 /two 2 >> das /ten auf die 10 und /two auf die 2 verweist.
  • Streams, die aus Dictionaries bestehen, die PDF-Grafik Operatoren (um PDF Vektorgrafiken zu zeichnen) oder andere binäre Daten enthalten (Anhänge, Rastergrafiken etc.)


Anmerkung:

In so einen Stream Objekt kann man alles an Daten rein kodieren, was man möchte.

Jedes erzeugte Objekt wird durchnummeriert und in die cross-reference-table eingetragen, die den offset jedes Objekt enthält, wo genau man dies in der Datei finden kann.

z.b. diese Seiten Liste Objekt:

Code:

1 0 obj # Objekt 1
<< /Type /Pages # Es ist eine Seiten Liste
    /Count 1 # Es gibt eine Seite
    /Kids [2 0 R] # Liste von Objekt Nummern der Seiten, hier nur das Seiten Objekt 2
>>
endobj # Ende von Objekt 1

Wenn man also in dem Seiten Liste Objekt nach /Count sucht, bekommt man die Anzahl der Seiten einer PDF heraus. Das kann man sich in Hinterkopf behalten, falls man die Seitenanzahl einer PDF mithilfe eines Skriptes einlesen möchte.

PDF Struktur

Eine einfache gültige PDF-Datei besteht aus 4 Teilen in folgender Reihenfolge:


  • Denn Header indem die PDF Version Nummer steht
  • Denn Body der die Seiten, Grafiken und ergänzende Informationen in Form von mehreren Objekten kodiert hat. 
  • Die cross-reference table die, die Positionen der Objekte in der Datei referenziert, und damit den Zufallszugriff (Es muss nicht die ganze Datei geladen werden, um eine Seite in der Mitte z.B. aufzurufen) sicherstellt.
  • Denn trailer mit dem trailer dictionary der Metadaten enthählt und hilft jede stelle in der Datei zu finden. Dieser enthält auch denn offset zur cross-reference table


Der Header

Eine PDF-Datei fängt mit dem Header an, die dem jeweiligen benutzten Programmen mitteilt, dass es sich um eine PDF-Datei handelt, und in welche Version diese vorliegt.


  • 1 Zeile enthält die PDF-Version
  • 2 Zeile enthält binär Daten, damit die Datei als ein Binary erkannt wird.


Code:

%PDF-1.4 # PDF 1.4 Version header
0101010 # Binary Daten


Fortsetzung folgt...
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 4   allgemeine Kategorie / Installation & Einrichtung / Re:Programm-PID finden  am: 28. November 2022, 17:07:46 
Begonnen von Andreas | Letzter Eintrag von Sebastian
Und falls man nur die PID benötigt für sein Script bekommt man so nur die PID ausgeben ohne den Rest der Befehlszeile:

Code:

pgrep -f regler_auslesen.php

pgrep ist im Paket procps-ng das eine Abhängigkeit von base ist, und somit auf jeden Arch vorhanden sein müsste.

Regex ist sehr mächtig, und das Mittel der Wahl, wenn man Zeichenketten präzise suchen möchte.

Für das Studium von Regex kann ich das Buch Einstieg in reguläre Ausdrücke empfehlen.

Und zum Üben Ausprobieren:
https://regex101.com/

Und hier ist eine Seite, die reguläre Ausdrücke als SVG oder PNG darstellt.
https://regexper.com/
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 5   allgemeine Kategorie / Installation & Einrichtung / Programm-PID finden  am: 28. November 2022, 07:50:44 
Begonnen von Andreas | Letzter Eintrag von Andreas
Manchmal steht man vor dem Problem die PID eines laufenden Prozesses in einem Script zu ermitteln. das geht wunderbar mit ps und grep - etwa so:
Code:
ps ax | grep PROZESSNAME

Ich gebe mal ein komplettes Beispiel. Ich möchte wissen ob der cron-Prozess "regler-auslesen.php" noch läuft. Das geht so:
Code:
ps ax | grep regler_auslesen.php
3812125 ?        Ss    0:00 /bin/sh -c /var/www/html/regler_auslesen.php          >/dev/null
3812357 pts/3    S+    0:00 grep regler_auslesen.php
Schon mal nicht schlecht - aber der grep-Prozess, der ja zum Zeitpunkt der Suche selbst gerade läuft findet auch stets sich selbst. Man bekommt also immer ZWEI Prozesse angezeigt: den, den man sucht und den Prozess der gerade danach sucht. Auf der Kommandozeile kein Problem - in einem Script schon. Da brauche ich exakt EINE PID. Das kann man ganz einfach lösen: die Suchzeichenkette von grep kennt regex. Also suche ich einfach wie folgt:
Code:
ps ax | grep [r]egler_auslesen.php
3934227 ?        Ss    0:00 /bin/sh -c /var/www/html/regler_auslesen.php          >/dev/null
und schwupps! finde ich nur den Prozess nach dem ich suche. Warum? Beschäftigt euch mal mit "regex" (reguläre Ausdrücke). Ist nicht wirklich einfach - aber seeeeeehr mächtig 

LG
Andreas
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 6   allgemeine Kategorie / Installation & Einrichtung / GRUB Bug bei UEFI Systemen mit verschlüsselten /boot  am: 27. November 2022, 18:17:25 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Nur eine kleine Information das in der aktuellen Version von GRUB (2:2.06.r380.g151467888-1) es einen kleinen Bug gibt der folgenden Fehlermeldung beim Booten erzeugt und den Start ca. 5 Sekunden verzögert.

Code:

`Booting Arch Linux Linux, with linux-lts'

error: no such cryptodisk found, perhaps a needed disk or cryptodisk module is not loaded.
Loading Linux linux-lts ...
Loading initial ramdisk ...

Press any key to continue...

Betroffen sind Systeme unter folgenden Voraussetzungen:


  • UEFI System
  • verschlüsseltes LUKS /boot Volume


Lösung

Durch ein Downgrade auf die vorherige Version 2.0.6.r334.g340377470 kann die Fehlermeldung bis zum eigentlichen Fix behoben werden.

Weitere Infos

 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 7   allgemeine Kategorie / Installation & Einrichtung / Änderungen in der /etc/mkinitcpio.conf  am: 26. November 2022, 10:14:18 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Am 24.11.22 erreichte mich ein Update vom Paket mkinitcpio, dort wurde die /etc/mkinitcpio.conf unter anderem upgedatet. Da ich wie warscheinlich die meisten die /etc/mkinitcpio.conf modifiziert haben, ist dabei eine /etc/mkinitcpio.conf.pacnew Datei mit den neusten Änderungen von Arch entstanden, die man nun mit seiner /etc/mkinitcpio.conf zusammenführen kann.

Das meiste, was sich dort geändert hat, sind Kommentare und Typos fixing. Aber es gibt auch ein paar interessante Änderungen, wenn man mit dem Upstream mit gehen möchte:


  • Die Reihenfolge in dem Hooks abgearbeitet werden wurde ein wenig geändert.
  • Der neue Hook kms, wurde als Standartmässig aktiv hinzugefügt. (Adds all GPU modules to provide early KMS start.)
  • Der mdadm Hook wurde durch mdadm_udev ersetzt. Für diejenigen interessant die diesen benutzen


Dabei befinden sich die Änderungen in folgende Commits:



Das meiste ist natürlich nur für diejenigen Interessant die den Arch Mainstream folgen wollen.

Durch diese kurze Recherche woher die Änderungen der /etc/mkinitpico.conf herkommen. Habe ich den neuen Hook kms kennengelernt und auch gleich nachgeschlagen, wofür dieser gut ist. Das ist nur durch die Open Source Mentalität von Linux überhaupt möglich und ich bin froh, dass es so etwas gibt. Es ist toll zu sehen, wie Menschen zusammen an etwas gemeinsamen arbeiten können.

LG
Sebastian
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 8   allgemeine Kategorie / Installation & Einrichtung / composite manager picom jetzt im Autostart  am: 17. November 2022, 18:52:26 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Heute staunte ich nicht schlecht, dass ich nach einem System Update auf einmal transparent Effekte in meinem i3 Window Manager hatte.

Da ich durch das damalige Studium der Installations-Anleitung wusste, dass picom als composite manager zum Einsatz kommt, und das dieser auch erst in der ~/config/i3/config aktiviert werden sollte damit dieser vom i3 gestartet wird. Staunte ich nicht schlecht das ich nach einen Reboot auf einmal transparent und Einblendung-Effekte hatte. Ich hatte ihn ja schlisslich absichtlich nicht im Autostart aufnehmen wollen, da ich das alles nicht haben wollte. Zur Deinstallation kamm es bei mir aber auch nie weil ich irgendwann ihn mal manuell ausprobieren wollte.

Erster Gedanke war, hat sich da bei picom in einem Update was gravierendes geändert? Also auf der Projekt-Seite nachgeschaut und sie da im Changelog von der Version v10-rc1 vom 29.10.22

Zitat:
picom.desktop is installed to /etc/xdg/autostart/. picom should autostart now. (#791)

Die finale Version 10 ist dann am 14.11.22 erschienen und von Arch paketiert worden. Und somit ist picom dann doch noch auf meinem System in den Autostart gekommen.

Im Nachhinein bin ich froh darüber, nicht wegen der Effekte, sondern da picom bei mir ein langes ärgerliches Problem nach dem Ruhezustand gelöst hat. Nach einem Standby bzw. Ruhezustand war die grafische Ausgabe bei meinem Notebook immer etwas laggy, sodass Videos z.b. leicht geruckelt haben. Dies ist nun nach der Verwendung eines composite manager endlich vorbei.

Manchmal muss man auch zu seinem Glück gezwungen werden 

Edit:

Ich hätte es auch einfach hinnehmen können das sich etwas zum Positiven verändert hat, ich finde aber das man sich in seinem System schon auskennen sollte und dies gleich als Gelegenheit wahrnehmen kann sein System noch besser kennenzulernen bzw. wieder etwas zu lernen.

Nebenbei wer es noch nicht wusste, findet so z.b. einen weiteren Pfad von Desktop Dateien, die für einen Autostart sorgen.
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 9   allgemeine Kategorie / Installation & Einrichtung / Suspend-To-RAM anstelle von Suspend-To-Idle  am: 17. November 2022, 17:26:54 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Notebook: Suspend-To-RAM anstelle von Suspend-To-Idle

Der Autor des Artikels hatte bei seinem Arch festgestellt, dass der Software Modus Sudpend-To-Idle anstelle von Suspend-To-RAM zu anwendung kommt.

Kann nicht schaden das kurz bei sich selbst zu prüfen, ob bei einem vielleicht dasselbe eingestellt ist.

Überprüfen tut man dies mit diesem Befehl:

Code:

# cat /sys/power/mem_sleep
s2idle [deep]

Stehen die eckigen Klammern auf deep wird der effektivere Suspend-To-RAM Modus verwendet.
Sollte das bei jemanden nicht so sein, entnimmt bitte die Anleitung aus dem Artikel, um dies umzustellen.

Achtung: Um dies tun zu können, sollte einem der Begriff Kernelparameter nicht fremd sein.
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

 10   allgemeine Kategorie / Allgemeine Diskussionen / Re:Suletuxe Wallpaper  am: 15. November 2022, 17:48:40 
Begonnen von Sebastian | Letzter Eintrag von Sebastian
Ich sehe hier eventuell sogar mehrere Optimierungsansätze.


  • Das PNG Bild zu Vektorisieren
  • Die PDF überprüfen, ob das Bild tatsächlich nur einmal in der PDF gespeichert wurde, (und dann mehrfach referenziert) statt öfter das Bild in die PDF zu packen.
  • Optimum wäre eine Kombination von beiden.


Thema PNG Bild Vektorisieren

Mit Konventierungs-Tools habe ich mich zwar jetzt auch noch nicht beschäftigt, ich weiß aber das Inkscape auch eine Funktion mitbringt eine Bitmap Grafik zu Vektorisieren. Die Funktion nennt sich dort "Bitmap nachzeichnen" (Umschalt+ALT+B). Dort kann man "Einmaliger Scan" (Für Schwarz/Weiß) oder mehrfarbig (Farbilder) mit den verschieden Erkennungsmodi herumspielen bis man ein einigermaßen gewünschtes Ergebnis bekommt.

Inkscape erzeugt dann eine Vektorgrafik mit meistens zu vielen Knoten, die man mit strg+A, (alles markieren) und strg+L (Pfad vereinfachen) etwas säubern kann.

Details in Inkscape tutorial: Vektorisieren von Rastergrafiken

Thema PDF Optimieren

Da ich nicht firm in der Strucktur vom PDF bin. habe ich auf die schnelle nur das gefunden:

Zitat:
An Image XObject is a definition of a raster image that is defined once in a PDF file but can be referenced any number of times (possibly with different scaling, cropping, and size) at different locations within that same PDF file. Thus, if you place the same raster image in multiple locations in your InDesign file, it is only defined once in the resultant PDF file. (Note that this optimization is used by all Adobe PDF generators including PDF export from InDesign, PDF save from Illustrator, PDF generation from Microsoft Office on Windows using Acrobat's PDFMaker, and even PDF generation via conversion of PostScript to PDF via Acrobat Distiller!)
https://community.adobe.com/t5/indesign-discussions/pdf-file-too-large-x-object-forms/td-p/10574588

Da aber mein Interesse geweckt wurde, wie man eine PDF im Detail nun untersuchen kann, und dort eventuell Optimierungen durchzuführen, melde ich mich hier gerne zurück, sobald ich da mehr weiß.

LG
Sebastian
 Antwort Antwort mit Zitat Über Antworten benachrichtigen

Zurück zur Foren-Übersicht.


Login mit Username, Passwort und Session Länge

 Es wird die Verwendung "Blink"-basierter Browser und mindestens 1024x768 Pixel Bildschirmauflösung
für die beste Darstellung empfohlen
 
freie Software für freie Menschen!
Powered by MySQL Powered by PHP Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2004, YaBB SE Dev Team. All Rights Reserved.
- modified by Andreas Richter (DF8OE)
Valid XHTML 1.0! Valid CSS!