CodeGym /Các khóa học /Docker SELF /Định dạng phân vùng: `mkfs`

Định dạng phân vùng: `mkfs`

Docker SELF
Mức độ , Bài học
Có sẵn

1. Chuyện gì xảy ra khi định dạng?

Khi mình định dạng một phân vùng, thì nói chung là tạo ra một "trang giấy trắng" để lưu trữ dữ liệu. Định dạng xóa sạch mọi dữ liệu trong phân vùng và tạo một hệ thống tệp mới, cái mà quyết định cách dữ liệu sẽ được tổ chức và truy cập.

Hãy tưởng tượng một thư viện. Định dạng giống như thời điểm bạn dẹp hết sách cũ, xếp lại các kệ sách mới và dán nhãn từng kệ với thể loại cụ thể. Giờ thì mọi thứ được tổ chức — bạn biết chỗ nào để đặt mỗi cuốn sách mới.

Tại sao cần định dạng thiết bị?

  1. Chuẩn bị thiết bị mới (đĩa hoặc phân vùng): Không có thiết bị nào sử dụng được mà không định dạng trước. Nó giống như các trang trống trong một quyển sổ tay — chẳng có giá trị gì cho đến khi bạn quyết định chúng dùng để làm gì.
  2. Chuyển đổi hệ thống tệp: Ví dụ, nếu cần chuyển từ FAT32 sang ext4, bạn sẽ phải định dạng.
  3. Xóa sạch dữ liệu cũ: Khi bạn muốn xóa hoàn toàn một thiết bị và bắt đầu lại từ đầu, định dạng là lựa chọn tốt nhất.

Quan trọng: Sau khi định dạng, tất cả dữ liệu trong phân vùng sẽ bị xóa. Vì vậy, hãy đảm bảo kiểm tra rằng thiết bị không có thông tin quan trọng trước khi thực hiện.


2. Công cụ mkfs: cú pháp và cách sử dụng

Chương trình mkfs là công cụ chính của bạn để định dạng các phân vùng. Nó hỗ trợ rất nhiều loại hệ thống tệp, nên có thể dùng trong hầu như mọi tình huống.

Cú pháp chung của lệnh

mkfs.<loại_hệ_thống_tệp> <thiết_bị>

Ví dụ, để định dạng phân vùng /dev/sdb1 thành hệ thống tệp ext4:

mkfs.ext4 /dev/sdb1

Các hệ thống tệp được hỗ trợ

mkfs hoạt động với hầu hết các loại hệ thống tệp phổ biến. Dưới đây là một số ví dụ:

Hệ thống tệp Lệnh Ứng dụng
ext4 mkfs.ext4 Hệ thống tệp chính của Linux, hỗ trợ tệp và đĩa lớn.
xfs mkfs.xfs Hiệu suất cao, phù hợp với các tệp lớn và tải máy chủ.
vfat (FAT32) mkfs.vfat Phù hợp để trao đổi dữ liệu giữa Linux, Windows và MacOS.
ntfs mkfs.ntfs Dành cho tương thích với Windows (dù chỉnh sửa từ Linux có thể gặp khó khăn).

Để xem danh sách đầy đủ các hệ thống tệp được hỗ trợ, dùng lệnh:

mkfs -t help

3. Ví dụ: định dạng phân vùng sang ext4

Hãy cùng tìm hiểu từng bước quy trình định dạng một phân vùng.

1. Kiểm tra thiết bị

Trước tiên, tìm tên của thiết bị mà bạn muốn định dạng. Sử dụng lệnh lsblk:

lsblk

Kết quả sẽ hiển thị danh sách tất cả các thiết bị được kết nối và các phân vùng của chúng. Ví dụ:

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  100G  0 disk 
├─sda1   8:1    0   50G  0 part /
├─sda2   8:2    0   45G  0 part /home
└─sda3   8:3    0    5G  0 part [SWAP]
sdb      8:16   0  200G  0 disk 
└─sdb1   8:17   0  200G  0 part 

Giả sử, chúng ta muốn định dạng phân vùng /dev/sdb1.

2. Đảm bảo phân vùng chưa được gắn kết

