Kategorie-Archiv: Linux

Adélie Linux für PowerPC Macintosh

Adélie Linux wurde 2015 von A. Wilcox und anderen gestartet und will ausgehend von Gentoo eine unabhängige freie Disktribution für Server, Desktops und Cluster sein. Der Paketmanager apk verwaltet die Software.

Von Adélie existieren auch Versionen für PowerPC Prozessoren mit 32- und 64-Bit Architektur. Durch ein Video bei Youtube bin ich darauf aufmerksam geworden, dass Adélie auch auf Power Macintosh Rechnern laufen soll. Hier berichte ich kurz über meine Erfahrungen. Je nach Fortgang der Experimente wird der Artikel ergänzt.
(Stand 16.04.2022)

Macintosh Powerbook G3 (Lombard)

Das Lombard hat nur ein CDROM Laufwerk, also habe ich die 32-Bit LXQT- Version von Adélie auf eine CDR gebrannt, diese eingelegt und das Powerbook neu gestartet. Wenn beim Boot die Taste C gedrückt gehalten wird, bootet das Powerbook von CD. Adélie bootet bis zur Textkonsole, eine Anmeldung mit root und Passwort live ist möglich. Ein startx ergibt die Meldung, dass die Grafikkarte nicht bekannt ist.

Damit läuft Adélie zwar, aber nur im Textmodus.

Powerbook G4

Zunächst habe einen Start wie oben mit der LXQT CD versucht, was auch gelingt. Hier bootet Adélie in X11 und bietet mehrere Window Manager zur Auswahl an. Mit OpenBox erscheint ein Desktop, allerdings sind Startmenü und weitere Menüs nicht bedienbar. Ein Anklicken lässt das Menü kurz aufblitzen und dann sofort wieder verschwinden. Das gleiche passiert auch mit TWM als Window Manager.

Mit der Desktop Version mit dem MATE Desktop (auch 32-Bit) bootet der Mac zwar in X11, aber es erscheint nur der Mauszeiger und kein weiteres Element.

Mit FN-CTRL-Option-F1 kann man jederzeit auf eine Textkonsole wechseln, sich als root einloggen und den Mac sauber rebooten (reboot).

Apple Macintosh Pro (2007) und Ubuntu

Einen Macintosh Pro von 2007, auch liebevoll „die Käsereibe“ genannt, ist schon für 150,- bis 200,- EUR gebraucht zu bekommen. Ein gut ausgestattetes System verfügt über 2 Xeon- Prozessoren (3 GHz) mit je 4 Kernen und 16 GB Arbeitsspeicher. Das ist auch nach heutigen Maßstäben ein ordentliches System. Es hapert nur am Betriebssystem- Apple unterstützt die Maschine nur bis maximal MacOS X 10.7. Das ist wiederum für viele Anwendungen zu alt.

Um die hervorragende Hardware mit ihrem Aluminiumgehäuse und dem stattlichen Gewicht von bald 18 kg nicht abschreiben zu müssen, hilft nur ein Wechsel des Betriebssystems. Auf meine Maschine ist Ubuntu 20.04 LTS gewandert. Hier eine Schnellanleitung:

  1. Schritt: Festplatte partitionieren
  2. Schritt: rEFind als Boot Loader installieren
  3. Schritt: Ubuntu downloaden und DVD brennen
  4. Schriit: Ubuntu installieren

Die Schritte im einzelnen:

1. Festplatte partitionieren

Auf meinem MacPro ist MacOS X 10.6.3 installiert in einer großen Partition unter HFS+ installiert. Die Partition lässt sich aber verkleinern, um Platz für Ubuntu zu schaffen.

  • Programme / Dienstprogramme / Festplattendienstprogramm starten
  • Die oberste Platte in der Liste markieren, ist bei mir eine 1 TB Hitachi SATA Disk
  • Mit dem „Plus“ Zeichen unterhalb der Partitionsliste eine neue Partition von 16 GB Größe anlegen. Die bekommt den Namen „swap“
  • Dateisystem ist MSDOS FAT
  • Genauso eine weitere Partition anlegen, auf die später Ubuntu installiert wird. Die Größe sollte mind. 30 GB betragen, bei mir sind es 500 GB. Als Name habe ich „root“ vergeben. Die Anlage dauert einem Moment.

