Posts Tagged ‘mount’

Montag, 2. Januar 2023

Ein Apple SuperDrive unter Linux zum Laufen bringen

Die Feiertage sind für mich auch immer der Zeitpunkt, um mal wieder so richtig aufzuräumen. Dieses Jahr — ein Jahr nach dem Umzug — war der Keller dran. Unter anderem ging es Bundesordnern mit Unterlagen seit Mitte 1990er bis 2011 an den Kragen.

Mit meinem Fujitsu ScanSnap iX 1500 wurden alle Blätter gescannt, danach lief mit ABBYY FineReader PDF for Mac die OCR-Texterkennung darüber, und schlussendlich habe ich die PDFs auf dem lokalen Laufwerk abgelegt.

Ein Ordner enthielt auch CDs und DVDs für Web-Projekte der späten 1990er und frühen 2000er. Zum Glück hatte ich mir — in weiser Voraussicht — vor einiger Zeit ein Apple SuperDrive (A1379) gekauft, welches mit USB an beliebige Computer angeschlossen werden kann.

Bevor ich also die CDs und DVDs entsorgte, wollte ich die Daten damit ebenfalls auf den lokalen Computer sichern.

Erkenntnis: Von ungefähr einem Dutzend CDs und DVDs waren alle (!) noch lesbar. Bei zwei Datenträgern motzte macOS aber, dass diese ein „nicht unterstützes Format“ aufweisen (Nachtrag: Vermutlich weil unter Mac OS 9 gebrannt).

Ich entschied mich, noch nicht aufzugeben, und das Laufwerk an einen Linux-Laptop anzuschliessen. Das war aber gar nicht so einfach: Das Laufwerk machte zwar kurz ein Geräusch, nachdem es an USB angeschlossen wurde, doch die CD wurde nicht eingezogen.

Am USB-Bus wurde das Gerät angezeigt:

# lsusb
...
Bus 002 Device 011: ID 05ac:1500 Apple, Inc. SuperDrive [A1379]
...

Nach etwas Recherche dann die Lösung:

  • (einmalig) # apt-get install sg3-utils
  • (jedes Mal, nachdem das Laufwerk an USB angeschlossen wurde) # sg_raw /dev/sr1 EA 00 00 00 00 00 01 (WICHTIG: Wie ich erst später bemerkte, hätte das Lenovo ThinkPad eigentlich bereits einen DVD-Leser eingebaut gehabt. Dieses Gerät befindet sich unter /dev/sr0, weshalb das Apple-Laufwerk /dev/sr1 erhält)
  • Jetzt sollte man die CD/DVD einschieben können, und das Laufwerk zieht sie ein
  • Mittels # blkid kann man sich die Datenträgerinformationen anzeigen lassen; bei mir bspw. /dev/sr1: BLOCK_SIZE="2048" UUID="2001-02-02-16-03-16-00" LABEL="anzeiger wangen" TYPE="iso9660" PTTYPE="mac"
  • (einmalig) # mkdir /mnt/mac
  • # mount -t iso9660 /dev/sr1 /mnt/mac (falls das nicht klappt, kann man mit dem Parameter -t noch andere Dateisysteme testen, bspw. udf, hfs oder hfsplus Quelle)
  • Nun sollten sich die Ordnerstruktur und die Dateien unter /mnt/mac auflisten lassen
  • Backup, bspw. mit rsync
  • # umount /mnt/mac um das Filesystem zu unmounten
  • # eject /dev/sr1 um die CD auszuwerfen (das Laufwerk verfügt über keinen physischen Auswurfs-Knopf) (Quelle im Kommentar von Korhan Tınaztepe) (Fun fact: # eject /dev/sr0 öffnet die Schublade des ThinkPad-eigenen DVD-Laufwerks)

Quelle: Apple’s SuperDrive tweak for use with Linux, Use Apple’s USB SuperDrive with Linux,

Tags: , , , , , , , , , ,
Labels: Apple, IT

Keine Kommentare | neuen Kommentar verfassen

Samstag, 7. März 2020

Festplatte mit NTFS-Partition unter Linux mounten

Kürzlich fiel eine in einem ELK-System verwendete Magnetfestplatte aus. Ich ersetzte diese mit einer SSD, die hier seit einiger Zeit unbenutzt herumlag. Ergattert hatte ich diese bei einer Geschäftsauflösung in Kalifornien, wo sie ungefähr fünf Jahre in einem Schrank am Verstauben war.

Bevor ich die Festplatte formatierte, nahm mich der alte Inhalt darauf wunder. Die Platte wurde in einem Windows-System betrieben und war mit dem Microsoft NTFS Dateisystem formatiert.

Eine solche Festplatte mountet man folgendermassen unter Linux:

# apt-get install ntfs-3g
# mkdir /mnt/ntfs
# mount -t ntfs-3g /dev/sda1 /mnt/ntfs

