Vine Linux 4.2 でフロッピーディスクを使う


フロッピーの使いかたに関するメモ。最近はめっきりフロッピーディスクを使うことも減って、私が持っているLinux本にもフロッピーの使いかたについて書いていない(本が悪いせいかも)。以下のメモは、ネットで調べた内容を、自分のVine Linuxで試したものです。


なお、このメモの内容を実行するときは、自己責任でお願いします。

前提

ログインユーザはusername。フロッピーをドライブに挿入済。

フロッピーディスクのフォーマット

物理フォーマット

フロッピー用のデバイスファイルを確認。

$ ls /dev/fd*
/dev/fd0       /dev/fd0u1440  /dev/fd0u1743  /dev/fd0u1920  /dev/fd0u800
/dev/fd0u1040  /dev/fd0u1680  /dev/fd0u1760  /dev/fd0u360   /dev/fd0u820
/dev/fd0u1120  /dev/fd0u1722  /dev/fd0u1840  /dev/fd0u720   /dev/fd0u830

/dev/fd:
0  1  2  3
$

2HDのフロッピーを1.44MBで物理フォーマットする場合は、/dev/fd0u1440を用いる。OSによっては/dev/fd0H1440だったりするらしい。

$ fdformat /dev/fd0u1440
両面, 80 トラック, 18 セクタ/トラック。合計容量 1440 kB。
フォーマットします ... 終了
照合します ... 終了
$
論理フォーマット(ファイルシステム作成)

ext2ファイルシステムを作成。

$ mkfs -t ext2 -c /dev/fd0u1440
mke2fs 1.38 (30-Jun-2005)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
184 inodes, 1440 blocks
72 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=1572864
1 block group
8192 blocks per group, 8192 fragments per group
184 inodes per group

Checking for bad blocks (read-only test): done                        440
Writing inode tables: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
$

ファイルシステムのマウント

フロッピーに作成したファイルシステムをマウントする。まず、/mntにfloppyディレクトリがあるか確認する。なければrootで作成。

$ cd /mnt
$ ls
cdrom
$ sudo mkdir floppy
$

マウント。

$ sudo mount -t ext2 /dev/fd0u1440 /mnt/floppy
$ cd /mnt/floppy/
$ ls -la
drwxr-xr-x 3 username  username   1024   51021:12 .
drwxr-xr-x 4 root         root         4096   51017:09 ..
drwx------ 2 root         root        12288   51016:52 lost+found
$

ファイルシステム作成者(username)以外でもフロッピーを読み書きできるよう、パーミッションを変更。

$ chmod 777 .
$

フロッピーの読み書き

$ cd ~
$ pwd
/home/username
$ ls -l
...
drwxr-xr-x  2 username username   4096  51017:21 tmp
$ touch sample
$ cp sample /mnt/floppy/
$ cd /mnt/floppy
$ ls
sample  lost+found
$ cp sample ~/tmp
$ ls ~/tmp
sample
$

アンマウント

カレントディレクトリが/mnt/floppyのときなど、デバイスが使用中のときはアンマウントができないので注意。その場合は、"fuser -muv /mnt/floppy"によって、フロッピーを使用中のプロセスを確認すること。

$ cd /mnt/floppy
$ fuser -muv /mnt/floppy/

                     USER        PID ACCESS COMMAND
/mnt/floppy/         username   4221 ..c..  bash
$ cd
$ pwd
/home/username
$ fuser -muv /mnt/floppy/
$ sudo umount /mnt/floppy/
$

root権限なしでマウント/アンマウント

以下の一行を/etc/fstabに書き込む。

/dev/fd0u1440   /mnt/floppy     auto    user,noauto     0       0

これで一般ユーザでもマウント/アンマウントできる。上に書いた行の2列目をmount/umountの引数とすればよい。

$ whoami
username
$ mount /mnt/floppy/
$ umount /mnt/floppy/
$