web-dev-qa-db-ja.com

USBフロッピードライブを動作させるにはどうすればよいですか?

Ubuntuで使用する必要がある東芝USBフロッピードライブがあります。接続してフロッピーディスクを挿入しても、Ubuntu 10.10の下には何もマウントされていません。

ハードウェアやフロッピーディスクに欠陥があるのではないかと疑っていたので、フロッピーディスクとフロッピードライブ自体をWindows XPでテストしましたが、すべて問題ありませんでした。

次の指示を見つけることができました。

  • / etc/modulesファイルに次の行を追加します。

    floppy

  • 次のシェルコマンドを入力します。

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

これでフロッピーがマウントされますが、これが自動的に行われるようにするため、ドライブをUSBポートに接続すると、フロッピーが自動的にマウントされます。

この作業を行うにはどうすればよいですか?または、Ubuntuは内部フロッピードライブでのみ動作しますか?

7
jfmessier

次の手順は、Ubuntu 12.04ですぐに機能しました。

備考
dfコマンドは、/ dev/sddがd使用中の最後に割り当てられたドライブであることを示していることを示しています。次の利用可能なものを見つけるためにこれを知る必要があり、それは後続のSudo mount ...コマンドで使用されます。私の場合、次のドライブは/ dev/sdeになります。

ご使用のシステムに適したドライブを決定する必要があります。たとえば、/ dev/sda、sdb、またはsdcがあります。

そのため、最初に、ドライブ情報を表示するには:df

次に、mkdirおよびmountを実行します。

 mkdir /mt/ee1

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

ブート時の自動実行には、通常、Perlスクリプトを使用します。Perlスクリプトは、自動的に検出して適応し、パーティションに安定した名前を付けます。

現時点では、フロッピーの場合、これは必要ありません。したがって、最適化しませんでした。おそらく、コマンド「mount ...」は最適ではありません。..)

より一般的ではありますが、少し原始的な解決策は、特定のPCで複数の可能性のあるバリアントSudo...を使用して、上記のように/dev/sd...で複数行のbash/batchファイルを作成することです。

次に、「スタートアップアプリケーション」の設定でこのファイルの呼び出しが行われる場合があります。私はこれをテストしませんでした。

また、これは、別のフロッピーディスクを取り外したり挿入したりする側面には対応していません。これは、自動または少なくとも半自動で行うことができます。

上記の方法が最適かどうかわかりません。上記の回答で自分の問題を解決した後、役立つ情報を追加したかっただけです。

3
Don Pedro

実行時にドライブIDを自動検出し、いくつかのロバ作業を実行する小さなスクリプトを作成しました。間違ったものを検出する可能性があるため(コメントに注意してください)、これは完全ではありませんが、ほとんどの場合はうまくいくようです:

#!/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

クリーンアンマウントを行うには:

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

Sudo umount /media/floppy
Sudo rmdir /media/floppy
echo fdd unmounted from /media/floppy
2
Bobble

ドライブにフロッピーディスクがあるか、マウントするものがないことを確認してください! Sudo mountをしないでください。さもないと、root権限でしかアクセスできません。

最初に、ドライブ情報を表示するには、dfを実行します。

1つのHDを搭載したシステムでは、フロッピーはsdbsdaはハードドライブでした)として表示されます

次にマウントする:

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

例えば:

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
2
Paul_L

フロッピードライブが組み込まれている古いシステムでは、ドライブは/ dev/fd0として指定されています。残念ながら、Ubuntuの今後のリリースでは、これらのドライブが自動的にマウントされることも、/ mediaにディレクトリが作成されることもありません。

ドライブをマウントするには、まずマウントするディレクトリ/media/floppyを作成する必要があります。その後、Sudo mount /dev/fd0 /media/floppyを使用してマウントできます。

2
charlie-tca

ドライブを接続したままにしておく必要があります。Ubuntuは、次回プラグインするときに/ dev/sdcまたは/ dev/sddを再割り当てします。

ドライブにはファイルシステムがないため、ファイルシステムを一意に識別するUUIDを取得できない場合があります。

1
Broam

マウントリストにフロッピーが表示されない場合、Ubuntuがフロッピードライブを検出する際に問題がある可能性があります。問題とその解決について理論化する前に、問題に関する詳細な情報が必要だと思います。これはUSBデバイスなので、lsusbログを使用して、デバイスがUbuntuによって検出されたかどうかを確認できます。ハードウェア検出の問題を扱うのに適した場所は次のとおりです- https://wiki.ubuntu.com/DebuggingHardwareDetection

1
Nikhil

http://ubuntuforums.org/showthread.php?t=1641104 に示すように、これをマウントする最も簡単な方法は次のとおりです。

  1. ドライブのデバイスを特定し、
Sudo df
udisks --enumerate

たとえば、私のものは/ dev/sdcでしたが、念のため:

udisks --show-info /dev/sdc
  1. Udisksコマンドでマウントします
Sudo udisks --mount /dev/sdc
1
user15972