Lệnh hdparm trong Linux

Giới thiệu

Trong lab này, bạn sẽ học cách sử dụng lệnh hdparm của Linux để tương tác và cấu hình các tham số khác nhau của ổ đĩa cứng (HDDs) và ổ cứng thể rắn (SSDs). Lab bao gồm việc hiểu mục đích và chức năng của hdparm, đo hiệu suất đĩa và tối ưu hóa hiệu suất đĩa bằng tiện ích mạnh mẽ này. Bạn sẽ khám phá các tính năng như đo hiệu suất đĩa, tối ưu hóa cấu hình đĩa và truy xuất thông tin đĩa. Lab cung cấp các ví dụ thực tế để giúp bạn sử dụng hiệu quả hdparm trong môi trường Linux của mình.

Hiểu Mục Đích và Chức Năng của hdparm

Trong bước này, bạn sẽ tìm hiểu về mục đích và chức năng của lệnh hdparm trong Linux. Lệnh hdparm là một tiện ích mạnh mẽ cho phép bạn tương tác và cấu hình các tham số khác nhau của ổ đĩa cứng (HDDs) và ổ cứng thể rắn (SSDs).

Lệnh hdparm cung cấp các chức năng chính sau:

  1. Đo Hiệu Suất Đĩa: Bạn có thể sử dụng hdparm để đo hiệu suất của đĩa, bao gồm tốc độ đọc/ghi, cài đặt bộ nhớ cache và các tham số khác.
  2. Tối Ưu Hóa Cấu Hình Đĩa: hdparm cho phép bạn điều chỉnh các tham số đĩa khác nhau để tối ưu hóa hiệu suất, chẳng hạn như bật các tính năng quản lý năng lượng nâng cao, đặt kích thước bộ nhớ cache đọc trước và hơn thế nữa.
  3. Truy Xuất Thông Tin Đĩa: Lệnh hdparm có thể cung cấp thông tin chi tiết về đĩa của bạn, bao gồm model, phiên bản firmware và các thông số kỹ thuật khác.

Hãy bắt đầu bằng cách sử dụng hdparm để truy xuất thông tin về đĩa của bạn.

sudo hdparm -i /dev/sda

Ví dụ đầu ra:

/dev/sda:
 Model=VBOX HARDDISK, FwRev=1.0, SerialNo=
 Config={ HardSect NotMFM Motor(_) Removeable DTR(500Mbs) SpinUp(0.600s) }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=unknown, BuffSize=0kB, MaxMultSect=0
 (maybe): CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=33554432
 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
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: unknown:  ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

Lệnh này truy xuất thông tin chi tiết về đĩa /dev/sda, bao gồm model, phiên bản firmware, số sê-ri và các chế độ đĩa được hỗ trợ.

Đo Hiệu Suất Đĩa với hdparm

Trong bước này, bạn sẽ học cách sử dụng lệnh hdparm để đo hiệu suất của đĩa. Thông tin này có thể hữu ích để xác định các tắc nghẽn hiệu suất và tối ưu hóa cấu hình đĩa của hệ thống.

Hãy bắt đầu bằng cách đo hiệu suất đọc của đĩa bằng tùy chọn -t:

sudo hdparm -t /dev/sda

Ví dụ đầu ra:

/dev/sda:
 Timing buffered disk reads: 236 MB in  3.01 seconds = 78.41 MB/sec

Lệnh này đo hiệu suất đọc được buffered của đĩa, cung cấp ước tính về tốc độ đọc bền vững tối đa của đĩa.

Tiếp theo, hãy đo hiệu suất đọc được cache của đĩa bằng tùy chọn -T:

sudo hdparm -T /dev/sda

Ví dụ đầu ra:

/dev/sda:
 Timing cached reads:   13624 MB in  2.00 seconds = 6812.00 MB/sec

Hiệu suất đọc được cache đo tốc độ đọc dữ liệu từ bộ nhớ cache của đĩa, thường nhanh hơn nhiều so với đọc trực tiếp từ đĩa.

Cuối cùng, hãy đo hiệu suất đọc và ghi tuần tự của đĩa bằng cách sử dụng các tùy chọn -t-T cùng nhau:

sudo hdparm -tT /dev/sda

Ví dụ đầu ra:

/dev/sda:
 Timing buffered disk reads: 236 MB in  3.01 seconds = 78.41 MB/sec
 Timing cached reads:   13624 MB in  2.00 seconds = 6812.00 MB/sec

Lệnh này cung cấp cả số liệu hiệu suất đọc được buffered của đĩa và đọc được cache, cung cấp cho bạn cái nhìn toàn diện hơn về hiệu suất đĩa của bạn.

Tối Ưu Hóa Hiệu Suất Đĩa bằng hdparm

Trong bước cuối cùng này, bạn sẽ học cách sử dụng lệnh hdparm để tối ưu hóa hiệu suất của đĩa.

Đầu tiên, hãy bật bộ nhớ cache đọc trước, có thể cải thiện đáng kể hiệu suất đọc:

sudo hdparm -r1 /dev/sda

Ví dụ đầu ra:

/dev/sda:
 setting readonly to 1 (on)

Lệnh này đặt kích thước bộ nhớ cache đọc trước thành 1, là giá trị tối đa. Bạn có thể thử nghiệm với các giá trị khác nhau để tìm cài đặt tối ưu cho hệ thống của mình.

Tiếp theo, hãy bật tính năng quản lý năng lượng nâng cao (APM), có thể giúp giảm mức tiêu thụ điện năng và có khả năng cải thiện hiệu suất:

sudo hdparm -B 254 /dev/sda

Ví dụ đầu ra:

/dev/sda:
 setting Advanced Power Management level to 0xfe (254) (maximum performance)

Lệnh này đặt mức APM thành 254, là cài đặt hiệu suất tối đa. Bạn có thể thử nghiệm với các giá trị thấp hơn để tìm sự cân bằng phù hợp giữa hiệu suất và tiết kiệm năng lượng.

Cuối cùng, hãy bật tính năng write-caching, có thể cải thiện hiệu suất ghi:

sudo hdparm -W1 /dev/sda

Ví dụ đầu ra:

/dev/sda:
 setting drive write-caching to 1 (on)

Lệnh này bật tính năng write-caching, có thể cung cấp một sự tăng cường đáng kể cho hiệu suất ghi.

Sau khi thực hiện các thay đổi này, hãy xác minh lại hiệu suất đĩa bằng cách sử dụng các bước từ phần trước.

Tóm tắt

Trong lab này, trước tiên bạn đã tìm hiểu về mục đích và chức năng của lệnh hdparm trong Linux. Lệnh hdparm là một tiện ích mạnh mẽ cho phép bạn tương tác và cấu hình các tham số khác nhau của ổ đĩa cứng (HDDs) và ổ cứng thể rắn (SSDs). Nó cung cấp các chức năng chính như đo hiệu suất đĩa, tối ưu hóa cấu hình đĩa và truy xuất thông tin đĩa. Sau đó, bạn đã khám phá cách sử dụng hdparm để đo hiệu suất của đĩa, bao gồm tốc độ đọc/ghi, cài đặt bộ nhớ cache và các tham số khác. Cuối cùng, bạn đã học cách tối ưu hóa hiệu suất đĩa bằng hdparm bằng cách điều chỉnh các tham số đĩa khác nhau, chẳng hạn như bật các tính năng quản lý năng lượng nâng cao và đặt kích thước bộ nhớ cache đọc trước.

400+ câu lệnh phổ biến trong Linux