Wie kann ich ein USB-Diskettenlaufwerk zum Laufen bringen?

7

Ich habe ein Toshiba USB-Diskettenlaufwerk, das ich unter Ubuntu verwenden muss. Wenn ich es anschließe und eine Diskette einlege, wird unter Ubuntu 10.10 nichts gemountet.

Ich hatte den Verdacht, dass die Hardware und / oder die Diskette defekt sind, und habe daher die Diskette sowie das Diskettenlaufwerk selbst unter Windows XP getestet, und alles war in Ordnung.

Ich konnte folgende Anweisungen finden:

  • Fügen Sie der Datei / etc / modules die folgende Zeile hinzu:

    floppy

  • Geben Sie die folgenden Shell-Befehle ein:

    mkdir /media/floppy
    mount -t vfat /dev/sdc /media/floppy -o uid=1000

Dadurch wird die Diskette gemountet, aber ich möchte, dass dies automatisch geschieht. Wenn ich das Laufwerk an den USB-Anschluss anschließe, wird die Diskette automatisch gemountet.

Wie kann ich das zum Laufen bringen? Oder funktioniert Ubuntu nur mit internen Diskettenlaufwerken?

jfmessier
quelle
Könnten Sie sich bitte / var / log / messages ansehen, wenn das Gerät korrekt erkannt wurde? Verwenden Sie paste.ubuntu.com , um relevante Informationen anzuzeigen . Vielen Dank!
Crncosta
Dies wird Ihnen helfen, nach den Protokollen zu suchen, die eingefügt werden sollen
Jorge Castro
Bitte zeigen Sie die Ausgabe von lsusb.
Tinhed
1
Ich hatte dies auch mit meiner USB-Diskette und meiner Motherboard-Diskette in 10.04. Die Disketten werden im Festplatten-Dienstprogramm angezeigt, und ich kann ihnen schreiben (z. B. mit dd), aber sie werden nicht gemountet.
Broam

Antworten:

3

Das folgende Verfahren funktionierte sofort unter Ubuntu 12.04:

BEMERKUNG :
Der dfBefehl zeigt , dass / dev / SDD , die zeigt , d im Gebrauch das zuletzt zugewiesene Laufwerk. Ich muss dies wissen, um das nächste verfügbare zu finden, das im nachfolgenden sudo mount ...Befehl verwendet wird. In meinem Fall ist das nächste Laufwerk / dev / sde.

Sie müssen das richtige Laufwerk für Ihr eigenes System ermitteln. Zum Beispiel könnten Sie / dev / sda oder sdb oder sdc haben.

Um zunächst die Laufwerksinformationen anzuzeigen: df

Führen Sie mkdirals Nächstes Folgendes aus und mount:

 mkdir /mt/ee1

 sudo mount -t vfat /dev/sde /mt/ee1 -o uid=1000

Für die automatische Ausführung beim Booten verwende ich normalerweise Perl-Skripte, die automatisch erkennen und anpassen und den Partitionen stabile Namen geben.

Ich brauche dies zu diesem Zeitpunkt nicht für Disketten und habe es daher nicht optimiert. Vielleicht ist der Befehl " mount ..." nicht optimal ....)

Eine allgemeinere, aber etwas primitive Lösung wäre, eine Bash- / Batch-Datei mit mehreren Zeilen wie oben sudo...mit den verschiedenen möglichen Varianten /dev/sd...auf dem spezifischen PC zu erstellen .

In den Einstellungen von "Startup Applications" wird diese Datei möglicherweise aufgerufen. Ich habe das nicht getestet.

Darüber hinaus geht es hier nicht um den Aspekt des Entfernens oder Einlegens einer anderen Diskette. Dies könnte auf automatische oder zumindest halbautomatische Weise erfolgen ....

Ich weiß nicht, ob der obige Weg optimal ist. Ich wollte nur hilfreiche Informationen hinzufügen, nachdem ich mein eigenes Problem mit den vorhergehenden Antworten gelöst hatte.

Don Pedro
quelle
2

Auf meinen älteren Systemen mit integrierten Diskettenlaufwerken wird das Laufwerk als / dev / fd0 bezeichnet. Leider mounten spätere Versionen von Ubuntu diese Laufwerke nicht automatisch und erstellen auch kein Verzeichnis in / media dafür.

Um mein Laufwerk zu mounten, muss ich zuerst ein Verzeichnis erstellen, in dem ich es mounten kann /media/floppy. Dann kann ich es mit montieren sudo mount /dev/fd0 /media/floppy.