Fazit: Nicht viel spannendes, vor allem dutzende ISO-Dateien von völlig veralteten Windows-Installationsmedien und Linux-Distributionen.

Tags: , , , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Montag, 23. Oktober 2017

Mit Debian Rescue eine CD mounten und auf einen USB-Stick kopieren

Unsere Wohnung ist (fast) eine DVD/CD-ROM-freie Zone. All unsere Endgeräte verfügen mittlerweile über kein optisches Laufwerk mehr.

Doch was nun, wenn man eine CD erhält, deren Daten man auf die Endgeräte laden möchte?

Man nimmt den herumliegenden Lenovo T400 zur Hilfe, welcher noch über ein CD-ROM-Laufwerk verfügt. Leider fehlt der guten Maschine die Festplatte, weil der auf AliExpress.com gekaufte Festplatten-Käfig sowie die Plasticschienen derzeit gerade aus China unterwegs in die Schweiz sind.

Damit man auf der Kiste also ein Linux zum Laufen kriegt, bootet man von einem USB-Stick, auf welchen die Netinst-Version von Debian 9.0 kopiert wurde. (tftp Netzwerk-Boot wäre noch ein Todo für die langen Winternächte).

Nach ein paar Kapriolen, um das Boot-Laufwerk auf USB umzubiegen, startet der Laptop mit der graphischen Installationsoberfläche. Dort wählt man unter Advanced Options den Rescue Modus ein (ohne graphische Benutzeroberfläche).

Nach viel zu vielen Dialogfenster hat man endlich eine Shell zur Hand. Sobald man die CD eingelegt hat, gibt man folgende Befehl ein:

# mkdir /mnt/cdrom
# mount /dev/cdrom /mnt/cdrom

Unter /mnt/cdrom sieht man mit ls -l den Inhalt der CD.

Hat man den zweiten USB-Stick, auf welchen die Daten der CD kopiert werden sollen, bereits bei der Anzeige des Debian-Menus eingestöpselt, könnte man dem Rescue-System in einem Dialog-Fenster sagen, diesen Stick ebenfalls bereits zu mounten.

Hat man dies nicht gemacht, sucht man sich zuerst einen weiteren freien USB-Port am Gerät und steckt den USB-Stick ein.

Anschliessend sucht man sich mit fdisk -l den Devicenamen sowie den Namen der Partition hervor. Gleichzeitig sieht man auch, ob der Stick mit FAT16/32 formatiert ist — ich konnte in meinem Versuch nur solche Sticks mounten.

In unserem Fall trägt die Partition des USB-Sticks den Pfad /dev/sdb1, deshalb mountet man den Stick so:

# mkdir /mnt/usb2
# mount /dev/sdb1 /mnt/usb2

Anschliessend wechselt man auf das CD-Laufwerk und verwendet — leider, da rsync in dieser Umgebung fehlt — folgenden Befehl, um die Daten auf den USB-Stick zu kopieren:

# cd /mnt/cdrom
# cp -R . /mnt/usb2

Doch OBACHT — nur weil der Kopierbefehl abgeschlossen ist, heisst das leider noch nicht, dass alle Daten bereits auf den USB-Stick geschrieben wurden:

USB write: delay between when Ubuntu says its done and it actually being done

Bevor man den USB-Stick ausstöpselt, muss man mit folgendem Befehl sicherstellen, dass auch wirklich restlos alle Daten auf den Stick geschrieben wurden:

# sync

Danach werkelt sync, was locker noch einmal ein oder zwei Minuten dauern kann.

Anschliessend kann man den Stick mit folgendem Befehl für die Entfernung bereitmachen:

# umount /mnt/usb2

Sobald dieser Befehl ausgeführt wurde, kann man den Stick aus dem USB-Port entfernen und auf einem Endgerät einstöpseln.

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

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 19. Februar 2017

ELK: snmpd: Cannot statfs

Seit einer Woche läuft auf einem Laptop bei mir zu Hause der ELK-Stack und sammelt per Syslog die Logs aller meiner Devices an drei Standorten. In unregelmässigen Abständen werde ich hier über Erkenntnisse berichten, die ich dank der zentralisierten Analyse der Logs gemacht habe.

Heute geht es um snmpd und Mounts, deren Attribute der Daemon nicht auslesen kann. Dies äussert sich auf ELK mit folgenden Log-Meldungen:

... snmpd[1234] Cannot statfs /var/lib/docker/containers/: Permission denied ...
... snmpd[1234] Cannot statfs /var/lib/docker/aufs/mnt/: Permission denied ...
... snmpd[1234] Cannot statfs /run/docker/netns/: Permission denied ...
... snmpd[1234] Cannot statfs /run/user/1000/gvfs: Permission denied ...
... snmpd[1234] Cannot statfs /sys/kernel/debug/tracing: Permission denied ...

Ich versuchte mit verschiedenen Einträgen in /etc/snmp/snmpd.conf das auslesen dieser Mounts zu verhindern. Zuerst mittels der Direktive ignoredisk:

