ホームへ戻る 更新履歴へ戻る 感想お待ちしてます(^^)/

(2010/09/29)
★[日記]覚え書き:LinuxでWindowsXP用のWD20EARSのパーティションを作成
たぶん合っているだろう程度の確信。
過度な期待はしない様に。
詳しくはぐぐって。そして自己責任で。間違っていても責任は負いかねます。
検索ワードは「4096 HDD セクタ」とか「WD製HDD友の会」とか「WD AFT」とか。


★使用環境
使用HDD:WD20EARS
HDDを使用するOS:WindowsXP
パーティション切るのに使ったLinux:Ubuntu 10.04 LTS(CD-ROM起動)

★パーティション構成
 基本パーティションは無し
 拡張パーティション
   ┣論理パーティション1:100GB
   ┣論理パーティション2:200GB
   ┣論理パーティション3:300GB
   ┣論理パーティション4:400GB
   ┗論理パーティション5:残り900GB弱

でっかく切った拡張パーティションの中に、論理パーティションを何個か切っていく。
この辺はWindowsもLinuxも一緒の基本だからぐぐって。

★開始セクタ
あまり理解していない(^^;)が、
 拡張パーティションの開始セクタ:2048
 論理パーティションの開始セクタ:4096
とする。



★手順
文字色は、説明、入力箇所コンソールのメッセージ

まずはHDDの不良チェック。
WindowsXPで、「Data Lifeguard Diagnostics」の「Extended Test」。
6時間15分掛かりました。

問題がなかったらLinux(Ubuntu 10.04 LTS)をCD-ROM起動。

まずはデバイス名を調べないと。
「/dev/hda」とか「/dev/sda」ってヤツね。
うちの場合は、M/BオンボードでPCI扱いのSilicon ImageのSiI 3112。
幸いUbuntu 10.04 LTSではデフォで対応。
SCSI扱いになってそうなので「sd○」と予想。
コンソール(アプリケーション→アクセサリ→端末)を立ち上げて、

ubuntu@ubuntu:~$ dmesg | grep sd(Enter)

〜略〜
[ 3.873049] sd 3:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
〜略〜

2TBのHDDは1台のみなので「sdb」で確定。
ここ、もっと上手いやり方があるかもだけど、分かったので良し。
では、パーティションを切る。

ubuntu@ubuntu:~$ sudo fdisk /dev/sdb(Enter)  ※sudo必須。太字の所が先ほど調べたデバイス名

警告: DOS互換モードは廃止予定です。このモード (コマンド 'c') を止めることを
強く推奨します。 and change display units to
sectors (command 'u').

コマンド (m でヘルプ):
p(Enter)  ※領域テーブルを表示するコマンド。まだ領域はない

ディスク /dev/sdb: 2000.4 GB, 2000398934016 バイト
ヘッド 255, セクタ 63, シリンダ 243201
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x1ffbba9c

デバイス ブート 始点 終点 ブロック Id システム

コマンド (m でヘルプ):
u(Enter)  ※セクタ数表示に変更
セクタ数 の表示/項目ユニットを変更します

コマンド (m でヘルプ):
n(Enter)  ※新たに領域を作成する
コマンドアクション
e 拡張
p 基本パーティション (1-4)
e(Enter)  ※拡張パーティション
パーティション番号 (1-4): 1
最初 セクタ (63-3907029167, 初期値 63):
2048(Enter)  ※拡張パーティションの開始セクター
Last セクタ, +セクタ数 or +size{K,M,G} (2048-3907029167, 初期値 3907029167): (Enter)
初期値 3907029167 を使います

コマンド (m でヘルプ):
n(Enter)  ※新たに領域を作成する
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)  ※論理パーティション
最初 セクタ (2111-3907029167, 初期値 2111): (Enter)
初期値 2111 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (2111-3907029167, 初期値 3907029167):
4032(Enter)
※この論理パーティションは、後に削除するダミーパーティション。
 Lastセクタには、下の@の初期値が4096になる数値を入れる。
 これにより、後の「最初セクタ」の入力がEnterのみで済む。


コマンド (m でヘルプ): n(Enter)  ※新たに領域を作成する
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)  ※論理パーティション
最初 セクタ (4096-3907029167, 初期値 4096): (Enter)  ※@
初期値 4096 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (4096-3907029167, 初期値 3907029167):
+100G(Enter)
論理パーティション1:100GB

コマンド (m でヘルプ): n(Enter)  ※新たに領域を作成する(作る領域の数だけ繰り返し)
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)
最初 セクタ (209719360-3907029167, 初期値 209719360): (Enter)
初期値 209719360 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (209719360-3907029167, 初期値 3907029167):
+200G(Enter)
※論理パーティション2:200GB

コマンド (m でヘルプ): n
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)
最初 セクタ (629149824-3907029167, 初期値 629149824): (Enter)
初期値 629149824 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (629149824-3907029167, 初期値 3907029167):
+300G(Enter)
※論理パーティション3:300GB

コマンド (m でヘルプ): n(Enter)
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)
最初 セクタ (1258295488-3907029167, 初期値 1258295488): (Enter)
初期値 1258295488 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (1258295488-3907029167, 初期値 3907029167):
+400G(Enter)
※論理パーティション4:400GB