2. Schritt: rEFind als Boot Loader installieren

rEFind ist ein Boot Manager, der anders als das Apple-eigene Boot Camp auch Linux-Partitionen sicher ansteuert. Die verwendete MacOS X Version 10.7 kennt noch keine System Integrity Protection (SIP), daher ist die Installation hier recht einfach.

  • Download der ZIP Version von rEFind von https://sourceforge.net/projects/refind/files/. Dort sind alle Versionen zu finden, gebraucht wird die neuste. Bei mir war das 0.11.1 und die Datei refind-bin-0.11.1.zip.
  • Die heruntergeladene ZIP File auspacken und das erhaltene Verzeichnis im Finder öffnen
  • Ein Terminal öffnen
  • aus dem Finder die Datei refind-install in das Terminal ziehen und drücken
  • Bei Nachfrage das Administrator-Passwort eingeben.

rEFind sollte sich bei jedem Boot mit den bootfähigen Partitionen melden. Wenn nicht, dann beim Booten die Command-Taste (die „Gabel“) gedrückt halten.

3. Schritt: Ubuntu downloaden und DVD brennen

Der MacintoshPro 2 ist zwar eine 64-Bit Maschine, hat aber ein 32-Bit UEFI Boot System. Damit kommen normale 64-Bit Linuxdistributionen nicht klar und 32-Bit Versionen laufen auch nicht. Abhilfe schafft eine Anpassung der UEFI Software einer 64-Bit Distribution. Matt Gadient hat eine ausführliche Anleitung, wie das zu machen ist. Außerdem bietet er einige vorbereitete Images auf seiner Webseite an.

  • Download von Lubuntu 20.04 LTS von Matt Gadients Webseite
  • Brennen einer DVD mit diesem Image. Ein Linux-Boot vom USB Stick geht beim Macintosh Pro 2 nicht!

4. Schritt: Ubuntu installieren

Die Installation läuft ganz normal ab. Vorsicht ist nur bei der Partitionierung und der Boot Loader-Installation geboten.

  • DVD einlegen und den Mac neu starten
  • rEFind sollte nun MacOS und die DVD anbieten (im Zweifen mit gedrückter Command-Taste neu starten)
  • Im GRUB Bootmenü mit F6 den Expertenmodus aktivieren
  • In der Zeile mit den Kernelparametern das „quiet“ und „splash“ löschen und durch nosplash ersetzen
  • Der Boot dauert, weil der Lader ersteinmal die DVD testet, um fehlerhafte Pakete zu erkennen
  • Nach ca. 5 min. sollte ein Lubuntu-Desktop erscheinen. Dort die Installation auf Festplatte wählen und die Fragen beantworten.
  • Beim Schritt Partitionierung die manuelle Partitionierung wählen. Die Platte hat 4 Partitionen:
    1. Eine kleine (200 MB) Partition mit dem EFI Boot Loader- Finger weg! Ohne diese bootet der Mac nicht mehr und braucht eine Neuinstallation!
    2. Die HFS+ Partition, bei mir noch etwa 460 GB groß- auch hier Finger weg!
    3. Die 16 GB kleine MSDOS Partition- diese muss als „swap“ neu formatiert werden
    4. Die 500 GB große „root“ Partition- diese wird als EXT4 neu formatiert und als „/“ eingebunden
  • Der Boot Loader muss an den Anfang der „/“ Partition, also die 500 GB Partition. Die andere Alternative wäre der MBR, nur der soll ja rEFind anfahren und das wiederum später Ubuntu.
  • Am Ende der Installation neu booten. Wenn die DVD nicht ausgeworfen wird, den Mac durch längeres Drücken des Power-Schalters ausschalten und beim Einschalten die „Öffnen“ Taste auf der Mac Tastatur (rechts oben) gedrückt halten. Die DVD entnehmen und neu starten.

Damit sollte beim Neustart nun immer rEFind kommen und Ubuntu als Betriebssystemalternative anbieten.