charlie-tca
quelle
Wenn ich die Befehle versuche, antwortet der Befehl mount: <p> mount: Spezialgerät / dev / fd0 existiert nicht <p> Ich habe stattdessen auch den Gerätenamen / dev / sdb1 ausprobiert (da es sich schließlich um ein USB-Gerät handelt). . Gleiche Antwort. Mit dem Befehl lsusb sehe ich: <p> Bus 003 Gerät 002: ID 0644: 0000 TEAC Corp. Floppy.
jfmessier
2

Stellen Sie sicher, dass sich eine Diskette im Laufwerk befindet, da sonst nichts zu mounten ist! Nicht sudo mountoder sonst können Sie nur mit Root-Rechten zugreifen.

Führen Sie zunächst die Laufwerksinformationen aus, um sie anzuzeigen df.

Auf meinem System mit einer Festplatte erscheint die Diskette als sdb( sdawar die Festplatte)

Dann zu montieren:

udisks --mount /dev/sdb --mount-fstype=vfat

z.B:

fred@Ubuntu1:~$ udisks --mount /dev/sdb --mount-fstype=vfat
Mounted /org/freedesktop/UDisks/devices/sdb at /media/MM259_32BIT
fred@Ubuntu1:~$ df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1      152030356 9315352 134992252   7% /
udev              890692       4    890688   1% /dev
tmpfs             360384     856    359528   1% /run
none                5120       0      5120   0% /run/lock
none              900956     292    900664   1% /run/shm
/dev/sdb            1424    1397        27  99% /media/MM259_32BIT
Paul_L
quelle
2

Ich habe ein kleines Skript geschrieben, das die Laufwerks-ID beim Ausführen automatisch erkennt und einen Teil der Eselarbeit erledigt. Dies ist nicht perfekt, da es möglich ist, dass es das Falsche erkennt (beachten Sie die Kommentare), aber es scheint die meiste Zeit für mich zu funktionieren:

#!/bin/bash
# mount a usb floppy drive on /media/floppy
# NB we _assume_ other drives, e.g. internal hdd and usb devices will have been
#    automatically mounted. most of the time this will be true, but there are
#    no checks in place if this is not so.

# make sure the mount point exists
if ! [ -e /media/floppy ]; then
    sudo mkdir /media/floppy
fi

# get a list of the available disks
disks=($(udisks --enumerate |\
         sed 's_/org/freedesktop/UDisks/devices/__' |\
         grep 'sd'))

#get a list of mounted devices
mounts=($(mount | grep '/dev/sd' | awk '{print $1}'))

# work out which disk is not mounted (first one found - assume this is the fdd)
for disk in "${disks[@]}"; do
    if ! for mount in "${mounts[@]}"; do echo $mount; done | grep -q $disk 
    then
        sudo mount -t vfat /dev/$disk /media/floppy -o uid=1000
        echo fdd /dev/$disk mounted on /media/floppy
        break
    fi
done

So machen Sie ein sauberes Unmount:

#!/bin/bash
# unmount a floppy drive mounted on /media/floppy

sudo umount /media/floppy
sudo rmdir /media/floppy
echo fdd unmounted from /media/floppy
Bommel
quelle
1

Wenn die Diskette nicht in der Mount-Liste angezeigt wird, kann es zu Problemen mit der Erkennung von Diskettenlaufwerken durch Ubuntu kommen. Ich denke, wir brauchen mehr Informationen über das Problem, bevor wir über das Problem und seine Lösung theoretisieren können. Da es sich um ein USB-Gerät handelt, können Sie anhand der lsusb-Protokolle feststellen, ob das Gerät von Ubuntu erkannt wurde. Ein guter Ort, um nach Problemen bei der Hardwareerkennung zu suchen, ist - https://wiki.ubuntu.com/DebuggingHardwareDetection

Nikhil
quelle
Ubuntu hat bereits für 2-3 Releases keine Diskettenlaufwerke automatisch erkannt.
Charlie-Tca
1

Sie müssen das Laufwerk angeschlossen lassen - Ubuntu weist dem Laufwerk beim nächsten Anschließen gerne / dev / sdc oder / dev / sdd zu, da dies bei mir der Fall ist.

Da auf dem Laufwerk kein Dateisystem installiert ist, können Sie möglicherweise keine UUID abrufen, um das Dateisystem eindeutig zu identifizieren.

Broam
quelle
1

Wie unter http://ubuntuforums.org/showthread.php?t=1641104 gezeigt, ist der einfachste Weg, es zu mounten:

  1. Identifizieren Sie das Gerät des Laufwerks.
sudo df
udisks --enumerate

Zum Beispiel war meins / dev / sdc, aber nur um sicherzugehen:

udisks --show-info /dev/sdc
  1. Hängen Sie es mit dem Befehl udisks ein
sudo udisks --mount /dev/sdc
user15972
quelle