コマンド (m でヘルプ): n(Enter)
コマンドアクション
l 論理 (5 以上)
p 基本パーティション (1-4)
l(Enter)
最初 セクタ (2097156352-3907029167, 初期値 2097156352): (Enter)
初期値 2097156352 を使います
Last セクタ, +セクタ数 or +size{K,M,G} (2097156352-3907029167, 初期値 3907029167):
(Enter)
初期値 3907029167 を使います
※論理パーティション5:残り900GB弱

コマンド (m でヘルプ): p(Enter)  ※領域テーブル表示

ディスク /dev/sdb: 2000.4 GB, 2000398934016 バイト
ヘッド 255, セクタ 63, シリンダ 243201, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x1ffbba9c

デバイス ブート 始点 終点 ブロック Id システム
/dev/sdb1 2048 3907029167 1953513560 5 拡張領域
/dev/sdb5 2111 4032 961 83 Linux
  ※ダミー領域。これを消す
/dev/sdb6 4096 209719296 104857600+ 83 Linux
/dev/sdb7 209719360 629149760 209715200+ 83 Linux
/dev/sdb8 629149824 1258295424 314572800+ 83 Linux
/dev/sdb9 1258295488 2097156288 419430400+ 83 Linux
/dev/sdb10 2097156352 3907029167 904936408 83 Linux

コマンド (m でヘルプ):
d(Enter)  ※領域を削除する。ダミー領域削除
パーティション番号 (1-10): 5(Enter)

コマンド (m でヘルプ): p(Enter)  ※領域テーブル表示

ディスク /dev/sdb: 2000.4 GB, 2000398934016 バイト
ヘッド 255, セクタ 63, シリンダ 243201, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x1ffbba9c

デバイス ブート 始点 終点 ブロック Id システム
/dev/sdb1 2048 3907029167 1953513560 5 拡張領域
  ※拡張パーティションの開始セクタ:2048
/dev/sdb5 4096 209719296 104857600+ 83 Linux  ※論理パーティションの開始セクタ:4096
/dev/sdb6 209719360 629149760 209715200+ 83 Linux
/dev/sdb7 629149824 1258295424 314572800+ 83 Linux
/dev/sdb8 1258295488 2097156288 419430400+ 83 Linux
/dev/sdb9 2097156352 3907029167 904936408 83 Linux

コマンド (m でヘルプ):
t(Enter)  ※システムの「Linux」を「HPFS/NTFS」に
パーティション番号 (1-9): 5(Enter)
16進数コード (L コマンドでコードリスト表示): 7(Enter)  ※「HPFS/NTFS」のシステムIDは7
領域のシステムタイプを 5 から 7 (HPFS/NTFS) に変更しました

コマンド (m でヘルプ):
t(Enter)  ※領域の数だけ繰り返し
パーティション番号 (1-9): 6(Enter)
16進数コード (L コマンドでコードリスト表示): 7(Enter)
領域のシステムタイプを 6 から 7 (HPFS/NTFS) に変更しました

コマンド (m でヘルプ):
t(Enter)
パーティション番号 (1-9): 7(Enter)
16進数コード (L コマンドでコードリスト表示): 7(Enter)
領域のシステムタイプを 7 から 7 (HPFS/NTFS) に変更しました

コマンド (m でヘルプ):
t(Enter)
パーティション番号 (1-9): 8(Enter)
16進数コード (L コマンドでコードリスト表示): 7(Enter)
領域のシステムタイプを 8 から 7 (HPFS/NTFS) に変更しました 
※余談ですが、ここのメッセージ間違ってる様なw 

コマンド (m でヘルプ): t(Enter)
パーティション番号 (1-9): 9(Enter)
16進数コード (L コマンドでコードリスト表示): 7(Enter)
領域のシステムタイプを 9 から 7 (HPFS/NTFS) に変更しました

コマンド (m でヘルプ):
p(Enter)  ※領域テーブル表示

ディスク /dev/sdb: 2000.4 GB, 2000398934016 バイト
ヘッド 255, セクタ 63, シリンダ 243201, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x1ffbba9c

デバイス ブート 始点 終点 ブロック Id システム
/dev/sdb1 2048 3907029167 1953513560 5 拡張領域
  ※拡張パーティションの開始セクタ:2048
/dev/sdb5 4096 209719296 104857600+ 7 HPFS/NTFS  ※論理パーティションの開始セクタ:4096
/dev/sdb6 209719360 629149760 209715200+ 7 HPFS/NTFS  ※GB単位でパーティションを切っていれば
/dev/sdb7 629149824 1258295424 314572800+ 7 HPFS/NTFS  ※各論理パーティションの開始セクタは
/dev/sdb8 1258295488 2097156288 419430400+ 7 HPFS/NTFS  ※自然と8の倍数になっているはず
/dev/sdb9 2097156352 3907029167 904936408 7 HPFS/NTFS

コマンド (m でヘルプ):
w(Enter)  ※これをしないと変更が反映されない。

逆に言えば「w」しない限り何度もやり直せる。
部分修正なら「d」。
全変更の破棄なら「ctrl+c」。
「ctrl+c」コピペじゃないので注意w
間違えると全部やり直しになるよw
コピペは右クリックメニューから。

この後、WindowsXPでフォーマット。
HDDの不良はチェック済みなので、クイックフォーマットで済ませて完了。
Linuxでセクタ指定でパーティションを切っておいた場合、クイックフォーマットを手軽に使えるのがメリットかな。
以上。

ホームへ戻る 更新履歴へ戻る 感想お待ちしてます(^^)/