Quellen

  1. https://www.makeuseof.com/tag/install-linux-macbook-pro/
  2. https://linuxnewbieguide.org/how-to-install-linux-on-a-macintosh-computer/
  3. https://mattgadient.com/linux-dvd-images-and-how-to-for-32-bit-efi-macs-late-2006-models/
  4. https://linuxnewbieguide.org/how-to-install-linux-on-a-macintosh-computer/

Ubuntu 14.04.4 auf Medion Akoya E6240T

Bei der Installation von Ubuntu 14.04.4 auf ein ALDI Notebook (Medion Akoya E6240T) sind mir ein paar Dinge aufgefallen.

Touchscreen

Das Notebook besitzt einen Touchscreen und ist damit mit den Fingern wie ein Tablet bedienbar. Überraschenderweise funktionierte das sofort ohne weitere Konfiguration.

UEFI

Vor der Ubuntu-Installation lief (besser:kroch) das Gerät mit Windows 10. Im BIOS musste als Boot Manager wieder UEFI anstelle von Windows Boot Manager eingestellt werden, damit ein Boot von DVD funktionierte. Die automatische Partitionierung ha dann eine UEFI Partition angeboten und eingerichtet- also alles recht problemlos.

WLAN

Das WLAN ist zickig und verlor zunächst schnell wieder die Verbindung. Abhilfe schafft eine entsprechende Modulkonfiguration. Anzulegen ist die Datei /etc/modprobe.d/rtl8723be.conf mit folgende Inhalt:

options rtl8723be fwlps=N ips=N

Damit läuft das WLAN mit ordentlicher Geschwindigkeit und ohne Abbrüche.

Touchpad

DAs Touchpad funktionierte zunächst überhaupt nicht. Abhilfe schafft eine Ergänzung in /etc/defaults/grub:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i8042.reset=1 i8042.nomux=1 i8042.noloop=1"

wobei die Optionen quiet und splash schon vorhanden waren. Damit geht auch das Touchpad.

Sondertasten

Leider funktionieren bisher nur die Tasten (Fn-Taste) für die Helligkeitssteuerung. Alle anderen funktionieren nicht oder nicht korrekt; die Lautstärkeregelung blockiert die GNOME Flasback- und Unity Sitzung durch eine dauerhaft angezeigte Lautstärkenanzeige.

VMWare ESXi 5.x Kommandozeile

Manchmal steht zur Konfiguration eines VMWare ESXi Servers nur ein Shellzugang zur Verfügung. Durch die CLI Kommandos lassen sich dann aber doch einige administrative Aufgaben erledigen. In diesem Beitrag sammele ich die Kommandos, die ich in derartigen Situationen selbst verwendet habe. Die Liste ist also nicht vollständig und unter pragmatischen Aspekten zusammengestellt.

vim-cmd vmsvc/getallvms alle konfigurierten VMs anzeigen, erste Spalte ist vmid = interne nummer der VM
esxcli vm process list alle laufenden VMs anzeigen
vim-cmd vmsvc/power.on vmid starte VM mit angegebener vmid
vim-cmd vmsvc/power.getstate vmid Status VM mit vmid
esxcli system shutdown Host herunterfahren
reboot Host neu starten

Atari ST und Linux mit Nullmodem verbinden

Zum Datenaustausch zwischen Linux und einem Atari ST bietet sich in Ermangelung von verfügbaren Netzwerkkarten für den Atari eine Verbindung per Nullmodemkabel an. Folgende Schritte sind n&oouml;tig:

  1. Die serielle Schnittstelle des Atari (25-polig, Male) mit der seriellen Schnittstelle des PC (meist 9-polig, Male) mit Nullmodemkabel verbinden.
  2. Auf der Linux-Seite (hier: CentOS 5.4) einen getty-Prozess starten. Hierzu am Ende der Datei /etc/inittab ergänzen (root-Rechte erforderlich):

    ag:2345:respawn:/sbin/agetty -h ttyS0 19200 vt52
     

    und mittels Befehl init q den Initprozess um Neueinlesen und Starten des getty-Prozesses bitten (mit ps -ax kontrollieren).

  3. Das Programm Teddy Term von http://www.chebucto.ns.ca/software/atariST/comm/tterm214.zip herunterladen und per Diskette auf den Atari übertragen, entpacken und starten.
  4. Mit der linken Maustaste öffnet sich ein Menü, dort kann unter Modem Configuration die Bitrate auf 19200 Bits/s eingestellt werden.
  5. Nach Drücken der Eingabetaste sollte sich der Login-Prompt des Linuxrechners zeigen.
  6. Auf der Linuxseite muss das Paket lrzsz (ist Bestandteil der meisten Distributionen) installiert sein. Dann kann mit sz dateiname nach der Anmeldung am PC über Teddy Term ein ZModem-Upload vom PC auf den Atari angestossen werden. Das Terminalprogramm erkennt die Übertragung selbstständig und speichert die Datei ab.

 

