Posts Tagged ‘USB’

Samstag, 1. Juli 2017

Debian von einem bootbaren USB-Stick installieren

Kürzlich ist Debian 9.0 Stretch erschienen. Zeit, meinen USB-Stick mit den neuesten Installationsdateien zu bestücken, um zukünftige Linux-PCs von diesem Stick aus aufsetzen zu können.

Hierzu habe ich mir das neueste Debian Netinst ISO (für „Netzwerk-Installation“) heruntergeladen, welches man hier findet:

Debian — Network install from a minimal CD

Anschliessend habe ich den USB-Stick an meinen Mac mini eingesteckt (muss zwingend vor dem Starten von unetbootin gemacht werden, da das Drop-Down der Zielvolumes sonst leer bleibt), das bereits installierte unetbootin gestartet, das ISO ausgewählt und danach auf den USB-Stick kopieren lassen. Fertig.

Mangels eines verfügbaren, leeren Geräts konnte ich den Stick noch nicht testen, dieses Prozedere hat aber mit Debian 8.3 (Jessie) bereits perfekt funktioniert.

Tags: , , , , , , , , , ,
Labels: IT, Linux

Keine Kommentare | neuen Kommentar verfassen

Samstag, 5. Dezember 2015

Den Status eines HP-Druckers mit hplip abfragen

Vor 11 Jahren musste ich mir beim Umstieg meiner IT-Infrastruktur auf Mac OS X auch einen neuen Drucker leisten, welcher Postscript sprach (die Treiberunterstützung für dieses Betriebssystem war damals noch nicht so ausgeprägt wie heute). Ich entschied mich für einen HP LaserJet 1300.

Bis vor einigen Tagen verrichtete dieser im Elternhaus mehr oder wenig zuverlässig seinen Dienst. Doch nun will er nicht mehr drucken und blinkt mit dem LED unten links orange vor sich hin.

Mangels eines LCD-Displays muss der herbeigerufene IT-Supporter auf das Handbuch zurückgreifen, wo er erfährt:

Klappe geöffnet, keine Medien geladen, keine Druckpatrone oder Medienstau

Der Drucker befindet sich in einem Fehlerzustand, der den Eingriff durch den Benutzer erforderlich macht.

Quelle: HP LaserJet 1150 and 1300 Series User Manual

Leider halfen die Empfehlungen des Handbuchs nicht weiter.

Als letzter Ausweg machte ich mich auf die Suche nach einem Linux-basierten Tool, mit welchem man über die USB-Schnittstelle den Status des Geräts auslesen kann. Ich erhoffte mir davon weiterführende Informationen, die mit einem aus drei LEDs bestehenden Bedienfeld nicht an den Benutzer zurückmelden kann.

HP hat zur Administration seiner Drucker unter Linux das hplip-Treiberpaket entwickelt, welches auch unter Debian verfügbar ist:

# apt-get install hplip

Als erstes machte ich den Drucker auf dem USB-Bus ausfindig:

$ lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 003: ID abcd:0001 Unknown 
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 015: ID 03f0:1017 Hewlett-Packard LaserJet 1300
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Der Drucker ist somit an Bus 3 angeschlossen und das 15. Gerät an dem Bus (?). Die eindeutige USB-ID des Peripheriegeräts lautet 03f0:1017.

Mittels des Tools hp-makeuri fand ich die Device URI heraus, mit welcher man angeblich mit Tools des hplip-Pakets HP-Drucker ansprechen kann:

$ hp-makeuri 001:015

HP Linux Imaging and Printing System (ver. 3.14.6)
Device URI Creation Utility ver. 5.0

Copyright (c) 2001-13 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

CUPS URI: hp:/usb/hp_LaserJet_1300?serial=000000000000

Done.

Unter cups erfasste ich den Drucker mit der neuen hp:/-Schnittstelle ein zweites Mal.

Anschliessend entdeckte ich das Tool hp-info, das „Device Information Utility“ (unter root, lieber Gott vergebe mir):

# hp-info -i -dhp:/usb/hp_LaserJet_1300?serial=000000000000
warning: hp-info should not be run as root/superuser.

