Liên hệProfile
Danh mục

Mục Lục

    Hướng dẫn dùng lệnh free trong Linux để kiểm tra bộ nhớ hệ thống chi tiết

    Nguyễn Hưng

    Ngày đăng:

    25/04/2026

    Cập nhật lần cuối:

    25/04/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    25/04/2026

    Cập nhật lần cuối:

    25/04/2026

    Mục lục

    Thay vì chỉ nhìn vào những con số tổng quát dễ gây hiểu lầm, mình đã trực tiếp xử lý hàng loạt tình trạng nghẽn server nhờ việc phân tích chính xác từng thông số mà lệnh free cung cấp. Trong bài viết này, mình sẽ không chỉ liệt kê lý thuyết mà còn chia sẻ cách mình đọc hiểu các cột used, buff/cache và available để biết chính xác khi nào hệ thống thực sự hết RAM. Hy vọng những kinh nghiệm thực tế này sẽ giúp bạn làm chủ tài nguyên máy chủ một cách tự tin và chuyên nghiệp nhất.

    Những điểm chính

    Đối với mình, việc theo dõi và quản lý bộ nhớ trên Linux không chỉ giúp hệ thống vận hành ổn định mà còn là yếu tố quan trọng để tối ưu hiệu năng và xử lý sự cố kịp thời. Để giúp bạn hiểu rõ hơn về lệnh free trong quá trình sử dụng thực tế, bài viết dưới đây sẽ cung cấp các thông tin gồm:

    • Khái niệm: Hiểu rõ bản chất của lệnh free là tiện ích dòng lệnh dùng để thống kê và hiển thị tình trạng sử dụng bộ nhớ của hệ thống theo thời gian thực, bao gồm RAM vật lý và phân vùng swap.
    • Các tùy chọn phổ biến: Nắm vững bảng tham số đa dạng giúp bạn tùy chỉnh đơn vị đo lường và định dạng hiển thị số liệu bộ nhớ linh hoạt theo nhu cầu.
    • Hướng dẫn sử dụng chi tiết: Thành thạo kỹ năng kiểm tra bộ nhớ, từ việc xem tổng dung lượng RAM/swap đến thiết lập chế độ giám sát hệ thống liên tục.
    • Xử lý lỗi thường gặp: Biết cách nhận diện và khắc phục các vấn đề phổ biến như tình trạng swap tăng cao hay lỗi thiếu tùy chọn định dạng trên các bản Linux cũ.
    • Lưu ý khi vận hành: Nắm được các nguyên tắc cốt lõi để đánh giá chính xác sức khỏe máy chủ thông qua việc hiểu đúng ý nghĩa của các cột Free, Available và Cache.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc phổ biến liên quan đến lệnh free Linux.

    Lệnh free Linux là gì?

    Lệnh free Linux là tiện ích dòng lệnh dùng để thống kê và hiển thị tình trạng sử dụng bộ nhớ của hệ thống theo thời gian thực, bao gồm RAM vật lý và phân vùng swap. Lệnh này cho biết tổng dung lượng đang dùng, dung lượng còn trống và phần bộ nhớ được dùng làm buffer/cache, giúp quản trị viên nhanh chóng đánh giá sức khỏe bộ nhớ và phát hiện sớm các vấn đề liên quan đến thiếu RAM. 

    Lệnh free Linux dùng để thống kê và hiển thị tình trạng sử dụng bộ nhớ của hệ thống theo thời gian thực
    Lệnh free Linux dùng để thống kê và hiển thị tình trạng sử dụng bộ nhớ của hệ thống theo thời gian thực

    Lệnh free là một phần của gói procps hoặc procps-ng và luôn được cài đặt sẵn trên mọi hệ thống Linux. Cấu trúc của lệnh này như sau:

    free [TÙY_CHỌN]...

    Trong đó, [TÙY_CHỌN] là các tham số bổ sung giúp định dạng lại kết quả hiển thị.

    Các tùy chọn của lệnh free

    Dưới đây là bảng các tùy chọn của lệnh free được sử dụng phổ biến:

    Tùy chọnMô tả
    -b, –bytesXuất kết quả theo đơn vị Byte.
    -k, –kibiSử dụng đơn vị Kibibyte (KiB) để hiển thị số liệu. Đây là thiết lập mặc định của lệnh nếu bạn không chọn đơn vị khác.
    -m, –mebiChuyển đổi các thông số bộ nhớ sang đơn vị Mebibyte (MiB).
    -g, –gibiChuyển đổi các thông số bộ nhớ sang đơn vị Gibibyte (GiB).
    –tebiHiển thị dung lượng bộ nhớ với đơn vị lớn là Tebibyte (TiB).
    –pebiHiển thị dung lượng bộ nhớ với đơn vị rất lớn là Pebibyte (PiB).
    –kiloBáo cáo dung lượng theo đơn vị Kilobyte (KB) – Sử dụng hệ số 1000.
    –megaBáo cáo dung lượng theo đơn vị Megabyte (MB) – Sử dụng hệ số 1000.
    –gigaBáo cáo dung lượng theo đơn vị Gigabyte (GB) – Sử dụng hệ số 1000.
    –teraBáo cáo dung lượng theo đơn vị Terabyte (TB) – Sử dụng hệ số 1000.
    –petaBáo cáo dung lượng theo đơn vị Petabyte (PB) – Sử dụng hệ số 1000.
    -h, –humanTự động tính toán và hiển thị đơn vị phù hợp nhất giúp người dùng dễ dàng đọc và so sánh số liệu.
    -w, –wideKích hoạt chế độ hiển thị rộng, giúp các dòng thông tin không bị ngắt quãng nếu vượt quá 80 ký tự.
    -c, –count “X”Giới hạn số lần lặp lại việc hiển thị kết quả là “X” lần. Tùy chọn này bắt buộc phải đi kèm với tham số thời gian -s.
    -s, –seconds “X”Thiết lập chế độ tự động cập nhật số liệu sau mỗi “X” giây.
    –siBuộc hệ thống tính toán theo chuẩn SI (lũy thừa của 1000) thay vì chuẩn IEC (lũy thừa của 1024) cho các đơn vị đo lường.
    -t, –totalBổ sung thêm một dòng tổng kết ở cuối bảng, cộng gộp toàn bộ dung lượng RAM và swap.
    -V, –versionIn ra thông tin về phiên bản phần mềm free đang được cài đặt.
    –helpHiển thị bảng hướng dẫn nhanh và danh sách các tùy chọn hỗ trợ của lệnh.

    1. Xem thông tin bộ nhớ cơ bản

    Bạn sử dụng lệnh sau để xem thông tin bộ nhớ chính xác theo đơn vị mặc định là byte:

    free
    thông tin bộ nhớ chính xác theo đơn vị mặc định là byte
    Thông tin bộ nhớ chính xác theo đơn vị mặc định là byte

    Đây là đầu ra mặc định của lệnh. Bảng kết quả bao gồm các cột total, used, free, shared, buffers/cache và available với đơn vị tính là byte nên con số thường khá lớn và khó đọc nhanh.

    2. Hiển thị thông tin bộ nhớ ở định dạng dễ đọc

    Bạn có thể chuyển đổi đơn vị hiển thị thành Kilobyte, Megabyte, Gigabyte để dễ đọc và phân tích hơn. Cú pháp lệnh như sau:

    free -h
    Hiển thị thông tin bộ nhớ ở định dạng dễ đọc
    Hiển thị thông tin bộ nhớ ở định dạng dễ đọc

    3. Xem tổng RAM và swap

    Bạn có thể thêm một dòng tổng cộng ở cuối bảng để dễ dàng so sánh tổng lượng RAM và swap đã sử dụng hoặc còn trống với cú pháp như sau:

    free -t
    Xem tổng cộng RAM và Swap
    Xem tổng cộng RAM và swap

    Lúc này, tùy chọn -t sẽ giúp hiển thị dòng tổng hợp dung lượng của cả bộ nhớ vật lý và bộ nhớ ảo.

    4. Xác định cột bộ nhớ khả dụng

    Bạn có thể xác định chính xác lượng bộ nhớ mà các ứng dụng mới có thể sử dụng mà không cần dùng đến swap bằng cách quan sát cột available trong kết quả của lệnh free -h.

    Giải thích sự khác biệt quan trọng:

    • Cột free (còn trống): Chỉ lượng bộ nhớ hoàn toàn không được kernel sử dụng.
    • Cột available (khả dụng): Là tổng của free cộng với phần bộ nhớ đang được sử dụng làm cache/buffer mà kernel có thể giải phóng nhanh chóng nếu cần. Đây là chỉ số quan trọng nhất để đánh giá liệu hệ thống có thiếu RAM cho các tiến trình mới hay không.

    5. Giám sát bộ nhớ liên tục

    Để theo dõi sự thay đổi của bộ nhớ theo thời gian thực, đặc biệt là khi đang chạy thử nghiệm tải, bạn hãy thực thi lệnh sau:

    free -s <giây>

    Ví dụ, để cập nhật thông tin bộ nhớ mỗi 5 giây, bạn thực hiện lệnh sau:

    free -h -s 5
    Giám sát bộ nhớ liên tục
    Giám sát bộ nhớ liên tục

    Tùy chọn -s (seconds) cho phép chỉ định khoảng thời gian cập nhật. Để dừng quá trình này, bạn nhấn tổ hợp phím Ctrl + C.

    Cách xử lý lỗi phổ biến khi sử dụng lệnh free Linux

    Việc hiểu đúng và xử lý kịp thời các cảnh báo từ lệnh free là yếu tố cốt lõi giúp hệ thống luôn vận hành ổn định. Dưới đây là các lỗi phổ biến khi dùng lệnh free và phương pháp xử lý:

    1. Cột used cao nhưng hệ thống vẫn hoạt động tốt

    Linux có cơ chế sử dụng RAM còn trống để làm bộ nhớ đệm cho các file nhằm tăng tốc độ hệ thống và lượng bộ nhớ này được tính vào cột used. Vì đây không phải là lỗi nên bạn hãy kiểm tra cột available, nếu available vẫn cao, ví dụ như trên 10% tổng RAM thì hệ thống vẫn đang hoạt động ổn định.

    2. Cột swap used tăng cao

    Nguyên nhân chính dẫn đến cột swap used tăng cao có thể là do hệ thống không còn đủ RAM vật lý để phục vụ các tiến trình hiện tại, buộc phải đẩy dữ liệu sang ổ cứng. Bạn có thể khắc phục sự cố này như sau:

    • Bạn tìm và dừng các tiến trình tiêu tốn nhiều bộ nhớ bằng lệnh dưới đây:
    top -M.
    • Ngoài ra, bạn có thể cân nhắc tăng dung lượng RAM vật lý cho máy chủ nếu là VPS/Server.
    Cột Swap used tăng cao là lỗi thường gặp khi sử dụng lệnh free Linux
    Cột swap used tăng cao là lỗi thường gặp khi sử dụng lệnh free Linux (Nguồn: Internet)

    3. Lệnh free không có tùy chọn -h

    Nguyên nhân khiến lệnh free không có tùy chọn -h có thể do bạn đang sử dụng một bản phân phối Linux quá cũ. Để xử lý, bạn có thể dùng -m (Megabyte) để thay thế với cú pháp lệnh sau:

    free -m

    Quan điểm của mình: Việc ưu tiên dùng free -m hoặc free -g là một thói quen tốt, vì các lệnh này thường yêu cầu bạn đọc số liệu ở mức đơn vị rõ ràng (MB/GB) và có cảm nhận định lượng chính xác hơn về tài nguyên đang sử dụng. Thay vì phụ thuộc vào sự tiện lợi của tùy chọn -h, hãy coi đó là cơ hội để bạn nắm chắc cách thể hiện dung lượng (KB, MB, GB, GiB) và hiểu sâu hơn về cách hệ thống báo cáo dữ liệu bộ nhớ.

    Lưu ý khi sử dụng lệnh free

    Dưới đây là các lưu ý quan trọng khi sử dụng lệnh free mà bạn cần nắm rõ:

    • Hiểu đúng về cột free: Linux có cơ chế thông minh là tận dụng nguồn RAM nhàn rỗi để làm bộ nhớ đệm Buff/Cache nhằm tăng tốc độ truy xuất, do đó cột free thấp không đồng nghĩa với việc máy chủ đang quá tải.
    • Ưu tiên cột available: Cột này phản ánh chính xác lượng bộ nhớ thực tế mà hệ thống có thể cấp phát ngay lập tức cho các ứng dụng mới, bao gồm cả phần free và phần có thể thu hồi từ cache.
    • Sử dụng tùy chọn dễ đọc (-h): Mặc định lệnh free hiển thị đơn vị là Kilobytes nên rất khó để nhẩm tính, do đó bạn hãy luôn sử dụng cờ -h để hệ thống tự động chuyển đổi sang MB hoặc GB giúp kết quả hiển thị trực quan hơn.
    • Cảnh báo từ swap: Bạn hãy chú ý nếu dung lượng swap used tăng cao trong khi Available giảm mạnh vì đây là dấu hiệu đỏ cho thấy RAM vật lý đã cạn kiệt, buộc hệ thống phải dùng ổ cứng làm bộ nhớ tạm, gây sụt giảm hiệu suất nghiêm trọng.
    Những lưu ý quan trọng khi sử dụng lệnh free
    Những lưu ý quan trọng khi sử dụng lệnh free

    Câu hỏi thường gặp

    Sự khác nhau giữa cột free và available là gì?

    Cột free chỉ hiển thị lượng RAM hoàn toàn chưa được sử dụng. Trong khi đó, cột available bao gồm cả RAM đang ở trạng thái free và một phần RAM đang được dùng làm cache/buffer. Khi kiểm tra xem máy chủ có đủ RAM để chạy ứng dụng mới hay không, bạn nên nhìn vào cột available.

    Tại sao cột buff/cache lại chiếm nhiều dung lượng?

    Linux được thiết kế để tận dụng tối đa RAM trống nhằm lưu trữ dữ liệu đệm đĩa cứng, giúp hệ thống chạy nhanh hơn. Khi các ứng dụng cần thêm RAM, hệ thống sẽ tự động giải phóng vùng buff/cache này để cấp phát cho ứng dụng. Do đó, việc buff/cache cao thường là dấu hiệu tốt, không phải lỗi.

    Tôi có thể xóa bộ nhớ Cache thủ công để giải phóng RAM không?

    Có, bạn có thể xóa cache thủ công để giải phóng RAM tạm thời, nhưng thường không nên lạm dụng vì Linux sẽ tự quản lý cache rất tốt và sẽ tự giải phóng khi ứng dụng cần thêm RAM.

    Lệnh free Linux là công cụ kiểm tra bộ nhớ hữu ích, cung cấp nhanh mức sử dụng RAM và swap. Việc nắm vững cách đọc hiểu các chỉ số và kết hợp với tùy chọn định dạng dễ đọc sẽ giúp bạn giám sát, đánh giá hiệu suất bộ nhớ của máy chủ một cách chính xác. Chúc bạn thao tác với lệnh free thành công và hẹn gặp lại trong các bài viết tiếp theo!

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder và Phó giám đốc của Vietnix, Co-Founder của dự án Chống Lừa Đảo.
    0 0 votes
    Đánh giá bài viết
    Subscribe
    Notify of
    guest
    0 Góp ý
    Oldest
    Newest Most Voted
    Inline Feedbacks
    View all comments

    BÀI VIẾT LIÊN QUAN

    AI dạy hiệu suất, ai dạy làm người
    AI dạy hiệu suất, ai dạy làm người

    Ngày 09/10/2026, tôi vinh dự tham gia và chia sẻ tại tọa đàm “AI dạy hiệu suất, ai dạy làm người?” do Báo Tiền Phong phối hợp cùng Trường Đại học Giao thông vận tải TP.HCM (UTH) tổ chức. Sự kiện đã quy tụ nhiều chuyên gia công nghệ, nhà giáo dục, chuyên gia tâm…

    17/10/2026

    KOL Summit 2026

    Ngày 07/09/2026, tôi có cơ hội tham dự Hội nghị KOL toàn quốc lần thứ II – KOL Summit 2026 tại Thisky Hall Sala, TP.HCM với chủ đề “KOL với hành trình kiến tạo niềm tin số”. Sự kiện do Liên minh Niềm tin số dẫn dắt, dưới sự bảo trợ của Bộ Công an,…

    15/09/2026

    Conviction 2026: Ký kết hợp tác giữa Chống Lừa Đảo x Ninety Eight

    Ngày 14/08/2026, trong khuôn khổ Ngày hội Công nghệ TP.HCM – Conviction 2026, tôi rất vinh dự được cùng đội ngũ Chống Lừa Đảo tham gia lễ ký kết Biên bản ghi nhớ hợp tác (MOU) với Ninety Eight – hệ sinh thái công nghệ blockchain tại Việt Nam. Đây là một cột mốc ý…

    14/08/2026

    Tham gia Hội nghị KOL & Lễ ra mắt Câu lạc bộ Niềm Tin Số TP.HCM: Chung tay xây dựng không gian mạng xanh, sạch và có trách nhiệm

    Ngày 10/08/2026, tôi vinh dự tham dự Hội nghị KOL & Lễ ra mắt Câu lạc bộ Niềm Tin Số TP.HCM do Công an TP.HCM phối hợp cùng các đơn vị liên quan tổ chức. Chương trình quy tụ đại diện Cục An ninh mạng và Phòng, chống tội phạm sử dụng công nghệ cao…

    11/08/2026

    linux

    lenh

    text