Zwar sind die Übertragungsgeschwindigkeiten nicht berauschend, dafür ist man nicht mehr auf funktionierende 2DD Disketten angewiesen.

Linux Server durch USV automatisch herunterfahren

Unter Linux steht mit den Network UPS Tools ein leistungsfähiges Werkzeug für die Nutzung von unterbrechungsfreien Stromversorgungen (USV) und die Reaktion auf Signale von diesen bereit. So kann ein Server automatisch heruntergefahren werden, wenn der USV der Strom ausgeht.

Hierzu braucht es aber ein wenig Vorbereitung:

  1. In der Datei /etc/upsmon.conf ein Script definieren, das ausgeführt wird, wenn ein Shutdown-Signal kommt:

    SHUTDOWNCMD "/usr/local/sbin/ups_shutdowncmd.sh"

  2. Darin die erforderlichen Kommandos für den Shutdown hinterlegen. In meinem Falle bedeutet dies, erst alle Mounts meines NAS zu entmounten, dann das NAS herunterzufahren und schliesslich den Server selbst zu stoppen:

    sudo /etc/init.d/netfs stop
    /opt/local/sbin/buffalo_shutdown.sh &
    /bin/sleep 5s
    sudo /sbin/shutdown -h now

    sudo ist erforderlich, weil das Script nicht mit Root-Rechten, sondern mit der UserID von upsmon ausgeführt wird; dies ist bei CentOS 5.3 der User nut

  3. In /etc/sudoers sind folgende Ergänzungen nötig:

    Defaults:nut !requiretty
    nut ALL=(root) NOPASSWD: /sbin/shutdown
    nut ALL=(root) NOPASSWD: /etc/init.d/netfs

    Die „Defaults“ Zeile er möglicht dem User nut auch, Kommandos ohne ein laufendes Terminal abzusetzen. Ohne diese Zeile wären die Kommandos zwar interaktiv von einer Shell, aber nicht aus dem Script möglich. Die beiden anderen Zeilen geben die Kommandos ohne vorherige Passworteingabe frei.

Atari ST oder Amiga Disketten unter Linux lesen

Die nachfolgenden Hinweise beziehen sich immer auf 3 1/4 Zoll Disketten mit 720 kBytes, Double Sided, Double Density (DS/DD)

Allgemeines zu DD Disketten

Zum Thema DD Disketten sind einige Punkte wichtig:

  1. Disketten mit „Double Density“ (DD) sind mit Eisenoxid beschichtet und besitzen eine Koerzitivfeldstärke von ca. 300 Oersted (Oe), „High Density“ Disketten verwenden Kobalt dotiertes Eisenoxid mit einer Koerzitiv-Feldstärke von ca. 600 Oe. Dementsprechend schreiben HD-Laufwerke mit doppelter Feldstärke schmalere Spuren als DD Laufwerke. DD Laufwerke können diese Magnetisierung nicht vollständig löschen. Versucht man also, eine bereits formattierte HD Diskette auf einem DD Laufwerk erneut zu formattieren, erhält man entweder sofort Fehler oder das Beschreiben der Diskette funktioniert nicht. Dies gilt für DD Laufwerke bei Atari, AMIGA und auch für die Laufwerke in Knubbel-Macs.
  2. Nur echte DD Disketten lassen sich auf einem Atari oder AMIGA mit DD Laufwerk formattieren. Daher sollte man seinen Bestand an echten 2DD Disketten gut behüten !
  3. Die Lochung links oben in einer 2DD Disk signalisiert normalerweise einem PC Disklaufwerk die Grösse. Ein Überkleben dieses Lochs spiegelt dem Laufwerk eine 720 KByte Disk vor, sie lässt sich dann nur auf 720 kByte formattieren. Aber: Die Spurbreite und Magnetisierung ist nach wie vor die eines HD Laufwerks und nicht die eines DD Laufwerks. Diese oft zitierte „Fake-DS“ Methode funktioniert also oft nicht. Es kann helfen, die Diskette mehrfach auf einem DD Laufwerk zu formattieren. Wird sie dann aber vom HD Laufwerk des PC beschrieben (zwecks Datenaustausch), klappt dies meist nur einmal.

Das Schreiben der Disketten auf dem PC kann so klappen:

  • Auf dem PC läuft Linux Ubuntu 9.04, die MTools sind installiert und das Floppy Device (/dev/fd0) ist für den Benutzer les- und schreibbar
  • In /etc/mtools global den Formatcheck für Disketten abschalten:

    MTOOLS_SKIP_CHECK=1

  • Das passende Format der Floppy in einer Shell vorgeben:

    setfdprm /dev/fd0 "720/720"

Atari ST

Das Datenaustausch mit einem Atari Mega ST2 mit einem Linux Ubuntu-PC klappt folgendermassen:

  • Diskette auf dem Atari formatieren (Double Sided)
  • Unter Linux sollte sich mit mdir a: der Inhalt einer Original-Atari Diskette anzeigen lassen.
  • Atari TOS verwendet das gleiche Format (FAT) wie MSDOS, schreibt aber eine andere Kennung in den Bootsektor. Daher muss bei den MTools die Prüfung dieser Kennung unterdrückt werden.
  • Nach meinen Beobachtungen treten nach einigen Kopiervorgängen mit mcopy unter Linux wieder Fehlermeldungen auf den Disketten auf. Dann muss die Disk neu auf dem Atari formatiert werden (Löschen/Schnellformatieren genügt), anschliessend funktioniert sie wieder einige Zeit.

Amiga

Im Prinzip gilt das oben gesagte, allerdings ist zu beachten (alles für A1200 mit Workbench 3.1):

  • Die normal formatierten Amiga Disketten haben (Double Sided, Single Density) aufgrund der anderen Laufwerksfabrikate eine Kapazität von 880 kByte und sind damit nicht kompatibel zu den PC-Diskettenlaufwerken.
  • PC-kompatibel sind nur Disketten, die als MSDOS Disketten formatiert werden. Hierzu muss aus Comodities/CrossDOS das Icon PC0 (internes Laufwerk) in das Verzeichnis DEVS/DOSDrivers des Systemvolumes gezogen werden. Anschliessend ist ein Neustart fällig!
  • Jetzt lassen sich MSDOS 720 KByte Disketten als MSDOS (FAT) Disks formattieren und auch auf dem PC unter Linux lesen (setfdprm wie oben!)

Netatalk auf CentOS 5.3 installieren

Netatalk implementiert Appletalk und AppleShare IP auf UNIX-Systemen und ist auch auf der Linux-Distribution CentOS 5.3 (basiert auf Red Hat Enterprise Linux Quellcode) lauffähig. Dadurch tritt ein Linuxrechner als Server in einem Apple-Netzwerk auf- sozusagen ein SAMBA für klassische Apple-Netze. Allerdings muss die Software aus dem Quellcode neu kompiliert und ein anderer als der standardmässig installierte Kernel verwendet werden. Hier kommt eine Schritt-für-Schritt Anleitung.

Kernel-Update