HP Linux Imaging and Printing System (ver. 3.14.6)
Device Information Utility ver. 5.2

Copyright (c) 2001-13 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.


hp:/usb/hp_LaserJet_1300?serial=000000000000

Device Parameters (dynamic data):
  Parameter                     Value(s)                                                  
  ----------------------------  ----------------------------------------------------------
  agent1-ack                    False                                                     
  agent1-desc                   Black toner cartridge                                     
  agent1-dvc                    0                                                         
  agent1-health                 1                                                         
  agent1-health-desc            Not installed                                             
  agent1-hp-ink                 False                                                     
  agent1-id                     0                                                         
  agent1-kind                   4                                                         
  agent1-known                  False                                                     
  agent1-level                  100                                                       
  agent1-level-trigger          0                                                         
  agent1-sku                    Q2613A/Q2613X                                             
  agent1-type                   1                                                         
  agent1-virgin                 False                                                     
  back-end                      hp                                                        
  cups-printers                 ['LaserdruckerHP']                                        
  cups-uri                      hp:/usb/hp_LaserJet_1300?serial=000000000000              
  dev-file                                                                                
  device-state                  1                                                         
  device-uri                    hp:/usb/hp_LaserJet_1300?serial=000000000000              
  deviceid                      MFG:Hewlett-Packard;CMD:PJL,MLC,BIDI-ECP,PCL,POSTSCRIPT,PC
                                LXL;MDL:hp LaserJet 1300;CLS:PRINTER;DES:Hewlett-Packard  
                                LaserJet 1300;MEM:72MB;COMMENT:RES=10x1;1;                
  duplexer                      1                                                         
  error-state                   102                                                       
  host                                                                                    
  in-tray1                      1                                                         
  in-tray2                      1                                                         
  is-hp                         True                                                      
  media-path                    1                                                         
  panel                         0                                                         
  panel-line1                                                                             
  panel-line2                                                                             
  photo-tray                    0                                                         
  port                          1                                                         
  r                             0                                                         
  revision                      254                                                       
  rg                            000                                                       
  rr                            000000                                                    
  rs                            000000000                                                 
  serial                        000000000000                                              
  status-code                   1805                                                      
  status-desc                   No toner                                                  
  supply-door                   1                                                         
  top-door                      4                                                         

Model Parameters (static data):
  Parameter                     Value(s)                                                  
  ----------------------------  ----------------------------------------------------------
  align-type                    0                                                         
  clean-type                    0                                                         
  color-cal-type                0                                                         
  copy-type                     0                                                         
  embedded-server-type          0                                                         
  fax-type                      0                                                         
  fw-download                   False                                                     
  icon                          hp_LaserJet_1200.png                                      
  io-mfp-mode                   6                                                         
  io-mode                       1                                                         
  io-support                    6                                                         
  job-storage                   0                                                         
  linefeed-cal-type             0                                                         
  model                         hp_LaserJet_1300                                          
  model-ui                      HP LaserJet 1300                                          
  model1                        HP LaserJet 1300 Printer                                  
  model2                        HP LaserJet 1300t Printer                                 
  monitor-type                  0                                                         
  panel-check-type              1                                                         
  pcard-type                    0                                                         
  plugin                        0                                                         
  plugin-reason                 0                                                         
  power-settings                0                                                         
  pq-diag-type                  0                                                         
  r-type                        0                                                         
  r0-agent1-kind                4                                                         
  r0-agent1-sku                 Q2613A/Q2613X                                             
  r0-agent1-type                1                                                         
  scan-src                      0                                                         
  scan-type                     0                                                         
  status-battery-check          0                                                         
  status-dynamic-counters       0                                                         
  status-type                   9                                                         
  support-released              True                                                      
  support-subtype               14214                                                     
  support-type                  2                                                         
  support-ver                   0.9.5                                                     
  tech-class                    ['LJMono', 'Postscript']                                  
  tech-subclass                 ['Normal']                                                
  tech-type                     3                                                         
  usb-pid                       4119                                                      
  usb-vid                       1008                                                      
  wifi-config                   0                                                         

Done.

Die wichtigsten Infos waren in folgenden Zeilen enthalten:

  error-state                   102                                                       
  status-code                   1805                                                      
  status-desc                   No toner                                                  

Am Tag bevor ich diesen Blog-Artikel abfasste hiess es noch:

  error-state                   101                                                       
  status-code                   1806                                                      
  status-desc                   Service request                                           

Wie dem auch sei, eine Lösung für das Problem habe ich immer noch nicht gefunden. Ich habe aber nun entschieden, das Gerät in den Ruhestand zu senden und stattdessen einen HP LaserJet Pro M426fdw zu bestellen.

Tags: , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Dienstag, 12. Mai 2015

Unter OS X den S.M.A.R.T.-Status von externen Festplatten abfragen

Leider unterstützen die OS X Treiber für externe Festplatten (via USB) von Haus aus die S.M.A.R.T.-Technologie nicht. Die smartmontools bleiben im Zusammenspiel mit externen Festplatten somit nutzlos.

Ein Entwickler hat sich dem Problem angenommen und stellt über sein GitHub-Repository einen entsprechenden quelloffenen Treiber zur Verfügung, welcher sich als Kernel-Erweiterung in OS X einklinkt:

OS-X-SAT-SMART-Driver

Der Treiber legt zwei Kernel-Erweiterungen an:

/System/Library/Extensions/SATSMARTDriver.kext
/System/Library/Extensions/SATSMARTLib.plugin

Ob ein externes Laufwerksgehäuse nach dieser Operation S.M.A.R.T. unterstützt, erkennt man entweder im Disk Utility („S.M.A.R.T. Status: Verified“) oder auf der Kommandozeile:

$ smartctl -a /dev/disk1
smartctl 6.3 2014-07-26 r3976 [x86_64-apple-darwin13.2.0] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Caviar Green (AF, SATA 6Gb/s)
Device Model:     WDC WD20EARX-00PASB0
...

Tags: , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Samstag, 10. Januar 2015

Safari benötigt 30 Sekunden zum Starten (ungelöst)

Seit einigen Wochen plagt mein Mac OS X 10.9 Mavericks auf einem Mac mini (Late 2012) ein merkwürdiges Problem: Beim Programmstart von Safari springt das Dock-Icon während genau 30 Sekunden auf und ab, bevor das Browser-Fenster erscheint. Ein Logout und ein Login in mein Benutzerkonto beheben das Problem nicht.

Leider habe ich bis jetzt keine Lösung für das Problem gefunden, weshalb ich hier erst einmal dokumentiere, was ich diesbezüglich herausgefunden habe.

Das Apple-Tool fs_usage ist mein Freund. Hier ein Beispiel-Auszug der Dateizugriffe des Safari-Prozesses:

# fs_usage
...
12:37:38.681696  open              F=13       (RW____)  /dev/dtracehelper                                                                                                                                    0.000026   Safari.6649750
12:37:38.681703  ioctl             F=13                                                                                                                                                      0.000006   Safari.6649750
12:37:38.681708  close             F=13                                                                                                                                                                      0.000005   Safari.6649750
12:37:38.681816  stat64                                 /System/Library/StagedFrameworks/Safari/WebInspectorUI.framework/Versions/A/WebInspectorUI                                                           0.000011   Safari.6649750
12:37:38.681836  open              F=13       (R_____)  /System/Library/StagedFrameworks/Safari/WebInspectorUI.framework/Versions/A/WebInspectorUI                                                           0.000018   Safari.6649750
12:37:38.681840  pread             F=13   B=0x1000     O=0x00000000                                                                                                                                          0.000004   Safari.6649750
12:37:38.681842  pread             F=13   B=0x1000     O=0x00004000                                                                                                                                          0.000002   Safari.6649750
12:37:38.681846  fcntl             F=13                                                                                                                                                              0.000002   Safari.6649750
12:37:38.681887  close             F=13                                                                                                                                                                      0.000003   Safari.6649750
12:37:38.684252  socket            F=13                                                                                                                                           0.000007   Safari.6649750
12:37:38.684284  connect           F=13     private/var/run/usbmuxd                                                                                                                                          0.000020   Safari.6649750
12:37:38.684288  ioctl             F=13                                                                                                                                                      0.000002   Safari.6649750
12:37:38.684365  close             F=14                                                                                                                                                                      0.000004   Safari.6649750
12:37:38.684375  sendto            F=13   B=0x10                                                                                                                                                             0.000008   Safari.6649750
12:37:38.684380  sendto            F=13   B=0x1f2                                                                                                                                                            0.000004   Safari.6649750
12:38:08.684465  close             F=14                                                                                                                                                                      0.000018   Safari.6649750
12:38:08.684588  close             F=13                                                                                                                                                                      0.000107   Safari.6649750
12:38:08.688500  stat64                 [  2]           /Library/Managed Preferences>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                             0.000005   Safari.6649750
12:38:08.688805  open              F=13       (R_____)  /Library/Preferences/com.apple.security.plist                                                                                                        0.000010   Safari.6649750
12:38:08.688811  close             F=13                                                                                                                                                                      0.000002   Safari.6649750
12:38:08.689103  stat64                                 /Users/mario/Library/Preferences/com.apple.security.plist                                                                                            0.000043   Safari.6649750
12:38:08.689108  stat64                 [  2]           /Library/Preferences/com.apple.security-common.plist                                                                                                 0.000003   Safari.6649750
12:38:08.689201  getattrlist                            /Users                                                                                                                                               0.000009   Safari.6649750

Zwischen 12:37:38 und 12:38:08 dreht der Prozess Däumchen. Hinweis gibt die folgende Zeile:

12:37:38.684284  connect           F=13     private/var/run/usbmuxd                                                                                                                                          0.000020   Safari.6649750

Safari scheint 30 Sekunden auf den connect zu private/var/run/usbmuxd zu warten.

In Console.app erscheint zudem genau nach 30 Sekunden folgende Meldung:

...
10.01.15 20:35:58.844 Safari[72526]: _SubscribeForMuxNotifications (thread 0x7fff74373310): USBMuxListenerCreate: Operation timed out
...

usbmuxd ist der Daemon, mit welchem iTunes resp. Mac OS X mit iPhones „spricht“ — wenn ich die Erklärungen verstehe so etwas wie TCP-over-USB: Usbmux — The iPhone Wiki.

Tags: , , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Dienstag, 25. November 2014

Ubuntu von einem kleinen USB-Stick installieren

Kürzlich nahm ich mir vor, einen alten Windos-Laptop mit Jahrgang 2008 platt zu machen und stattdessen Ubuntu darauf zu installieren. Da Computer mit DVD/CD-Laufwerken in unserem Haushalt de facto nicht mehr existieren, konnte ich die Installation nicht mittels einer DVD durchführen.

Ich entschied mich deshalb, die Installation über einen USB-Stick zu starten. Leider hatte ich nur einen alten USB-Datenträger mit mickrigen 512 MB zur Hand (auf dem anderen USB-Stick im Haushalt liegt Mac OS X 10.9 Mavericks als Installationsmedium bereit). Doch selbst für diesen exotischen Anwendungsfall hat Ubuntu vorgesorgt:

Ubuntu Minimal

Ich lud mir dafür Version 14.10 herunter, welche wenige 39 MB wiegt.

Anschliessend schloss ich den USB-Stick an meinem Mac mini an und folgte der Anleitung How to install Ubuntu on MacBook using USB Stick, um die Installationsdateien auf den USB-Stick zu bringen. Das MacBook wollte ich dann aber doch nicht mit Linux verschandeln, weshalb ich der Anleitung nur bis Punkt 11 folgte.

Die wichtigsten Befehle lauten (sozusagen als Sicherheitskopie hier in meinem Blog, falls das Ubuntu-Wiki das Zeitliche segnen sollte):

$ hdiutil convert minimal.iso -format UDRW -o minimal.img
# diskutil unmountDisk /dev/diskN
# dd if=minimal.img of=/dev/diskN bs=1m
# diskutil eject /dev/diskN

Da ich in der Vergangenheit meine liebe Mühe mit bootbaren USB-Sticks hatte, war ich überrascht, dass der Toshiba-Laptop beim ersten Anlauf ohne zu zicken in den Ubuntu-Installationsmodus bootete …

Tags: , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen