QRP-Amateur-Radio-Blog and more

04.03.2011

Einige Einstellungen beim „Maverick Meerkat” USB-Live-System

Hat man das Erdmänchen (Meerkat != Meerkatze) wie unten beschieben auf einem USB-Stick installiert, so möchte man schon bald einige Änderungen vornehmen. So nervt z.B. der bei jedem Start auftauchende Dialog ob man das System ausprobieren oder installieren möchte gewalltig. Da im Netz keine Hinweise zu finden waren wie dies Abzustellen sei, mußte ich mich selbst auf die Suche machen.
Es handelt sich um das Programm ubiquity. Dies kann natürlich deinstalliert werde, was aber, will man die Option behalten Ubuntu vom Stick aus auf einen anderen Rechner zu installieren, nicht wirklich sinnvoll ist. Den Aufruf in den Skripten zu verhindern war zumindest bei mir nicht erfolgreich. Es exitiert aber die config /etc/init/ubiquity.conf.
Durch Herauskommentieren der dort definierten Startbedingungen läßt sich ein automatisches Ausführen von ubiquity verhindern:

#sudo vi /etc/init/ubiquity.conf
. (gekürzt)
.
.
.

#start on (starting gdm hier auskommentieren
# or starting kdm
# or starting xdm
# or starting uxlaunch)
stop on (runlevel [06]
or stopping gdm
or stopping kdm
or stopping xdm
or stopping uxlaunch)
.
.
.

Auch kein wirkliches Problem stellt das feste Einbinden von Partitionen auf der Micro-SD-Karte dar. Die fstab wird beim Systemstart leider stets aus casper/filesystem.squashfs wiederhergestellt.
Ein einfaches mount Kommando (noatime in den Options nicht vergessen) in /etc/rc.local erfüllt den gleichen Zweck.

02.03.2011

Booten vom UMTS-Stick (E160 von Huawei)

Linux auf dem USB-Stick bootbar auf Tasche zu haben ist eine feine Sache.
Einfach um seine eigene Umgebung immer dabei zu haben, eine nicht bootende Windows-Box zu fixen oder um den Einen oder Anderen von den Vorzügen eines vernünftigen Betriebssystems zu überzeugen. Unter Ubuntu ist dies dank usb-creator ein Kinderspiel geworden. Wer sich lieber sein System zu Fuß zusammenbaut findet im Netz aber auch dazu eine Menge Anleitungen.
Vor einiger Zeit, genauer zwei Jahren, habe ich mir einen UMTS-Stick gekauft, bzw. es gab ihn sehr günstig SIM-lock-frei im Paket mit einer Prepaid-UMTS-Karte von Tchibo incl. Guthaben für einen Monat flat (bis 10 GB) ins Netz. Tchibo ist übrigens Reseller von O2 und immer noch vergleichsweise sehr günstig wie ich meine – und das O2-Netz ist gut verfügbar und recht flott, da es HSDPA bietet.
Der damals erhaltene UMTS-Stick war der E160 von Huawei. Ich brauchte ihn aber eigentlich gar nicht, da ich lediglich die SIM-Karte für meinen damals frisch erstandenen eee-Pc 901 GO (mit SSD, Xandros-Linux und einem internem UMTS-Modem) verwenden wollte. So lag er ungenutzt herum.

Da der E160 in der mir vorliegenden Variante einen Micro-SD-Cardreader besitzt, bietet es sich an ihm endlich mal ein Live-System zu verpassen.
Dabei sind allerdings einige Vorbeitungen zu treffen.

Nach dem Einstecken des E160 meldet der Kernel:

$ dmesg
usb 1-1: new high speed USB device using ehci_hcd and address 4
usb 1-1: New USB device found, idVendor=12d1, idProduct=1003
usb 1-1: New USB device strings: Mfr=2, Product=1, SerialNumber=0
usb 1-1: Product: HUAWEI Mobile
usb 1-1: Manufacturer: HUAWEI Technology
usb 1-1: configuration #1 chosen from 1 choice
scsi6 : SCSI emulation for USB Mass Storage devices
usb 1-1: USB disconnect, address 4
usb-storage: device found at 4
usb-storage: waiting for device to settle before scanning
usb 1-1: new high speed USB device using ehci_hcd and address 5
usb 1-1: New USB device found, idVendor=12d1, idProduct=1003
usb 1-1: New USB device strings: Mfr=2, Product=1, SerialNumber=0
usb 1-1: Product: HUAWEI Mobile
usb 1-1: Manufacturer: HUAWEI Technology
usb 1-1: configuration #1 chosen from 1 choice
option 1-1:1.0: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
scsi9 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
scsi10 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
usb-storage: device scan complete
scsi 9:0:0:0: CD-ROM HUAWEI Mass Storage 2.31 PQ: 0 ANSI: 2
usb-storage: device scan complete
sr1: scsi-1 drive
sr 9:0:0:0: Attached scsi CD-ROM sr1
sr 9:0:0:0: Attached scsi generic sg2 type 5
scsi 10:0:0:0: Direct-Access HUAWEI MMC Storage 2.31 PQ: 0 ANSI: 2
sd 10:0:0:0: Attached scsi generic sg3 type 0
sd 10:0:0:0: [sdc] Attached SCSI removable disk
sd 10:0:0:0: [sdc] 7716864 512-byte logical blocks: (3.95 GB/3.67 GiB)
sd 10:0:0:0: [sdc] Assuming drive cache: write through
sd 10:0:0:0: [sdc] Assuming drive cache: write through
sdc: sdc1 sdc2

Das Problem stellt das als CD erkannte Laufwerk auf dem Stick dar. Auf ihm ist die Mobil-Partner Software für den Betrieb unter Windows abgelegt.
Dieses Laufwerk wird vom BIOS zuerst erkannt und verhindert, daß auch der MMC-Reader erkannt wird. Da die darauf befindliche Software für den Betrieb unter Linux wenig hilfreich ist, kann man problemlos darauf verzichten.

Mittels eines Terminal-Programmes wie minicom oder cutecom läßt sich dies bewerkstellen. Dazu verwendet man Hayes-Kommandos. Das Modem ist mit /dev/ttyUSB0 anzusprechen:

$ minicom -D /dev/ttyUSB0
Willkommen zu minicom 2.4

Optionen: I18n
Übersetzt am Sep 5 2010, 09:23:03.
Port /dev/ttyUSB0

Drücken Sie CTRL-A Z für Hilfe zu speziellen Tasten

+CME ERROR: SIM failure

OK, OK es muß aber keine SIM-Karte eingesteckt sein!
Um seine Eingaben zu sehen sollte man mit at e1 Echo einschalten und sich noch ein paar Informationen holen:

at e1 (at e1 normalerweise noch unsichtbar)
OK
at i
Manufacturer: huawei
Model: E160
Revision: 11.604.18.01.00
IMEI: XXXXXXXXXXXXXXX
+GCAP: +CGSM,+DS,+ES

OK

Mittels des herstellerspezifischen AT-Kommandos at^u2diag=256 läßt sich das CD-ROM-Laufwerk auf dem Stick ausschalten:

at^u2diag=256
OK

Andere Parameter von at^u2diag sind
0     (nur Modem)
1     (Modem und CD-ROM)
255 (Modem, CD-ROM und MMC-Reader also default)

Mittels ctrl+a und anschließend q verlassen. Der Kernel meldet nach Rein-Raus-Spiel:

$ dmesg
usb 1-1: new high speed USB device using ehci_hcd and address 6
usb 1-1: New USB device found, idVendor=12d1, idProduct=1001
usb 1-1: New USB device strings: Mfr=2, Product=1, SerialNumber=0
usb 1-1: Product: HUAWEI Mobile
usb 1-1: Manufacturer: HUAWEI Technology
usb 1-1: configuration #1 chosen from 1 choice
option 1-1:1.0: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
option 1-1:1.2: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB3
scsi14 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 6
usb-storage: waiting for device to settle before scanning
usb-storage: device scan complete
scsi 14:0:0:0: Direct-Access HUAWEI MMC Storage 2.31 PQ: 0 ANSI: 2
sd 14:0:0:0: Attached scsi generic sg2 type 0
sd 14:0:0:0: [sdb] Attached SCSI removable disk
sd 14:0:0:0: [sdb] 7716864 512-byte logical blocks: (3.95 GB/3.67 GiB)
sd 14:0:0:0: [sdb] Assuming drive cache: write through
sd 14:0:0:0: [sdb] Assuming drive cache: write through
sdb: sdb1 sdb2