Der normalerweise mit CentOS installierte Kernel verfügt nicht über das erforderliche atalk Kernelmodul. Dieses stellt das eigentliche Appletalk-Protokoll bereit. Ein Weg wäre, einen passenden Kernel aus den Quellen neu zu kompilieren. Dies ist aber aufwändig und fehleranfällig hinsichtlich der richtigen Konfiguration. Einfacher ist es, den Kernel aus dem CentOS Plus Repository zu installieren.

  1. Das CentOS Plus Repository nur für Kernel-Pakete eingefügen:
    • Hinzufügen an das Ende von /etc/yum.repos.d/CentOS-Base.repo:

      #additional packages that extend functionality of existing packages
      [centosplus]
      name=CentOS-$releasever - Plus
      mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
      gpgcheck=1
      enabled=1
      gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
      includepkgs=kernel*
    • In der Sektion [base] hinzufügen:

      exclude=kernel kernel-devel kernel-PAE-*
    • In der Sektion [update] hinzufügen:

      exclude=kernel kernel-devel kernel-PAE-*
  2. Testen, ob das Hinzufügen auch geklappt hat:yum list updatesAusgabe ist dann:

    ...
    * centosplus: centos.intergenia.de
    ...
    centosplus | 1.9 kB
    ...
    Excluding Packages from CentOS-5 - Base
    Finished
    Excluding Packages from CentOS-5 - Updates
    Finished
    Reducing CentOS-5 - Plus to included packages only
    Finished
    ...
  3. Wurde das Repository korrekt eingebaut, startet ein yum update kernel* das Update. Hierbei wird der neue Kernel zusätzlich zum alten in die Grub-Konfiguration übernommen; geht etwas schief, kann immer noch der alte Kern gebootet werden.
  4. Nach einem Reboot steht das Appletalk-Protokoll bereit, ein modprobe appletalk als root sollte das Protokoll laden (lsmod zeigt die geladenen Module).

Netatalk-Installation

  1. Netatalk nutzt die Berkeley-DB und benätigt das Development-Paket. Vor der eigentlichen Installation muss diese also ergänzt werden:

    yum install db4-devel
  2. Die Quellen liegen auf Sourceforge und lassen sich z.B. mit WGET herunterladen:

    cd /tmp
    wget http://downloads.sourceforge.net/project/netatalk/netatalk/2.0.5/netatalk-2.0.5.tar.gz?use_mirror=kent
  3. Kompilieren und Installieren geht nach dem üblichen Muster:

    cd /usr/src
    tar -xvzf /tmp/netatalk-2.0.5.tar.gz
    cd netatalk*
    ./configure --enable-redhat --with-mutex="x86/gcc-assembly"
    make | tee /tmp/netatalk_make.log
    make install | tee /tmp/netatalk_make_install.log

    Dies sollte ohne Fehlermeldungen durchlaufen, dies kann man in den durch tee erzeugten Logdateien später nachlesen.

  4. Die Installation kopiert die Dateien nach /usr/local und die Konfigurationsdateien nach /usr/local/etc/netatalk, dort genügt anfangs eine minimale Konfiguration:afpd.conf:

    - -transall -uamlist uams_guest.so,uams_clrtxt.so,uams_dhx.so

    AppleVolumes.default:

    # die Tilde gibt die Home-Verzeichnisse der User frei !
    ~
    /var/share "Austausch"

    atalkd.conf:

    eth0 -phase 2 -net 0-65534 -addr 65280.59

  5. Nun lohnt sich der Start von Netatalk:

    /etc/init.d/atalk start

    Starting AppleTalk services:
    Starting atalkd: [ OK ]
    Registering myserver:Workstation: [ OK ]
    Registering myserver:netatalk: [ OK ]
    Starting cnid_metad: [ OK ]
    Starting afpd: [ OK ]

    Der Start der einzelnen Prozesse dauert ein wenig, also Geduld !

GnuPG und nicht eigensignierte Keys

Bei dem Versuch, manche Public Keys aus ASCII Dateien zu importieren, beschwert sich GnuPG direkt oder ein verwendetes Frontend (unter Windows z.B. WinPT aus der GPG4Win Suite) über eine fehlende Eigensignatur des Keys und verweigert den Import. In der Keyfile wird „0“ für die Anzahl der öffentlichen Schlüssel angezeigt.

Die Eigensignatur bezieht sich auf die Benutzer-ID innerhalb des Public Keys; genaues ist in der
Selfsign FAQ (deutsch) nachzulesen.

