Linuxに新しいディスク(HDD)を追加する。
普段インストーラーに頼っているので、手動で(しかもコマンド)から行なうとなると、面倒に感じることがある。けれど、めんどくさがることは何もない。よくあるパターンだから手で覚えてしまった方が良い。日本橋(アキバの大阪版)に行けば、中古のハードディスクでジャンクやノーチェックが数百円で買える。それらを使ってフォーマットやファイルシステムの練習をしてみた。
ハードディスクを確認する。
ハードディスク中のパーティションはハードディスク名+数字で表される
/dev/sda5 # /dev/sdaの5番目のパーティション
アルファベットで終るのがハードディスク。数字で終るのがパーティション
/dev/sdaはどのハードディスクか。
どのハードディスクが、どのデバイスになっているか。/dev/sdbはどのハードディスクかを知りたい。その他ハードディスクとデバイスファイルの対応が分からないとき、沢山のハードディスクを接続したが、どのディスクがどのハードディスクにマッピングして対応付けられた分からないときに調べる方法
1.とりあえず、マウントしてみる。
マウントしてファイルを見る。(原始的だが確実)
mount /dev/sdb1 /mnt
2.容量から推測する。
ファイルがなかったり、新品だったり、フォーマット済みだったりした場合。
容量などで推察できる。
fdisk -l -u
容量から有る程度推察できる。
3.確実な方法。個体シリアル番号を調べる
hdparm -i /dev/sda
hdparmをから個体番号(serial)をみる。
容量もメーカーも同じ場合、ハードディスクのシリアル番号を見ます。推察できない場合は hdparm 。これは確実。実物ハードディスクと見比べる。ハードディスクにはシリアル番号が書いてあり見比べて確認が出来る。事前にHDDのシリアル番号を控えてないと面倒なので、PC設置前にシリアル番号は写メる習慣をつけておくのがよいかも。
ただ、USBのHDDは変換チップの特性で見られないみたい。
実例 :fdiskで容量見る
takuya@v1055g:~$ sudo fdisk -l -u /dev/sda ディスク /dev/sda: 251.0 GB, 251000193024 バイト ヘッド 255, セクタ 63, シリンダ 30515, 合計 490234752 セクタ Units = セクタ数 of 1 * 512 = 512 バイト Disk identifier: 0x25472547 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 63 484311554 242155746 83 Linux /dev/sda2 484311555 490223474 2955960 5 拡張領域 /dev/sda5 484311618 490223474 2955928+ 82 Linux スワップ / Solaris
実例 :hdparmでシリアル番号確認
takuya@v1055g:~$ sudo hdparm -i /dev/sda /dev/sda: Model=Maxtor 6V250F0 , FwRev=VA111630, SerialNo=V59525JG Config={ Fixed } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4 BuffType=DualPortCache, BuffSize=16384kB, MaxMultSect=16, MultSect=?0? CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=490234752 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=yes: disabled (255) WriteCache=enabled Drive conforms to: ATA/ATAPI-7 T13 1532D revision 0: ATA/ATAPI-1,2,3,4,5,6,7 * signifies the current active mode
ディスクにパーティションを作る。
追加したい対象のディスクが分かったら、パーティションを作る
一番単純なのは fdisk
実例
takuya@v1055g:~$ sudo fdisk /dev/sdb [sudo] password for takuya: このディスクのシリンダ数は 243201 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフト (例. DOS FDISK, OS/2 FDISK)
fdisk を押してコマンドを一文字だけ入れる。馴れないと勇気が要る。チョット怖い。
潰して良いハードディスクでパーティション切ったり消したりして感じを掴んだほうがいい。fdiskの細かい使い方は専門サイトやWikiがいっぱいあるので割愛。
ディスクをフォーマットする。
パーティションを作ったら、次にパーティションをフォーマットする。linux の場合 ext3を使うことが多い。
ext3でパーティションをフォーマットする。
mkfs.ext3 /dev/sdb1 # デバイスファイル(パーティション)
実例
takuya@v1055g:~$ sudo mkfs.ext3 /dev/sdb1 mke2fs 1.41.4 (27-Jan-2009) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 122101760 inodes, 488378000 blocks 24418900 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=0 14905 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848 Writing inode tables: Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
フォーマットできた。
ディスクをマウントして使う。
mount -t タイプ /dev/sda /mnt/#{マウント先}
sudo mount /dev/sdb1 /mnt
ext3 ならファイルシステムを明示しなくてもマウントして使うことが出来る。
自動的にマウントする
fstab に記述する。
USBハードディスクの確認
USBハードディスクは lsusb と /prco/scsi/scsi を確認する。
takuya@v1055g:~$ lsusb Bus 001 Device 008: ID 152d:2338 JMicron Technology Corp. / JMicron USA Technology Corp. JM20337 Hi-Speed USB to SATA & PATA Combo Bridge Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 002: ID 413c:2003 Dell Computer Corp. Keyboard Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub takuya@v1055g:~$ cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: Maxtor 6V250F0 Rev: VA11 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi5 Channel: 00 Id: 00 Lun: 00 Vendor: WDC WD20 Model: EARS-00MVWB0 Rev: AB51 Type: Direct-Access ANSI SCSI revision: 02
ファイルシステムのマウント方法
暗黙の基準があります。Windowsでシステムとデータでパーティションを使い分けるのと同じ。
容量が不変のモノ
OSの更新作業で若干容量は必要だけど、大きく変化しない(Varみたいな10倍100倍にならない)
/lib, /bin, /usr など
マウント先にSambaやNFSやiSCSIも使えるのでディスク集約できて便利だ、。ネットワークリソースを消費するので利用には注意。
*1:LVMで良いかもしれない。