...
ignoredisk /run/user/*
ignoredisk /var/lib/docker/containers/*
ignoredisk /var/lib/docker/aufs/mnt/*
ignoredisk /run/docker/netns/*
ignoredisk /sys/kernel/debug/tracing
...

Das Blacklisting hatte leider keine Wirkung.

Auch der umgekehrte Weg, das Whitelisting, funktionierte nicht:

...
#includeAllDisks 10%
disk / 10%
...

Nach längeren Recherchen im Netz musste ich zum Schluss kommen, dass man solche Meldungen nicht mit Anpassungen an der SNMP-Konfiguration unterdrücken kann. Der Grund:

Because as I wrote in comment #2, snmpd reads /proc/mounts and runs statfs on each entry there. If any statfs call fails it logs an error. So, either stafs must not fail (i.e. no „net:[4026532288]“ entries in /proc/mounts) or snmpd must be fixed to log something more useful and only once.

Quelle: Bug 1314610 – snmpd complaining twice „Cannot statfs net:[********]#***: No such file or directory“ every 10 minutes

snmpd iteriert über die Einträge in /proc/mounts und führt ein statfs auf jeden Mountpoint durch. Das ist der Moment, in dem die Fehlermeldung geloggt wird.

Eine potentielle Lösung:

There needs to be an option to just make snmpd not try to look at these sort of mount points. The problem is that ignoreDisk only works for the devices, not mount points and a tmpfs has no „device“ name to match it by.

Quelle: snmpd storage reports all tmpfs and floods logfile

Dem Problem begegne ich nun, indem ich mit rsyslog solche snmpd-Fehlermeldungen ausfiltere und nicht zu Logstash übermittle. Der Filter dazu lautet:

...
if $programname == 'snmpd' and $msg contains 'statfs' then {
    stop
}
...

Tags: , , , , , , ,
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 13. November 2016

UniFi Access Points mittels IKEA-Hack in der Wohnung platzieren

Zur selben Zeit, als ich Brandmelder angeschafft habe und mir am Überlegen war, wie man diese Sensoren ohne Beschädigung der Decken in der Wohnung platzieren kann, habe ich mir auch zwei UniFi Access Point angeschafft.

Der IKEA-Hack mit den Variera Tellerhaltern für die Montage der Brandmelder liess sich 1:1 auch auf die Access Points übertragen, da IKEA Tellerhalter in zwei Grössen im Angebot führt (die UniFis hätten rein vom Durchmesser überhaupt nicht in die Brandmelder-Halterung gepasst). Für UniFi Access Points eignet sich das grössere der beiden Modelle, das Teller in der Grösse von 19cm bis 32cm aufnimmt:

VARIERA Tellerhalter, Buche hell, Edelstahl (IKEA Artikelnummer 802.404.16; 9.95 CHF)

Wieso dieser Aufwand? UniFi Access Points senden ihre Signale in Form eines „Donuts“ aus, wenn der Access Point horizontal aufliegt. Der „Donut“ ist aus der horizontalen Sicht aber nicht symmetrisch: Auf der Deckenseite des Access Point mit der Zuführung des Ethernet-Kabels ist die Abstrahlung weniger wulstig als auf der Luftseite (dort, wo das Logo prangt und die blaue LED leuchtet):

unifi-access-point-donut-horizontal

NACHTRAG: Unter Antenna radiation pattern for UniFi AP (diagramm inside) habe ich weitere Diagramme gefunden:

unifi-horizontal-polarization-mounted-wall

unifi-horizontal-polarization-mounted-roof

unifi-vertical-polarization-mounted-wall

unifi-vertical-polarization-mounted-roof

Quelle: [Ervaringen/discussie] Ubiquiti-apparatuur

Dies ist einfach erklärbar: Die Macher der semi-professionellen Access Points gehen davon aus, dass die Dinger in der Regel an Decken montiert werden. Richtung Decke selber bringt eine WiFi-Durchdringung niemandem etwas, aber von der Decke weg (Richtung Zimmerboden) muss eine möglichst grosse Abdeckung erreicht werden.

Aus diesem Grund habe ich beide Access Points auf dem Tellerhalter montiert und in der Stube sowie im Büro möglichst an hoher Position aufgestellt. Das sieht dann so aus:

UniFi Access Point IKEA Variera Mount Living Room

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

4 Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

UUID einer Festplatte unter Linux auslesen

Es empfiehlt sich heutzutage, in /etc/fstab die Festplatten basierend auf ihrer UUID am richtigen Mount-Point einzuhängen. Die UUID einer bestimmten Platte findet man auf folgenden zwei Wegen heraus:

$ ls -l /dev/disk/by-uuid

Oder wenn die Device-Bezeichnung der Festplatte bekannt/klar ist:

$ blkid /dev/sda

Quelle: Short Tip: Get UUID of Hard Disks [Update]

Tags: , , ,
Labels: Linux

1 Kommentar | neuen Kommentar verfassen