Um dennoch derartige Public Keys importieren zu können, hilft ein Eintrag in der GnuPG Konfigurationsdatei. Diese ist mit WinPT aus der Schlüsselverwaltung unter „Bearbeiten, Einstellungen, GnuPG-Optionen“ zu erreichen. Am Ende der Datei wird hinzugefügt:


allow-non-selfsigned-uid

Der Import funktioniert dann; allerdings sollten nur diejenigen Keys importiert werden, über deren Urheber wirklich Klarheit besteht.

Ubuntu 9.04 und TrekStor Vibez MP3 Player

Mein TrekStor Vibez MP3-Player wurde unter früheren Linux-Distributionen immer als USB Massenspeicher erkannt. Daten liessen sich ohne Probleme wie bei einem USB Stick kopieren. Unter Ubuntu 9.04 wird das Gerät als Vibez MP3 Player erkannt, es lassen sich aber keine Daten kopieren. Die Ursachen dieses Fehlers und seine Behebung sind folgendermassen zu beschreiben:

Der Fehler

Für die Erkennung von USB Geräten und die Einbindung in das System ist u.a. HAL (hardware abstraction layer) zuständig. Bei Anschluss eines USB Geräts scannt HAL dieses und entscheidet über die Einbindungsart. Für den TrekStor Vibez ist in /var/log/messages zu sehen:


[1] usb 2-1.2: new high speed USB device using ehci_hcd and address 7
[2] usb 2-1.2: configuration #1 chosen from 1 choice
[3] scsi12 : SCSI emulation for USB Mass Storage devices
[4] gvfsd-gphoto2[22362]: segfault at c ip b7d629e0 sp bfbf4c24 error 4 in libpthread-2.9.so[b7d5b000+15000]

In Zeile 1 wird das Gerät erkannt, in Zeile 4 wird das für dieses Gerät zuständige GVFS Modul gestartet. GVFS ist die GNOME Implementierung eines virtuellen Dateisystems auf Benutzerebene. Es abstrahiert reale Dateisysteme und bietet eine einheitliche Schnittstelle für Anwenderprogramme, z.B. für Nautilus. Das Problem hier ist nur: Das gvfsd-gphoto2 Modul stürzt nach dem Laden mit einem Segmentation Fault ab ! Dies ist ein bekannter Bug (ua. https://bugs.launchpad.net/ubuntu/+bug/345916).

Die Lösung

In diesem Artikel fand sich ein Lösungsansatz:

  1. Aus einem Terminal heraus als Systemverwalter nach /usr/share/hal/fdi/preprobe/10osvendor/ wechseln
  2. Eine Sicherheitskopie der Datei 20-libgphoto2.fdi machen
  3. Die Originaldatei in einen Editor laden und nach „TrekStor“ suchen
  4. Der Eintrag findet sich in einem Konfigurationsblock, der mit

    <match key="usb.vendor_id" int="1647">

    beginnt.
  5. Dieser Block (11 Zeilen) wird gelöscht. Dadurch wird die Zuordnung des Moduls gvfsd-gphoto2 entfernt.

Wenn man danach das Gerät wieder anschliesst, wird es korrekt als Massenspeicher erkannt. Das zeigt sich auch im Protokoll:


usb 2-1.2: new high speed USB device using ehci_hcd and address 10
usb 2-1.2: configuration #1 chosen from 1 choice
scsi15 : SCSI emulation for USB Mass Storage devices
usb 2-1.2: reset high speed USB device using ehci_hcd and address 10
scsi 15:0:0:0: Direct-Access TrekStor vibez 2 PQ: 0 ANSI: 4
sd 15:0:0:0: [sdg] 23429729 512-byte hardware sectors: (11.9 GB/11.1 GiB)
sd 15:0:0:0: [sdg] Write Protect is off
sd 15:0:0:0: [sdg] 23429729 512-byte hardware sectors: (11.9 GB/11.1 GiB)
sd 15:0:0:0: [sdg] Write Protect is off
sd 15:0:0:0: [sdg] Attached SCSI removable disk
sd 15:0:0:0: Attached scsi generic sg8 type 0

Mit dieser Änderung lassen sich wieder Dateien kopieren. Zuständig ist jetzt das usb-storage Modul, das den USB Massenspeicher als SCSI Gerät einbindet.