Kiểm tra fw trên linux

Đây là bước đầu tiên của quá trình khởi động, ở bước này BIOS thực hiện 1 công việc gọi là POST [ Power-on Self-test ]. POST là quá trình kiểm tra tính sẵn sàng phần cứng nhằm kiểm tra thông số và trạng thái của các phần cứng máy tính như bộ nhớ, CPU, thiết bị lưu trữ, card mạng,... Nếu quá trình POST kết thúc thành công, BIOS sẽ cố gắng tìm kiếm và boot 1 hệ điều hành được chứa trong các thiết bị lưu trữ như ổ cứng, CD/DVD, USB.

Thông thường BIOS sẽ kiểm tra ổ đĩa mềm hoặc CD-ROM xem có thể khởi động từ chúng được không, rồi đến phần cứng. Thứ tự của việc kiểm tra các ổ đĩa phụ thuộc vào các cấu hình trong BIOS.

Nếu BIOS không tìm thấy boot device thì sẽ cảnh báo No boot device found.

Nếu hệ điều hành Linux được cài đặt trên đĩa cứng thì sẽ tìm đến Master Boot Record [MBR] tại sector đầu tiên của ổ cứng đầu tiên.

2] MBR Loading

MBR [Master Boot Record] được lưu trữ tại sector đầu tiên của 1 thiết bị lưu trữ dữ liệu, vd /dev/hda hoặc /dev/sda.

MBR rất nhỏ, chỉ 512 byte.

MBR chứa thông tin:

Primary boot loader code [446 byte]: cung cấp thông tin boot loader và vị trí boot loader trên ổ cứng.

Partition table information [64 byte]: lưu trữ thông tin các partition.

Magic number [2 byte]: được sử dụng để kiểm tra MBR, nếu MBR bị lỗi thì nó sẽ khôi phục lại.

3] GRUB Loader

Sau khi xác định vị trí Boot Loader , bước này sẽ thực hiện load Boot Loader vào bộ nhớ và đọc thông tin cấu hình sau đó hiển thị GRUB boot menu để user lựa chọn. Nếu user không chọn OS thì sau khoảng thời gian được định sẵn, GRUB sẽ load kernel default vào memory để khởi động.

Đối với các hệ thống sử dụng EFI/UEFI , các firmware UEFI sẽ đọc dữ liệu Boot Manager để tìm các ứng dụng UEFI. Firmware sẽ chạy ứng dụng UEFI.

4] Kernel

Kernel của hệ điều hành sẽ được nạp vào trong RAM . Khi kernel hoạt động thì việc đầu tiên đó là thực thi quá trình INIT.

5] Runlevels [INIT]

Đây là giai đoạn chính của quá trình boot . Quá trình này bắt đầu bằng việc đọc file/etc/inittab:

Runlevel 0: halt - tắt hệ thống

Runlevel 1: single-user mode - không cấu hình network, khởi động các tiến trình và cho phép đăng nhập user non-root

Runlevel 2: multi-user mode - không cấu hình network, khởi động các tiến trình

Runlevel 3: multi-user mode with networking - khởi động hệ thống bình thường trên giao diện dòng lệnh

Runlevel 4: undefined

Runlevel 5: X11 - khởi động hệ thống trên giao diện đồ họa

Runlevel 6: reboot - khởi động lại hệ thống

6] User Prompt

Người dùng đăng nhập và sử dụng

Thiết lập chế độ khởi động mặc định

Multi-user.target [INIT 3]: Chế đô dòng lệnh Command Mode [non-graphics]. User chỉ sử dụng các lệnh [command] để thao tác. Ở chế độ này Server dùng rất ít RAM.

Graphical.target [INIT 5]: Chế độ GUI, mặc định khi install OS ở chế độ GNOME là ta đang sử dụng Graphical.target

Các lệnh thiết lập:

Thiết lập Multi-user.target mặc định khi khởi động:

# systemctl set-default multi-user.target

Thiết lập Graphical.target mặc định khi khởi động:

# systemctl set-default graphical.target

Kiểm tra chế độ mặc định khi khởi động hiện tại:

# systemctl get default

Chuyển đổi tạm thời từ graphical -> multi-user:

# systemctl isolate multi-user.target

hoặc

# init 3

Chuyển đổi tạm thời từ multi-user -> graphical:

# systemctl isolate graphical.target

hoặc

# init 5

Theo BizFly Cloud

BizFly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

BizFly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Làm sao để biết được ổ cứng đang gắn vào server của bạn là SSD hay HDD? Và đây sẽ là 3 cách kiểm tra ổ cứng SSD hay HHD trên Linux cho bạn tham khảo.

Cách 1: Thông qua detection của kernel

Nếu bạn sử dụng kernel phiên bản mới [2.6.29] trở lên thì kernel OS Linux sẽ tự động detect ra ổ cứng đang chạy là SSD hay không? Và đây sẽ là cách để bạn kiểm chứng điều đó. Chẳng hạn ổ sda, bạn có thể thay thế bằng thông tin tên ổ của bạn.

Đâu tiên bạn hãy xác định Disk bằng lệnh fdisk -l. Sau khi nhập lệnh sau bạn xem dòng Disk mình gạch chân để xác định vùng đang đặt là sda hay vda

Sau khi đã xác định được Disk bạn sử dụng lệnh sau.

cat /sys/block/sda/queue/rotational

Chú thích:

  • 1 = HDD
  • 0 = SSD

Tại ảnh bên dưới mình test trên 2 loại VPS ở Việt Nam và nước ngoài.

Cách 2: Sử dụng tool ‘smartctl’

Bạn sẽ cài đặt sử dụng tool ‘smartctl’ trên Ubuntu/Debian hoặc CentOS/RHEL để trích xuất thông tin cần thiết liên quan đến SSD hay không?

Đôi khi tool này không xuất ra được thông tin mà bạn mong muốn, nên nếu không có thông tin liên quan thì bạn có thể thử cách khác.

  • Cài đặt trên Ubuntu/Debian:
sudo apt-get install smartmontools
  • Cài đặt trên CentOS/RHEL:
yum install smartmontools

Show thông tin liên quan đến ổ cứng /dev/sda:

# smartctl -a /dev/sda | grep 'Rotation Rate'
Rotation Rate: Solid State Device

Nếu bạn nhận được output trên thì chứng tỏ ổ cứng của bạn là SSD, còn không thì sẽ là HDD.

Cách 3: Dò mã model ổ cứng

Bạn sẽ trích xuất thông tin về mã ‘Model’ của ổ cứng và dò online xem thông tin liên quan về Model đó là HDD hay SSD. Tuy nhiên một số cấu hình sẽ không hiện Device Model. Và bạn hãy sử dụng 2 cách trên

smartctl -a /dev/sda

Output:

smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-642.el6.x86_64] [local build]
Copyright [C] 2002-12 by Bruce Allen, //smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Device Model: MB3000GCWLU
Serial Number: P8J7JN1R
LU WWN Device Id: 5 000cca 22cdf9c18
Firmware Version: HPG3
User Capacity: 3,000,592,982,016 bytes [3.00 TB]
Sector Size: 512 bytes logical/physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: ATA-8-ACS revision 6
Local Time is: Sat Nov 26 22:03:31 2016 ICT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Sau khi chạy lệnh trên thì tìm được Mã Model là: MB3000GCWLU. Sau khi dò online thì ra thông tin: HP 3TB 7.2K 6G MDL LFF SATA SC HDD. Như vậy là ổ HDD.

Trên đây là 3 cách thường dùng để kiểm tra ổ cứng SSD hay HDD trên Linux. Với các cách trên hy vọng sẽ giúp bạn mua được VPS chạy SSD.

Lưu ý: Đây chỉ mang tính chất tham khảo. Vì nhiều lúc và vì lý do nào đó dùng SSD hoặc NVME check nó vẫn ra số 1. Ảo thật sự

Chủ Đề