Linux-Kleinigkeiten
letzte Änderung: August 2020
Mir selbst und anderen will ich hier Lösungen von Linuxproblemen
dokumentieren. Alles bezieht sich auf SuSE, 9.2 .. derzeit 9.3, derzeit
10.3
ab 2019: Kubuntu
Von einem Tag auf den anderen starteten
Acrobat-Reader und Firefox nicht mehr. (Hab im Internet gelesen, dass dies
auch Opera betreffen kann). Rief man diese Programme in einem
Terminalfenster auf, so erhielt man obige Meldung. Alles klappte aber
richtig, wenn man sich als root anmeldete. Muss also ein Rechteproblem
sein, aber wo stecken die entsprechenden Dateien?
Ich hab gegoogelt, und dabei zu diesem Thema nur Anfragen gefunden (auch
auf italienisch...), aber keine Lösungen. Daraufhin hab ich den
kostenpflichtigen Support von SuSE angerufen. Die Supporter
empfahlen mir als erstes, einen neuen Benutzer anzulegen. Wenn der die
Programme hätten starten können, dann hätte es an den Dateien unter
/home/.fonts gelegen. Ging aber nicht.
Wo die Dateien seien, deren Rechte falsch gesetzt waren, konnte mir so
schnell auch niemand sagen. Stattdessen empfahl man mir, den Output von strace acroread anzusehen. Das
hat letztlich geholfen, dort konnte ich erkennen, dass die ttf-Dateien
unter /usr/local/share/fonts/truetype nicht geladen werden konnten.
Tatsächlich, diese Dateien hatten nur Leserechte für den Besitzer Root.
Also hab ich ihnen Leserechte für alle gegeben, und damit war das Problem
behoben.
Das Ganze noch einmal detaillierter:
Problembeschreibung:
beim Aufruf von
Acrobatreader auf der Konsole: |
Ebenso beim Aufruf von firefox |
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
** (acroread:5969): WARNING **: Cannot open font file for font Arial
10
** (acroread:5969): WARNING **: Cannot open fallback font, nothing
to do |
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
couldn't open fontconfigs chosen font with Xft!!!
Speicherzugriffsfehler |
Diagnose:
Was ich unternommen habe:
1) Das Problem taucht nicht auf, wenn ich mich als root anmelde. (Das hatte
auch auf einer der gegoogelten Seiten gestanden)
2) Es taucht aber auf, wenn ich einen neuen Benutzer anlege, muss also mit
Rechten zu tun haben, und nicht mit irgendwelchen dateien im
home-Verzeichnis des Benutzers.
3) Es bleibt auch bestehen, wenn ich im Yast unter Sicherheit und Benutzer
statt Benutzerdefiniert den Level 1 (Workstation ohne Netz) einstelle.
strace acroread führte
zu einer Menge output in einem Konsolenfenster, aber dann war der kde
abgestürzt.
mit strace -o filename
acroread ging es, der kde inklusive Konsolenfenster
blieb am Leben.
Die entscheidenden Zeilen des sehr langen strace-Outputs:
open("/usr/local/share/fonts//truetype/arial.ttf", O_RDONLY) = -1
EACCES (Permission denied)
write(2, "couldn\'t open fontconfigs chosen"..., 50) = 50
open("/usr/local/share/fonts//truetype/arial.ttf", O_RDONLY) = -1
EACCES (Permission denied)
write(2, "couldn\'t open fontconfigs chosen"..., 50) = 50
open("/usr/local/share/fonts//truetype/arialbd.ttf", O_RDONLY) = -1
EACCES (Permission denied)
write(2, "couldn\'t open fontconfigs chosen"..., 50) = 50
open("/usr/local/share/fonts//truetype/arialbd.ttf", O_RDONLY) = -1
EACCES (Permission denied)
write(2, "couldn\'t open fontconfigs chosen"..., 50) = 50
|
Lösung:
Hier erkennt man, dass die *.ttf
Dateien
im Verzeichnis
/usr/local/share/fonts//truetype/ nicht geladen werden konnten.
Im Konqueror (oder mc) kann man nun die Rechte der Dateien ansehen
und ändern. Das hat bei mir geholfen.
Wodurch wurden die Rechte umgebogen? Eigentlich kommen
nur zwei Aktionen in den entsprechenden Tagen in Frage, denn sonst hab ich
mich ganz sicher nicht irgendwo außerhalb meines Homeverzeichnisses
bewegt:
- Ich habe von der ct-Software-cd den html-Editor
NVU (Mozilla) installiert. Diese Installation, gestartet von der
htm-Seite der CD, rief ihrerseits den Yast auf (was mich wunderte), es
lief alles anscheinend wie gewohnt. Anschließend konnte ich den NVU
auch starten, aber wenn ich einen Menupunkt anwählte, z.B. Datei
Oeffnen, dann stürzte er ab. (Nun, nach obriger Rechtereparatur
läuft er ok, diese Seite ist mit dem NVU erstellt.
- Ich habe unter Windows XP von der Ct-Software-CD
das Programm für den Zugriff auf die EXT3-Partitionen installiert. Bei
der Installation muss man den Partitionen Laufwerksbuchstaben
zuordnen. Es wurden mir 3 Ext3-Partitionen geboten. Da ich nicht
wusste, welche davon meine /home-Partition war, hab ich allen dreien
zunächst einen Laufwerksbuchstaben zugeordnet. Anschließend konnte ich
diese "Laufwerke" tatsächlich in der Arbeitsumgebung öffnen, und so
mein Homeverzeichnis identifizieren. Daraufhin hab ich die
Installation noch einmal laufen lassen, denn anscheinend kommt man nur
so an die Laufwerkszuordnung heran, und hab für die
nicht-/home-Partitionen die Zuordnung rückgängig gemacht. Als
später der Virenscanner startete (Kaperski), hat er tatsächlich auch
begonnen, das /home-Verzeichnis zu scannen. Das hab ich dann
abgebrochen.
Natürlich kann ich mir bei beiden Aktionen kaum
vorstellen, wodurch die falsche Rechtevergabe zustande kam, aber es muss
dabei geschehen sein.
Zwar bin ich dazu übergegangen, halbjährlich mein SuSE-Linux upzudaten, aber
beim letzten Update auf 9.3 hab ich versehentlich das ACPI nicht abgestellt.
Wie gewohnt, nach längerer Arbeit am Rechner hängt Linux total. Nur Neustart
mit Knopfdruck möglich,- und danach startete der KDE nicht mehr. Ich hab
dann versucht, das Update neulaufen zu lassen, und was weiß ich, irgendwann
sagte mir der SuSE-Support: Das ist so ein Durcheinander, installieren Sie
neu. Bei der letzten Neuinstallation hatte ich aber eine Menge E-Mails
verloren. Jetzt weiß ich, wie es gegangen wäre:
1) Den alten Mailordner vor der Neuinstallation irgendwo speichern.
Problem: Wo ist der denn? Bis SuSE 9.1 war der Ordner Mail im
Homeverzeichnis. (Bei meiner jetzigen 9.3 Neuinstallation ist er unterm
Homeverzeichnis in .kde/share.apps/kmail oder so (Der SuSE-Supporter wollte
mir partout nicht glauben, dass bei meiner Hyperstandardinstallation der
Mailordner nicht in /home/ich läge, er hat mich fast angeschriehen. Aber
dann doch den guten Vorschlag gehabt, in KMail einen Ordner anzulegen,. und
dann nach diesem ZU suchen. Soi hab ich obigen Pfad herausgefunden).
2) Jetzt kommt das Entscheidende: KMail kennt zwei Arten von Mailordnern:
MBox und MailDir.
a) Die Maildir sind unproblematisch, sie erschienen auch als Unterordner im
Dateisystem (und haben ihrerseits Unterordner cur, new und tmp). Diese
Ordner kann man nach der Neuinstallation einfach in das neue Mailverzeichnis
kopieren.
b) Meine älteren Ordner in KMail waren aber anscheinend mbox-Ordner.
Diese sind im Verzeichnissystem nicht als Ordner, sondern als dateien. Im
Kde-Konquror werden diese Dateien mit einem kleinen a drauf angezeigt, als
Typ wird E-Mail angegeben. Diese dateien in das neue Mailverzeichnis
kopieren bringt leider nichts. Ich bin so vorgegangen:
In KMail hab ich diese Ordner im Menupunkt Etras-Import reingezogen: Dort
kann mann den Typ der zu importioerenden Mails angeben: Wähle mbox und
navigiere zum gesicherten Mailverzeichnis. Dort müsste man nun die alten
MBox-Ordner angeboten bekommen. Man mehrere auf einmal selektieren und
importieren.
In Kmail erschienen diese Ordner bei mir mit einem mbox davor, also der
Ordner bw7 wurde zu mbox-bw7.
Das ist nicht so schön. Ich hab dann in KMail einen neuen MailDir-Ordner bw7
angelegt, und alle Mails von Mbox-bw7 dorthin verschoben. Sie sind nach dem
Import übrigens als ungelesen markiert. Wenn man mit Ctrl-A alle markiert,
kann man im Kontexmenu unter Nachricht-markieren sie als gelesen markieren.
Den Mbox-Ordner MBox-bw7 hab ich dann gelöscht.
Möchte man einen Link per Mail verschicken, kommt es vor, dass dieser im
Editor von KMail über 2 oder mehr Zeilen geht. Die Freunde schreiben dann
zurück, der Link habe nicht funktioniert:In ihrem Mailprogramm wird nur
die erste Zeile als Link interpretiert.
Lösung:
Wenn man die Mail schreibt, kann man in der Menuzeile unter ->Optionen
das Häkchen bei "Zeilenumbruch" wegmachen, dann kommt die Mail auch bei
Windows- oder sonstigen Nutzern so an, dass der Link durch einfachen Klick
funktioniert.
Das Häkchen wird nur für die aktuelle Mail entfernt, man muss sich also
danach um nichts kümmern, die generelle Zeilenumbruch-Einstellung (in den
Einstellungen von KMail) bleibt unverändert.
(Das Problem ging noch weiter: Auf dem IPhone etwa half es nicht, beide
Zeilen des Links zu
markieren und in die Adresszeile des Browsers zu übertragen: Das IPhone
fügte an der Stelle des Zeilenumbruchs ein %-Zeichen ein! --- Was klappte:
Den Link in "Notizen zu übertragen,- dort kam kein %-Zeichen hinzu, und
von dort in den Browser.... Aber mit obiger Lösung erübrigt sich
diese Turnerei!)
Erst mal muss ich meckern: Da hat man ein seit Jahren irgendwie
funktionierendes System, und dann auf einmal nach einem Update klappen die
wichtigsten Programme nicht mehr: Etwa beim Übergang auf SuSE 9.2
taten es acrobat und xfig nicht mehr, und latex kannte keine Umlaute mehr.
Zwar läuft die ganze Installation von Version zu Version immer
reibungsloser, aber was nicht KDE und sonst irgendwie WindowsKlon ist,
wird bei den neuen Versionen anscheinend weniger gepflegt. Im Internet
fand ich dann, dass es an der UTF-Kodierung liegen müsse.
a) Utf-8 Einstellung im Yast:
Man kann im Yast2 unter Sprache rechts oben ein Kästchen anklicken, und
kommt kann ich eine Maske, in der man das UTF abstellen kann. Ich traue mich
aber nicht so recht, ich muss befürchten, dass mittlerweile das System immer
mehr darauf abgestellt ist.
b) UTF-8 für einzelne Programme
abstellen:
Für einzelne Programme kann man aber UFT abstellen. So konnte xFig
wieder Dateien exportieren, nachdem ich eine (ausführbare) Datei myXfig
angelegt hatte mit dem Inhalt
export LC_NUMERIC="en_GB.iso885915" xfig
|
Dem Startknopf von xFig in meinem KDE hab ich unter Eigenschaften
(rechte Maustaste) als Programmaufruf diese Datei myxFig unterschoben. Den
Trick fand ich per Google in der SuSE-Mailingliste. Der obige Befehl lässt
übrigens die UTF-Kodierung bestehen, aber macht irgendwas mit dem
Zahlenformat.
Gute Informationen zu den Sparch- und Kodierungseinstellungen:
http://www.suse.de/~mfabian/suse-cjk/locales.html
http://www.gentoo.de/main/de/presentations/UTF-8.pdf
Diesen beiden Seiten entnehme ich, dass man in eine Datei, die wie oben das
myXfig zum Starten eines Programmes ohne UTF-8 Kodierung schreiben müsste:
export LC_All ="de_DE.iso88591" Programmaufruf
|
Nach der Installation von SuSE 9.3 hab ich allerdings keinerlei
Probleme mehr mit Utf-8 gehabt, außer:
c) UTF-8 und Latex:
Hier muss man im Header der .tex-Datei
die Zeilen
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
|
durch die Zeilen
\usepackage{ucs}
\usepackage[utf8]{inputenc} |
ersetzen. Diese Pakete sind bei SuSE bereits mitinstalliert.
d) Konvertierungen: Alte
Dateinamen werden durch die Umstellung auf UTF-8 eventuell nicht mehr
richtig dargestellt, es gibt aber ein Programm zum Konvertieren von
Dateinamen (Hab es nicht probiert). Wichtiger ist, dass auch der Inhalt der
Dateien konvertiert werden kann. Auf der Internetseite von Herrn Kofler
(gegoogelt) hab ich gefunden, dass man durch eines der beiden folgenden
Kommandos die Dateien Konvertieren kann:
recode latin1..u8 < altedatei > neuedate
iconv -f latin1 -t utf-8 altedatei >> neuedatei
Meine Erfahrungen dazu: iconv kannte nicht latin1. Die ct (Ausgabe 18 2005,
Seite 189) schlägt vor: iconv -f iso-8859-1 -t utf-8 -o <neuedatei>
<altedatei>. Ich glaub, das hat bei mir geklappt. Allerdings muss hier
der Name der Neuen Datei von dem der alten Datei unterschieden sein (scheint
mir). Prima ging es jedesfalls mit recode, mit
recode latin1..u8 *.tex
konnte ich ein ganzes Verzeichnis konvertieren, und alle Dateinamen blieben
erhalten. Problematisch war, dass ich in einigen Verzeichnissen bereits
tex-Dateien in utf8-Kodierung gemischt mit anderen habe. recode auf eine
utf-8 kodierte Datei angewandt führt zu einem falschen Ergebnis. Bereits in
kodierte Kodierte dateien musste ich also vor dem recode in ein anderes
Verzeichnis auslagern. Ich erkannte sie entweder am Änderungsdatum, und wenn
im Zweifelsfall durch Laden der Datei im XEmacs: Der zeigt tatsächlich unten
links in der Statuszeile die Kodierung an! Da stand entweder utf8 oder
noconvert.
Vorher hab ich mir so geholfen: Ich habe sowieso alle meine Latex-Header und
eigenen Definitionen in einer Headerdatei, die ich (per
XEmacs-Keyboardmakro) am Anfang jeder Latex-Datei einbinde (\input{header}).
Nun hab ich zwei weitere Header namens UTF.tex und Latin.tex kreiert, die
die Zeilen aus der rechten bzw. linken Tabellenseite oben enthalten, und
zwei XEmacs-Makros gleichen Namens, welche vor der sonstigen Headerdatei den
utf bzw Latin-Header einbinden. So kann ich die alten Dateien weiter
Kompilieren, allerdings nicht in ihnen editieren.
e) Dateinamen in der vFat-Partition von WINXP: Wenn die Dateinamen Umlaute
enthalten, sind sie unter Linux nun nicht mehr lesbar. (Man kann die Dateien
aber unter Linux umlautfrei umbenennen.) Das ist aber nicht nötig. In die
fstab hab ich in die Zeile zu dieser vfat-Partition als Option geschrieben:
utf8=true
Mit diesem Tipp von der ct (odi) lassen sich alle Dateinamen richtig lesen.
KAdressbuch:
Beim Erstellen neines neuen Eintrags kam die Meldung:
kde/share/apps/kabc/std.vcf' gesperrt durch Programm".
Hab die Meldung in Google eingegeben, dort gab eine Mail
in http://lists.kde.org/
die Antwort: Dort schrieb jemand, der mit bmg anzeichnete:
Bist Du sicher, daß nichts mehr läuft was das Adressbuch belegen
könnte? Schau mal in ~/.kde/share/apps/kabc/lock nach ob die alte
lockfiles liegen.
Die Adressen liegen in ~/.kde/share/apps/kabc/std.vcf. Das ist ein
Klartextfile, schau einfach mal rein.
Hab die Lockfilfes dort gelöscht, und es
ging wieder alles. Nebenbei hab ich so erfahren, wo die Adressen liegen.
Bei meinem letzten Neu-Erstellen des KDE-Verzeichnisses hatte ich
nämlcih die Adressen nicht retten und übernehmen können, weil ich sie
unter KAdressbuch gesucht hatte...
Sound
Soundkarte scheint erkannt. Aber, ich höre nichts, aus keinem der
Programme. Es hat bei mir an der Einstellung der Lautstärke gelegen. Und
zwar muss man sie an zwei Stellen
einstellen! Einmal im Yast2/Harware/Sound, dort kann man auf Lautstärke
klicken. Um eine mp3 zu hören, musste ich den Schieber PCM hochstellen.
Das Abspielen einer CD wurde hörbar und lauter, wenn ich sowohl bei
Kopfhörer als auch bei CD auf 100 ging. Die zweite Stelle ist das Programm
Lautstärkeregler, im KDE-Menu unter Multimedia, das Programm heißt wohl
auch kmix. Auch dort hab ich alles mögliche hochgestellt. Jetzt hör ich
was.