HOME / コンピュータTips / Solaris / fat,fat32Formatを行う

Date: 2009/05/10 |  このエントリーをはてなブックマークに追加  |  Tags: Solaris, OpenSolaris, USBメモリ, FAT, FAT32, pcfs, Format, Zpool名, 消去, フォーマット

FAT/FAT32フォーマットは、古くはMSDOSで作られ、FAT12、FAT16、FAT32と進化してきました。Windows95OSR2の時期からは、市場のHDDのサイズがFAT16のサイズ限界(理論値4G、通常2G)を越えたためFAT32が流通。

現在では、このフォーマットは、Windowsのみならず、様々な用途のデファクトとして使われています。例えばデジカメ、ミュージックプレイヤ、ケータイ電話、テレビ、カーナビ。実に様々なデバイスのデファクトとして利用されています。

このUSBメモリのフォーマットを、Solarisの上で行う方法が、案外わかりにくいのでまとめてみました。ついでに、わかりにくいので、便利ツールを作っておきました。

USBメモリのデバイスノードを知る

次の方法で接続されているデバイスの一覧を出力することができます。

rmformat 

デバイスを探しています...
     1. Logical Node: /dev/rdsk/c9t0d0p0
        Physical Node: /pci@0,0/pci17aa,20ab@1a,7/storage@3/disk@0,0
        Connected Device: Myson    SD/MMC/MS Reader 1.00
        Device Type: Removable
	Bus: USB
	Size: 3.9 GB
	Label: <None>
	Access permissions: 媒体は書き込み保護されていません。

この出力で、USBメモリのデバイスノードが、/dev/rdsk/c9t0d0p0で有ることがわかります。複数つけている場合は、誤って大事な方を消さないように注意してください。

領域確保する

領域確保にはfdiskを利用します。

pfexec fdisk c9t0d0p0

ここで、上のrmformatで調べた番号であるc9t0d0p0を入力しました。

No fdisk table exists. The default partition for the disk is:

  a 100% "SOLARIS System" partition

Type "y" to accept the default partition,  otherwise type "n" to edit the
 partition table.

Solarisで全部使うのか?と聞かれますが、nと答えます。

n

画面がクリアされます。

             Total disk size is 1951 cylinders
             Cylinder size is 4096 (512 byte) blocks

                                               Cylinders
      Partition   Status    Type          Start   End   Length    %
      =========   ======    ============  =====   ===   ======   ===




WARNING: no partitions are defined!

SELECT ONE OF THE FOLLOWING:
   1. Create a partition
   2. Specify the active partition
   3. Delete a partition
   4. Change between Solaris and Solaris2 Partition IDs
   5. Exit (update disk configuration and exit)
   6. Cancel (exit without updating disk configuration)
Enter Selection: 

ここで、パーティション作成である1を選び、

Select the partition type to create:
   1=SOLARIS2  2=UNIX        3=PCIXOS     4=Other
   5=DOS12     6=DOS16       7=DOSEXT     8=DOSBIG
   9=DOS16LBA  A=x86 Boot    B=Diagnostic C=FAT32
   D=FAT32LBA  E=DOSEXTLBA   F=EFI        0=Exit? C

FAT32であるCを選びます。

 Specify the percentage of disk to use for this partition
(or type "c" to specify the size in cylinders). 100

すると、何パーセント利用するか聞かれるので、100と答えます。

Should this become the active partition? If yes, it  will be activated
each time the computer is reset or turned on.
Please type "y" or "n". 

当然yです。

この結果は次の通り。

                                              Cylinders
     Partition   Status    Type          Start   End   Length    %
     =========   ======    ============  =====   ===   ======   ===
         1       Active    Win95 FAT32       1  1950    1950    100

後は5を選択肢、終了しましょう。

フォーマットする

領域確保が終わったら、フォーマットです。サイズにも寄りますが、数秒かかります。

FAT形式

2GBまでならば、FATでフォーマットできます。もし、デバイスがSDカードならば、この形式が限界値です。デバイスノード名は、rmformatで調べた物に置き換えてください。

pfexec mkfs -F pcfs -o fat=16 -o b=volumename /dev/rdsk/c9t0d0p0:c 

FAT32形式

4G以上のものならば、下記の方法でフォーマット可能です。Windowsのフォーマッタは32GBまでしかサポートしていないのですが、規格上は2Tぐらいまで行けたはずです。デバイスノード名は、rmformatで調べた物に置き換えてください。

pfexec mkfs -F pcfs -o fat=32 -o b=volumename /dev/rdsk/c9t0d0p0:c 

チェック

USBメモリを一度抜き、差し込めば、rmvolmgrが認識して自動的にマウントするはずです。

おまけ:zfsでフォーマットした時のzpool名が消えない時

zfsで一度フォーマットしてしまったUSBディスクなどは、zpool名が残っていて、これを差し込み時にrmvolmgrが見つけてしまい、異常なダイアログを出すことがあります。実害はないのですが、気持ち悪いのでこれを削除。デバイスノード名は、rmformatで調べた物に置き換えてください。

例)

pfexec dd if=/dev/zero of=/dev/rdsk/c9t0d0p0 bs=1024k
dd: 書き込みサイズが足りません。書き込み 524288 バイト、期待値 1048576 バイト
書き込まれたレコード数 3903+0 
読み出されたレコード数 3903+0 

何分もかかるので注意してください。

便利ツール:usbformat

なお、下記を自動でやるシェルスクリプトを書いてみました。

必要であれば、ダウンロードして使ってください。

fileusbformat

pfexec usbformat     
Found the following USB devices:
0:	/dev/rdsk/c7t0d0p0	3.9 GB	I-O DATA USB Flash Disk   BC01
Enter the number of your choice: 0

0を入力

WARNING: All data on your USB storage will be lost.
Are you sure you want to format to /dev/rdsk/c7t0d0p0 ( FAT32 : 3900 MB )?  (y/n) y
Type Volume Name :ToteBag4G

ToteBag4Gを入力

Construct a new FAT file system on /dev/rdsk/c7t0d0p0:c: (y/n)? y
please reconnect usb memory.

あとは、抜いてから、一呼吸して刺せば、rmvolmgrが勝手に認識するはずです。Windowsでももちろん使えます。


コンピュータTips/Solaris

Recent Updates

openjdk(SPARC)

SPARC用のJAVA。 最近は新しいバージョンがSPARCでリリースされず、苦労している人も多いのですが、SPARC Solarisの界隈人達がビルドして代わりに使われているものです。 Solaris 11 SPARC jdk builds
»続きを読む

Solaris11のCPU(Critical Patch Unit)の当て方

コンピュータTips/Solaris/Solaris11のCPU(Critical Patch Unit)の当て方

Solaris 11.4には4つのリビジョンがあります。 2024年4月現在、Solaris自体の開発はメンテナンスフェーズになったわけでもなく、SRU毎に、最新機能がモリモリ入っていきます。 GA(Release 版) 一応、無償のOTNライセンスの利用も可能 いわゆる、リリース時点のバージョンのことですが、現在は 利用しません 。 以前は、1〜2年に1度の頻度でリリ …
»続きを読む

Emacs.appで書類(Documents)がアクセス出来ないとき

コンピュータTips/MacOSX/Emacs.appで書類(Documents)がアクセス出来ないとき

Catalina以降の権限問題なので、システム設定のセキュリティとポリシーの中にあるプライバシー内のFull Disk Accessに、Emacs.appと/usr/bin/rubyを入れればすむ。 /usrフォルダを、プライバシーの+から入れるのは、ちょっと面倒なので、あらかじめFinderのお気に入りの中に入れておくと良いでしょう。   rubyが入るのは、Emac …
»続きを読む

SONY WH-1000XM3

自分用メモです。 ノイズキャンセラーの性能が良い。 WH-1000Xのころは、ノイズキャンセラーを有効すると、音は聞こえないのに妙な音圧があったが、それがかなり軽減。個人的には気にならなくなった。 また、WH-1000Xのころは、ノイズキャンセラーを無効にしても、なんか作られたような音が出ていたような気がしたが、割と普通に聞こえる。 USB-Cになったのも良い。飛行機でも使う …
»続きを読む

Catalina(10.15)

Catalina Beta を入れ始めたので、自分用のまとめ。 2019/10/8、Catalinaが振ってきたので製品版用に記載を変えました。 32bitアプリを確認すること。 Activity Monitorで32bitアプリがわかるので、そういうアプリがあるなら代替品を見つけておくこと。 /etc以下のいくつかのファイルをバックアップしておくこと。 /etc …
»続きを読む

ディスクの不良を確認する(iostat -EnのError等)

ディスク関係のスタックをざっくり書くと次の様になっています 例、SAS Expanderを使う場合、 例、AHCIなどを使う場合、 これらのエラーは、次の様なコマンドで知ることができます。 出力結果例 このなかで、 たとえば、SATAディスクを利用している際に負荷が上がってしまい、ディスクの応答が間に合わないシチュエーションでは、Transport Errorが一気に …
»続きを読む

2017年、新年明けまして、おめでとうございます。

日記/2017年、新年明けまして、おめでとうございます。

新年明けまして、おめでとうございます。今年もよろしくお願いします。 昨年中は、皆様にお世話になりました。 昨年は、コツコツと3年程前から行ってきた改革がある程度完成された年で、この先5年、10年を見据えて、次のフェーズへと進む為の土台が完成した年でもありました。 それにキャッチアップする形で、個々の従業員一同が、役割を自覚し、明確に動けた年であったかと考えています。 …
»続きを読む

RSA鍵認証のみにし、Password認証を無効化する

意外に覚えきれなくて、いつも忘れるので、メモついでに残しておきます。 古いOpenSSHや、SunSSHの場合は、これも無効にします。 ユーザ目線でのザックリとした説明を。OpenSSHではなく別のSSH実装も含めて考えているので、OpenSSHのソースをじっくり読んだわけではないため、間違ってたらすみません。 まず、Password認証を無効にする場合、 PasswordAut …
»続きを読む

最新  |  << 前ページ  |  次ページ >>  |  最初