>> HOME >> Linux Tips MENU >> 物理ディスクを増設する方法
現在運用中のマシンに、物理ディスクを追加し、ファイルシステムを作成します。
なお、ハードディスクのデバイス名は以下の様になっています。
SCSI ハードディスクの場合
1 台目 : /dev/sda
2 台目 : /dev/sdb
3 台目 : /dev/sdc
    :
IDE ハードディスクの場合
1 台目 : /dev/hda
2 台目 : /dev/hdb
3 台目 : /dev/hdc
    :
台数が増える毎に末尾の文字が 「 a b c … 」 の様に変わっていきます。
ここでは、IDE ハードディスクの 2 台目を増設し、/extent1/extent2 というファイルシステムを追加します。
追加する IDE ハードディスクの容量は 20GByte、追加するファイルシステムは、それぞれ 10GByte です。
※ 新規物理ディスクはマシンに設置済みとして進めます。

1. ディスクパーティションの作成
2. ファイルシステムの作成
3. ファイルシステムのマウント
1 ) マウントポイントの作成
2 ) ファイルシステムのマウント
3 ) ファイルシステムの自動マウントの設定
1. ディスクパーティションの作成
[root@linux ~]# fdisk /dev/hdb 
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.


The number of cylinders for this disk is set to 44384.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

# 上の和訳 ---------------------------------------------------------------------------------
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルを作成します。あなたが書き込みを決定するまで、変更は
メモリ内だけに残します。その後はもちろん以前の内容は修復不可能になります。

このディスクのシリンダ数は 44384 に設定されています。
間違いではないのですが、1024 を超えているため、以下の場合に問題を生じうる事を確認しましょう:
1) ブート時に実行するソフトウェア (例. バージョンが古い LILO)
2) 別の OS のブートやパーティション作成ソフト
   (例. DOS FDISK, OS/2 FDISK)
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって正常になります
--------------------------------------------------------------------------------------------

Command (m for help): m 
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

# 上の和訳 ---------------------------------------------------------------------------------
コマンドの動作
   a   ブート可能フラグをつける
   b   bsd ディスクラベルを編集する
   c   dos 互換フラグをつける
   d   領域を削除する
   l   既知の領域タイプをリスト表示する
   m   このメニューを表示する
   n   新たに領域を作成する
   o   新たに空の DOS 領域テーブルを作成する
   p   領域テーブルを表示する
   q   変更を保存せずに終了する
   s   空の Sun ディスクラベルを作成する
   t   領域のシステム ID を変更する
   u   表示/項目ユニットを変更する
   v   領域テーブルを照合する
   w   テーブルをディスクに書き込み、終了する
   x   特別な機能 (エキスパート専用)
--------------------------------------------------------------------------------------------

Command (m for help): l 

 0  Empty           1e  Hidden W95 FAT1 80  Old Minix       be  Solaris boot
 1  FAT12           24  NEC DOS         81  Minix / old Lin bf  Solaris
 2  XENIX root      39  Plan 9          82  Linux swap / So c1  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  83  Linux           c4  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     84  OS/2 hidden C:  c6  DRDOS/sec (FAT-
 5  Extended        41  PPC PReP Boot   85  Linux extended  c7  Syrinx
 6  FAT16           42  SFS             86  NTFS volume set da  Non-FS data
 7  HPFS/NTFS       4d  QNX4.x          87  NTFS volume set db  CP/M / CTOS / .
 8  AIX             4e  QNX4.x 2nd part 88  Linux plaintext de  Dell Utility
 9  AIX bootable    4f  QNX4.x 3rd part 8e  Linux LVM       df  BootIt
 a  OS/2 Boot Manag 50  OnTrack DM      93  Amoeba          e1  DOS access
 b  W95 FAT32       51  OnTrack DM6 Aux 94  Amoeba BBT      e3  DOS R/O
 c  W95 FAT32 (LBA) 52  CP/M            9f  BSD/OS          e4  SpeedStor
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a0  IBM Thinkpad hi eb  BeOS fs
 f  W95 Ext'd (LBA) 54  OnTrackDM6      a5  FreeBSD         ee  EFI GPT
10  OPUS            55  EZ-Drive        a6  OpenBSD         ef  EFI (FAT-12/16/
11  Hidden FAT12    56  Golden Bow      a7  NeXTSTEP        f0  Linux/PA-RISC b
12  Compaq diagnost 5c  Priam Edisk     a8  Darwin UFS      f1  SpeedStor
14  Hidden FAT16 <3 61  SpeedStor       a9  NetBSD          f4  SpeedStor
16  Hidden FAT16    63  GNU HURD or Sys ab  Darwin boot     f2  DOS secondary
17  Hidden HPFS/NTF 64  Novell Netware  b7  BSDI fs         fd  Linux raid auto
18  AST SmartSleep  65  Novell Netware  b8  BSDI swap       fe  LANstep
1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid ff  BBT
1c  Hidden W95 FAT3 75  PC/IX

# 新規領域(1個目のパーティション)
Command (m for help): n 
Command action
   e   extended
   p   primary partition (1-4)
p 

Partition number (1-4): 1 
First cylinder (1-44384, default 1): 1 
Last cylinder or +size or +sizeM or +sizeK (1-44384, default 44384): +10240M 

# 新規領域(2個目のパーティション)
Command (m for help): n 
Command action
   e   extended
   p   primary partition (1-4)
p 

Partition number (1-4): 2 
First cylinder (21166-44384, default 21166): 
Using default value 21166
Last cylinder or +size or +sizeM or +sizeK (21166-44384, default 44384): 
Using default value 44384

# 領域テーブルの表示
Command (m for help): p 

Disk /dev/hdb: 21.4 GB, 21474836480 bytes
15 heads, 63 sectors/track, 44384 cylinders
Units = cylinders of 945 * 512 = 483840 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1               1       21165    10000431   83  Linux
/dev/hdb2           21166       44384    10970977+  83  Linux

# 領域テーブルをディスクへ書き込み
Command (m for help): w 
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
2. ファイルシステムの作成
1 番目パーティションに、ファイルシステム ( ext3 ) を作成
[root@linux ~]# mkfs -t ext3 /dev/hdb1 
mke2fs 1.38 (30-Jun-2005)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1251712 inodes, 2500107 blocks
125005 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2562719744
77 block groups
32768 blocks per group, 32768 fragments per group
16256 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
2 番目パーティションに、ファイルシステム ( ext3 ) を作成
[root@linux ~]# mkfs -t ext3 /dev/hdb2 
mke2fs 1.38 (30-Jun-2005)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1373568 inodes, 2742744 blocks
137137 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2810183680
84 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
3. ファイルシステムのマウント
1 ) マウントポイントの作成
[root@linux ~]# mkdir /extent1 
[root@linux ~]# mkdir /extent2 
2 ) ファイルシステムのマウント
[root@linux ~]# mount /dev/hdb1 /extent1 
[root@linux ~]# mount /dev/hdb2 /extent2 


# マウント情報の表示
[root@linux ~]# mount 
/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
automount(pid1642) on /net type autofs (rw,fd=4,pgrp=1642,minproto=2,maxproto=4)
/dev/hdb1 on /extent1 type ext3 (rw)
/dev/hdb2 on /extent2 type ext3 (rw)

[root@linux ~]# df -k 
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/mapper/VolGroup00-LogVol00
                      19647760   1300672  17332920   7% /
/dev/hda1               101086      9855     86012  11% /boot
tmpfs                   128044         0    128044   0% /dev/shm
/dev/hdb1              9843276    153192   9190064   2% /extent1
/dev/hdb2             10798528    157992  10091988   2% /extent2
3 ) ファイルシステムの自動マウントの設定
ファイルシステム設定ファイル /etc/fstab を編集し、作成したデバイスを登録します。
こうすることにより、今後は、起動時に自動的にマウントされます。
[root@linux ~]# vi /etc/fstab 

/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
sysfs                   /sys                    sysfs   defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0
# 以下を追加
/dev/hdb1               /extent1                ext3    defaults        1 2
/dev/hdb2               /extent2                ext3    defaults        1 2
5つ目の数字は、ファイルシステムをdump(ファイルシステムをバックアップするコマンド)する必要があるか否かの指定です。
  「0」または無記述の場合はdump不要のファイルシステムと見なされます。
6つ目の数字は、システム起動時にfsckチェックを行うか否かの指定です。
  ルートファイルシステム(/)でチェックを行う場合は「1」を指定します。
  ルートファイルシステム以外でチェックを行う場合は「2」を指定します。
  「0」または無記述の場合はチェック不要のファイルシステムと見なされます。