Trước khi định dạng, thiết bị cần phải được ngắt gắn kết. Để kiểm tra điều này, sử dụng:

sudo umount /dev/sdb1

3. Bắt đầu định dạng

Bây giờ chúng ta sẽ tạo hệ thống tệp ext4 trên phân vùng được chọn:

sudo mkfs.ext4 /dev/sdb1

Lệnh này sẽ hiển thị một thứ gì đó như sau:

mke2fs 1.45.7 (28-Jan-2021)
Creating filesystem with 52428800 4k blocks and 13107200 inodes
Filesystem UUID: 5634f623-7b2d-4d6b-b8f5-abcdef123456
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, ...
Lưu ý:

UUID — là định danh duy nhất của hệ thống tệp. Chúng tôi khuyên bạn nên sử dụng nó để chỉ định điểm gắn kết trong /etc/fstab.

4. Kiểm tra kết quả

Hãy kiểm tra xem hệ thống tệp đã được tạo hay chưa:

sudo blkid /dev/sdb1

Kết quả sẽ hiển thị rằng hệ thống tệp ext4 đã được thiết lập trên thiết bị:

/dev/sdb1: UUID="5634f623-7b2d-4d6b-b8f5-abcdef123456" TYPE="ext4"

4. Chọn hệ thống file

Nên chọn hệ thống file nào? Tất cả tùy thuộc vào yêu cầu của bạn. Dưới đây là một số gợi ý:

  1. ext4: Lựa chọn phổ biến cho Linux. Phù hợp với đa số tình huống.
  2. XFS: Nếu bạn cần hiệu suất cao trên các file lớn hoặc máy chủ.
  3. FAT32 (vfat): Khi bạn cần sử dụng thiết bị chung với Windows và MacOS. Lưu ý rằng kích thước tối đa của file bị giới hạn ở mức 4 GB.
  4. NTFS: Để tương thích với Windows, nhưng hiệu suất có thể thấp hơn so với ext4 trên Linux.
Mẹo dành cho sinh viên:

Nếu còn lăn tăn, cứ dùng ext4. Nó hiếm khi làm bạn thất vọng.


5. Các lỗi phổ biến khi định dạng

Định dạng là một nhiệm vụ đòi hỏi sự cẩn thận đặc biệt. Dưới đây là một số lỗi có thể xảy ra và cách để tránh chúng:

  • Định dạng nhầm thiết bị: Để tránh điều này, luôn kiểm tra thiết bị mà bạn dự định làm việc (lsblkblkid sẽ hỗ trợ bạn).

  • Thiết bị vẫn được gắn: Nếu thiết bị đang được gắn, lệnh mkfs sẽ báo lỗi. Hãy đảm bảo thiết bị đã được tháo gỡ.

  • Xóa dữ liệu ngẫu nhiên: Đừng bao giờ chạy mkfs trên một phân vùng mà không hiểu rằng tất cả dữ liệu sẽ bị xóa. Nếu bạn không chắc chắn, tốt nhất nên tạo bản sao lưu trước khi định dạng.

Ứng dụng thực tế

Hiểu biết về định dạng không chỉ quan trọng đối với quản trị viên hệ thống mà còn đối với các nhà phát triển. Ví dụ, nếu bạn làm việc với các nền tảng đám mây như AWS hoặc Azure, bạn sẽ thường xuyên tạo và định dạng các phân vùng cho ứng dụng của mình. Ngoài ra, nếu bạn muốn cấu hình ổ cứng ngoài hoặc USB để lưu trữ dữ liệu, bạn cũng sẽ cần đến những kỹ năng này.

Đừng quên rằng một hệ thống tệp đúng cách là nền tảng của sự ổn định cho ứng dụng của bạn. Rốt cuộc, ai muốn nhận lỗi "hệ thống tệp không tìm thấy" chỉ 5 phút trước deadline chứ?

Bây giờ, khi bạn đã biết cách định dạng thiết bị và chọn hệ thống tệp, bạn đã sẵn sàng chuyển sang bước tiếp theo: kiểm tra và sửa chữa hệ thống tệp bằng lệnh fsck.

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION