Life would be so much simple if we don't care so much


Ở Linux, lệnh fdisk được sử dụng để quản lý các partition của ổ cứng. Với fdisk thì có thể tạo và xoá các phân vùng ổ đĩa, cũng như check được thông tin các partition.

Ở bài này, sẽ giải thích về cách tạo partition trên extended hard-disk. Ngoài ra, cũng sẽ chỉ ra cách check device name của hard-disk và cách kiểm tra thông tin partition.

1. Format của lệnh fdisk

Lệnh fdisk có thể sử dụng để tạo và xoá các partition của hard-disk hoặc là check thông tin partition của ổ cứng.

Format của fdisk
fdisk [option] [device file]

Các option thường dùng
-l (chữ nhỏ của L) liệt kê danh sách partition table của device được chỉ định. Nếu không chỉ định device nào thì các partition (nếu có) trong /proc/partitions sẽ được liệt kê.

Nếu run fdisk và gắn thêm option -l thì sẽ confirm được thông tin các partition. Nếu chỉ định device name mà ko kèm option -l thì màn hình sẽ được switch sang màn hình menu dành cho việc khởi tạo partition.
Device file sẽ nằm ở dưới thư mục /dev. Tên device của extended hard-disk thì có thể confirm bằng cách run fdisk với option -l, hoặc check với lệnh dmesg, nếu là IDE disk thì có device name là dev/hd[a-h], nếu là disk SCSI, SATA disk thì sẽ có device name là /dev/sd[a-p]

2. Check device name của extended hard-disk

Để tạo partition khi run lệnh fdisk cần phải pass vào device name của extended hard-disk

Run fdisk với option -l sẽ hiển thị thông tin partion của hard-disk mà system đang nhận biết được.
Nếu check cấu trúc của hard-disk trước khi được mở rộng thì sẽ dễ phân biệt được phần extend thêm vào sau này.

# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes   ←device name của disk1 là /dev/sda
255 heads, 63 sectors/track, 1044 cylinders
Units = số vòng quay 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1044 8281507+ 8e Linux LVM

Disk /dev/sdb: 5368 MB, 5368709120 bytes   ←device name của disk2 là /dev/sdb
255 heads, 63 sectors/track, 652 cylinders
Units = số vòng quay 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn’t contain a valid partition table

Từ kết quả của lệnh fdisk sẽ biết được device name của các hard-disk đang được kết nối là /dev/sda và /dev/sdb
Trước khi run lệnh này, đang thêm vào 5GB ổ cứng. Từ size sẽ biết được tên của thiết bị của extended hard-disk.
Nếu thông tin partition không có gì thì cũng sẽ biết được hard-disk đã được add thêm vào.
Thực tế là khi tạo partition thì cần phải có device name.

Sử dụng fdisk -l trường hợp không thể hiển thị được gì.
Nếu dùng fdisk -l mà không hiển thị được gì thì cũng có thể dùng dmesg, cũng là 1 command dùng để check info.

# dmesg | grep hd
ide0: BM-DMA at 0x10c0-0x10c7, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0x10c8-0x10cf, BIOS settings: hdc:DMA, hdd:pio
hdc: VMware Virtual IDE CDROM Drive, ATAPI CD/DVD-ROM drive
SCSI device sda: 16777216 512-byte hdwr sectors (8590 MB)   ←device name = sda
SCSI device sda: 16777216 512-byte hdwr sectors (8590 MB)   ←device name = sda
SCSI device sdb: 10485760 512-byte hdwr sectors (5369 MB)   ←device name = sdb, size ~ 5GB
SCSI device sdb: 10485760 512-byte hdwr sectors (5369 MB)   ←device name = sdb, size ~ 5GB
hdc: ATAPI 1X DVD-ROM DVD-R-RAM CD-R/RW drive, 32kB Cache, UDMA(33)
hdc: drive_cmd: status=0x51 { DriveReady SeekComplete Error }
hdc: drive_cmd: error=0x04 { AbortedCommand }

Hiện tại, tên thiết bị đang được sử dụng thì nếu dùng lệnh df có thể hiển thị được. Cái mà chưa sử dụng là tên device của hard disk đã add thêm

# df
Filesystem 1K-block use can user use% vị trí mount
/dev/mapper/VolGroup00-LogVol00
5967432 4154316 1505152 74% /
/dev/sda1 101086 12279 83588 13% /boot
↑ Hiện tại tên device của ổ cứng đang được dùng là /dev/sda (hiển thị số đại diện cho partition)
tmpfs 517552 0 517552 0% /dev/shm

3. Thông tin partition của hard disk

Run fdisk -l và pass vào thông tin device name

# fdisk -l /dev/sda

Disk /dev/sda: 8589 MB, 8589934592 bytes ← size ổ cứng của sda
255 heads, 63 sectors/track, 1044 cylinders Units = số vòng quay of 16065 * 512 = 8225280 bytes
↑ Header, number of sectors per track, number of cylinders

Disk Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux ← Partition 1
/dev/sda2 14 1044 8281507+ 8e Linux LVM ← Partition 2
Từ kết quả của command có thể biết được size ổ cứng của /dev/sda
Ngoài ra còn biết được header, number of sectors per track, number of cylinders

Mỗi partition thì sẽ tương ứng 1 tên thiết bị (device name). Trường hợp này, device name của partition 1 là /dev/sda1, device name của partition 2 là /dev/sda2

Tham khảo nguồn

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: