Liên hệProfile
Danh mục

Mục Lục

    Runlevel là gì? Các cấp độ và cách sử dụng runlevel chi tiết

    Nguyễn Hưng

    Ngày đăng:

    13/01/2026

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

    13/01/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:

    13/01/2026

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

    13/01/2026

    Mục lục

    Runlevel trong Linux là một khái niệm dùng để xác định trạng thái hoạt động của hệ thống ở một thời điểm nhất định. Mỗi runlevel sẽ quy định tập hợp các dịch vụ, tiến trình nào được phép chạy hoặc bị dừng trên hệ thống Linux. Trong bài viết này, mình sẽ cùng bạn tìm hiểu rõ về các cấp bậc và cách sử dụng runlevel chi tiết.

    Những điểm chính

    • Định nghĩa: Hiểu rõ runlevel là trạng thái hoạt động của hệ thống, quy định các dịch vụ nào được phép chạy.
    • Phân tích 7 chế độ cấp bậc: Nắm vững ý nghĩa và mục đích sử dụng của từng runlevel, từ tắt máy (0), chế độ bảo trì (1), đến chế độ dòng lệnh (3) và đồ họa (5).
    • Hướng dẫn kiểm tra Runlevel: Biết cách sử dụng các lệnh runlevelwho -r để nhanh chóng xác định trạng thái hoạt động hiện tại của hệ thống.
    • Cách thay đổi runlevel: Thành thạo các lệnh inittelinit để chuyển đổi giữa các runlevel một cách linh hoạt, phục vụ cho các nhu cầu quản trị khác nhau.
    • Cách cài đặt mặc định: Học cách sử dụng systemctl set-default để thiết lập runlevel khởi động mặc định, tối ưu hóa hệ thống cho môi trường máy chủ hoặc máy tính để bàn.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan trực tiếp đến runlevel trong Linux.

    Runlevel là gì?

    Runlevel là thuật ngữ kỹ thuật dùng để chỉ trạng thái vận hành được thiết lập sẵn trên các hệ điều hành dựa trên Unix và Linux. Hệ thống sử dụng một số nguyên đơn giản từ 0 đến 6 để định danh cho mỗi trạng thái này. Mỗi cấp độ sẽ quy định chính xác những dịch vụ hoặc chương trình nào được phép khởi chạy và những dịch vụ nào phải dừng lại sau khi hệ điều hành hoàn tất quá trình khởi động. Trong kiến trúc khởi động truyền thống, runlevel chính là trạng thái của tiến trình init – tiến trình cha của mọi tiến trình khác trên hệ thống.

    Runlevel là thuật ngữ kỹ thuật dùng để chỉ trạng thái vận hành được thiết lập sẵn trên các hệ điều hành dựa trên Unix và Linux
    Runlevel là thuật ngữ kỹ thuật dùng để chỉ trạng thái vận hành được thiết lập sẵn trên các hệ điều hành dựa trên Unix và Linux

    Phân tích 7 chế độ cấp bậc trong runlevel

    1. Các trạng thái vận hành cố định (Runlevels 0, 1, 6)

    RunlevelTên gọi và chức năngMục đích sử dụng chi tiết
    0System Halt (Tắt hệ thống)Đây là trạng thái dừng hoàn toàn và hệ thống chấm dứt mọi tiến trình và ngắt nguồn điện an toàn. Bạn không bao giờ thiết lập runlevel 0 làm mặc định, nếu không máy chủ sẽ tự tắt ngay sau khi khởi động.
    1Single-user mode (Chế độ đơn người dùng)Thường được ký hiệu là s hoặc S, hệ thống khởi động tối thiểu: Không mạng, không tiến trình nền, chỉ cho phép root đăng nhập. Đây là môi trường lý tưởng để bảo trì, sửa lỗi, khôi phục mật khẩu root hoặc sửa file hệ thống.
    6Reboot (Khởi động lại)Kích hoạt quy trình tái khởi động, hệ thống dừng dịch vụ, ghi dữ liệu xuống đĩa (sync) và gửi tín hiệu restart tới phần cứng.

    2. Các trạng thái khác tùy thuộc bản phân phối (Runlevels 2, 3, 4, 5)

    RunlevelMô tả và chức năngĐặc điểm kỹ thuật và ứng dụng
    2Multi-user mode (No NFS)Đây là chế độ đa người dùng nhưng không hỗ trợ NFS. Trên RHEL/CentOS, chế độ này ít khi được dùng làm mặc định.
    3Multi-user mode (CLI)Là chế độ tiêu chuẩn cho Server/VPS, hoạt động đa người dùng, có mạng, nhưng chỉ dùng giao diện dòng lệnh (CLI). Việc không tải giao diện đồ họa (GUI) giúp tiết kiệm RAMCPU, mang lại hiệu suất tối đa cho ứng dụng.
    4User-definableRunlevel 4 thường để trống cho quản trị viên tự định nghĩa, thực tế rất ít được sử dụng.
    5Multi-user mode (GUI)Tương tự runlevel 3 nhưng runlevel 5 kích hoạt được giao diện đồ họa. Đây là chế độ mặc định cho desktop.

    Hướng dẫn kiểm tra runlevel trên Linux 

    Bạn có thể kiểm tra runlevel hiện tại trên Linux bằng hai lệnh đơn giản sau:

    runlevel
    who -r 

    Hai lệnh sẽ giúp bạn dễ dàng nắm bắt trạng thái vận hành hiện tại của hệ thống và xử lý các tình huống cấu hình hoặc khắc phục sự cố liên quan đến runlevel.

    Kiểm tra runlevel
    Kiểm tra runlevel

    Cách thay đổi runlevel trên Linux

    Nếu bạn muốn hệ thống chuyển sang runlevel 3 (đa người dùng, không có giao diện đồ họa), bạn nhập lệnh:

    sudo init 3

    Lệnh này sẽ chuyển hệ thống sang chế độ vận hành phù hợp cho server hoặc môi trường sử dụng giao diện dòng lệnh. Nếu bạn muốn chuyển hệ thống từ runlevel 3 sang runlevel 5 (đa người dùng với giao diện đồ họa), bạn sử dụng lệnh:

    sudo telinit 5

    Lệnh này sẽ kích hoạt chế độ giao diện đồ họa, thường dùng cho desktop hoặc workstation.

    Cách cài đặt mặc định runlevel

    • Nếu bạn muốn chọn runlevel mặc định là 5 (đa người dùng sử dụng giao diện đồ họa), hãy nhập:
    sudo systemctl set-default graphical.target

    Lệnh này sẽ cấu hình hệ thống khởi động với mục tiêu là desktop hoặc môi trường đồ họa mỗi khi bật máy.

    • Nếu bạn muốn chuyển mặc định sang runlevel 3 (đa người dùng, chỉ giao diện dòng lệnh), hãy nhập:
    sudo systemctl set-default multi-user.target

    Lệnh này sẽ đảm bảo hệ thống khởi động ở chế độ CLI, phù hợp cho server hoặc máy chủ làm việc với dòng lệnh.

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

    Khi nào nên dùng runlevel 1?

    Runlevel 1 phù hợp cho các tác vụ bảo trì quan trọng như sửa file hệ thống, khôi phục mật khẩu root hoặc khắc phục lỗi nghiêm trọng. Ở chế độ này chỉ có root đăng nhập, không mạng và không dịch vụ nền nên hạn chế tối đa rủi ro xung đột hay truy cập trái phép.

    Vì sao không nên đặt runlevel 0 làm mặc định khi khởi động?

    Runlevel 0 là trạng thái tắt hẳn hệ thống: mọi tiến trình bị dừng, dữ liệu được ghi xuống đĩa rồi tắt nguồn. Nếu đặt runlevel 0 làm mặc định, hệ điều hành sẽ tự tắt ngay sau khi khởi động xong, khiến máy không thể sử dụng bình thường và gây gián đoạn dịch vụ.

    Lý do server/VPS thường dùng runlevel 3 thay vì 5 là gì?

    Runlevel 3 chỉ chạy chế độ đa người dùng với giao diện dòng lệnh, không tải GUI nên tiết kiệm RAM, CPU và giảm bề mặt tấn công. Với server, tài nguyên cần ưu tiên cho dịch vụ nên chạy ở runlevel 3 giúp hiệu suất và độ ổn định cao hơn runlevel 5.

    Sự khác nhau giữa lệnh init và telinit khi đổi runlevel là gì?

    Cả hai lệnh đều dùng để yêu cầu hệ thống chuyển sang runlevel khác. init là lệnh gốc gắn với tiến trình init, còn telinit là một front-end giao tiếp với init để gửi yêu cầu thay đổi. Trên nhiều hệ thống, telinit chỉ là symlink tới init nên hành vi thực tế gần như tương đương nhau.

    Hiểu rõ runlevel giúp bạn nắm được cách Linux quản lý trạng thái hoạt động của hệ thống, từ đó kiểm soát quá trình khởi động, tắt máy hay chuyển đổi chế độ vận hành một cách chủ động và an toàn. Khi biết cách kiểm tra, thay đổi và áp dụng runlevel phù hợp, bạn có thể xử lý sự cố nhanh hơn, tối ưu tài nguyên và quản trị hệ thống hiệu quả hơn. Hy vọng qua bài viết này, bạn đã có nền tảng vững chắc để làm việc với runlevel và sẵn sàng áp dụng vào thực tế quản trị Linux hằng ngày.

    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 của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Hướng dẫn sử dụng lệnh groupdel trên Linux để xoá nhóm người dùng
    Hướng dẫn sử dụng lệnh groupdel trên Linux để xoá nhóm người dùng

    Lệnh groupdel trong Linux là công cụ dòng lệnh dùng để xóa nhóm người dùng khỏi hệ thống. Việc sử dụng groupdel đúng cách giúp hệ thống gọn gàng hơn, hạn chế rủi ro phân quyền sai và tăng tính bảo mật trong quá trình quản trị. Trong bài viết này, mình sẽ cùng bạn…

    09/02/2026

    Hướng dẫn sử dụng lệnh groupadd Linux để thêm nhóm người dùng
    Hướng dẫn sử dụng lệnh groupadd Linux để thêm nhóm người dùng

    Lệnh groupadd Linux là tiện ích dòng lệnh dùng để tạo nhóm người dùng mới trên hệ thống, phục vụ cho việc phân quyền và quản lý user theo nhóm. Việc sử dụng group giúp quản trị viên kiểm soát quyền truy cập hiệu quả hơn, giảm rủi ro sai sót và đơn giản hóa…

    09/02/2026

    Hướng dẫn sử dụng lệnh usermod trên Linux để chỉnh sửa tài khoản người dùng
    Hướng dẫn sử dụng lệnh usermod trên Linux để chỉnh sửa tài khoản người dùng

    Lệnh usermod trong Linux là công cụ dùng để chỉnh sửa thông tin các tài khoản người dùng đã tồn tại, hỗ trợ quản trị viên cập nhật nhóm, UID, thư mục home, shell và trạng thái tài khoản một cách linh hoạt. Trong bài viết này, mình sẽ cùng bạn tìm hiểu chi tiết…

    09/02/2026

    Sử dụng lệnh userdel Linux để xóa tài khoản người dùng an toàn
    Sử dụng lệnh userdel Linux để xóa tài khoản người dùng an toàn

    Lệnh userdel Linux là công cụ dòng lệnh dùng để xóa tài khoản người dùng khỏi hệ thống và các nhóm liên quan. Công cụ này giúp loại bỏ user không còn sử dụng, góp phần đảm bảo tính gọn gàng và bảo mật cho hệ thống. Trong bài viết này, mình sẽ cùng bạn…

    09/02/2026

    linux

    system-linux

    text