Linux

Raspberry PiにWindows FAT32フォーマットのHDDをマウントしてみた。

この間自宅にRaspberry Piが届きまして、早速色々といじくっている最中です。

とりあえず、Windows FAT32フォーマットの1TB外付けHDDを繋げてみました。
USBで接続してdmesgコマンドを打ってみる。
dmesgはLinuxカーネルのログを表示したり制御したりできます。kazmax様のサイトへリンクを張らせて頂きました。

・・・すると、dmesgで以下の画像の様な出力を得ました。

ふむふむ、どうやらこの時点で既にHDDは認識されているようです。
/dev/sdcに該当HDDが追加されているのがわかります。
ちなみに/dev/sdcはHDDそれ自体を、/dev/sdc1はHDDに切られたパーティションを表します。

私のHDDですと、パーティションは一つしか持ってないので、sdc1を指定してあげると良い事になります。

と言う事で実際にマウントしてみました。
はじめに/mnt/mediaというディレクトリを作成してから


# mount /dev/sdc1 /mnt/media

とする事でマウントが出来ました。
しかし中身をみてみると、どうも日本語の文字コードの変換が旨く行ってない様子。
WindowsではDOSの表示での文字コードにcp932というものを用いるのが原因のようです。
それに、フォーマットの指定も忘れていました。

こりゃいかんという事で、やり直す為にまずアンマウントを試みたのですが


# umount /dev/sdc1

umount: /home/******/sdc1: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))

と出力されてどうやらHDDがbusyでアンマウントが上手く行っていません。
こういう時にどうすれば良いのか。

umountに -l オプションを付けてあげると良いとのこと。
-fよりも良い感じにアンマウントしてくれるらしい。

以下manより引用
-f Force unmount (in case of an unreachable NFS system). (Requires kernel 2.1.116 or later.)
-l Lazy unmount. Detach the filesystem from the filesystem hierarchy now, and cleanup all references to the filesystem as soon as it is not busy anymore.
(Requires kernel 2.4.11 or later.)

と言う事で


# umount -l /dev/sdc1

で無事にアンマウントが出来ました。

続いて文字化けが起こらないように、新たに必要なオプションを付けて再度マウントを行います。


# mount -t vfat /dev/sdc1 /mnt/media -o codepage=932,iocharset=utf8

-tはファイルシステムのフォーマットを指定します。FAT32はvfatというコマンドになります。
-o はファイルシステム固有のオプションを引数にとるという事で、引数が複数個ある場合は、カンマを区切りにします。
ここではcp932をutf8に変換するという事を指定しています。

これで問題なくマウントする事に成功しました。

以上です。

Linux-UbuntuでのSubversionのインストールと使い方前のページ

Pythonで文字列に文字を挿入する方法次のページ

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

Twitter

PAGE TOP