Vom CD-ROM ist keine Rede mehr. Nun funkts auch mit dem BIOS.

Auch wenn es das BIOS unterstützt, wird der Micro-SD-Karten-Leser manchmal erst dann erkannt, wenn USB-Legacy-Unterstützung im BIOS angewählt wurde. Bei manchem BIOS ist auch die BOOT-Diagnostik einzuschalten.

Nun muß nur noch ein OS drauf. Ein paar Anmerkungen von mir dazu:
Die SD-Karte sollte möglichst groß und schnell sein. Allerdings ist unter FAT die maximale Partitionsgröße 4 GB und ich weiß auch nicht ab welcher Größe sich der Reader auf dem Stick verschluckt. Man kann schon für etwa 10 EUR eine 4 GB Class4 (32 Mbit/s) Micro-SD erstehen. Damit läßt es sich schon gut leben.
Es braucht jetzt nur noch ein Linux-ISO. Ich habe mich für Ubuntu 10.10 „Maverick Meerkat” entschieden. Es ist leicht für Windows-User zu erlernen, recht flott, bringt einen aktuellen Kernel mit und hat im Gegensatz zur aktuellen LTS-Version „Lucid Lynx” keine Probleme mit manchen Chip-Sätzen auf IBM-Boards.
Mit Partitionsmanager z.B. fdisk zwei FAT32-Partitionen, nachdem man anlegen. Der zweiten ca. 1,5 GB Platz geben und bootbar machen, dort das Linux drauf. Die erste ist so auch von Windows aus nutzbar, die zweite mit dem System aber von dort aus nicht. Eine ntfs-Partition böte sich zwar für den ersten Zweck auch an, wirkt sich aber wegen des Verwendens eines Journals für Flash-Speicher auf die Lebenszeit verkürzend aus.
Schnell ist das System mit usb-creator draufgemacht. Dabei kann usb-creator so eingestellt werden, daß gemachte Einstellungen persistieren, also gespeichert werden und beim nächsten Reboot verfügbar sind. Es gibt auch andere Tools wie unetbootin und natürlich die Möglichkeit das System manuell auf der Karte zu bauen.
Das ISO selbst ist zwar nur knapp 700 MB groß, doch wird beim Speichern von Einstellungen, Daten etc. wesentlich mehr Platz belegt. Sie werden in der casper-rw auf der Karte gespeichert. Diese Datei läßt sich nebenbei auch als loop-device mounten. Sie ist aber schnell vollgemüllt, da bei Änderungen dort die ganzen betreffenden Dateien abgelegt werden. Es ist deshalb sinnvoll, z.B. zu installierende Packete auf der ersten Partition abzulegen und sie dann manuell zu installieren. Updates solte man sich sparen. Auch sollten Daten nach Möglichkeit auf der ersten Partition abgelegt werden. Will man diese fest mounten, so ist darauf zu achten sicherheitshalber die Partition unter ihrer eindeutigen UUID zu mounten. Des weiteren sollte man noatime als Parameter angeben, damit nicht zu häufig auf die Karte geschrieben werden muß nur um die Zugriffszeit zu speichern. So hat man lange Spaß am System.
Nur noch das System vernünftig Einstellen und fertig.

Zur Sicherheit hat es sich bei mir bewährt mit dd ein Image der fertigen Systems anzufertigen und dies bei Bedarf wieder zurück zu kopieren. Dadurch wird zwar auch jeder ungenutzte Sektor beschrieben, erspart aber viel Arbeit und Zeit falls das System seinen Diensst versagt.

Valid XHTML 1.0 Strict CSS ist valide! last update:  04.03.2011  |  eMail to  db1xw -ät- qsl.net