CentOS là một trong những hệ điều hành Linux được ưa chuộng nhất trong môi trường doanh nghiệp, đặc biệt là cho các máy chủ web và hệ thống máy chủ. Với sự ổn định và tính bảo mật cao, CentOS trở thành nền tảng đáng tin cậy. Tuy nhiên, đối với người dùng mới, việc làm quen với giao diện dòng lệnh (command line) có thể là một thử thách. Bạn có cảm thấy bỡ ngỡ khi phải quản lý file, người dùng hay dịch vụ chỉ bằng những câu lệnh khô khan? Bài viết này sẽ là kim chỉ nam cho bạn. AZWEB đã tổng hợp chi tiết các lệnh CentOS từ cơ bản đến nâng cao, giúp bạn tự tin quản trị hệ thống một cách hiệu quả và chuyên nghiệp.
Giới thiệu về hệ điều hành CentOS và vai trò trong quản trị hệ thống
Bạn đã bao giờ tự hỏi tại sao CentOS lại phổ biến trong việc quản trị server đến vậy? CentOS (Community ENTerprise Operating System) là một bản phân phối Linux miễn phí, được phát triển dựa trên mã nguồn của Red Hat Enterprise Linux (RHEL). Điều này có nghĩa là bạn được trải nghiệm sự ổn định và bảo mật cấp doanh nghiệp mà không tốn chi phí bản quyền.
Trong quản trị hệ thống, CentOS đóng vai trò là “bộ não” điều khiển mọi hoạt động của máy chủ. Từ việc lưu trữ website, quản lý cơ sở dữ liệu, đến vận hành các ứng dụng phức tạp, tất cả đều cần một nền tảng vững chắc. Tuy nhiên, sức mạnh thực sự của CentOS nằm ở khả năng điều khiển thông qua giao diện dòng lệnh (CLI). Đối với người mới bắt đầu, đây có thể là một rào cản lớn. Các dòng lệnh trông có vẻ phức tạp và khó nhớ.
Đừng lo lắng! Bài viết này sẽ hệ thống hóa mọi thứ cho bạn. Chúng ta sẽ cùng nhau khám phá từ các lệnh cơ bản nhất để quản lý file và thư mục, đến những lệnh nâng cao để giám sát hệ thống và tự động hóa công việc. Hãy xem đây là tấm bản đồ chi tiết giúp bạn chinh phục thế giới dòng lệnh CentOS một cách dễ dàng.

Các lệnh cơ bản thường dùng trên CentOS
Để bắt đầu hành trình quản trị hệ thống CentOS, việc nắm vững các lệnh cơ bản là bước đi đầu tiên và quan trọng nhất. Đây là những công cụ bạn sẽ sử dụng hàng ngày để tương tác với hệ điều hành, quản lý tập tin và kiểm soát quyền truy cập của người dùng. Hãy cùng AZWEB tìm hiểu chi tiết về các nhóm lệnh nền tảng này nhé.
Lệnh quản lý file và thư mục
Quản lý file và thư mục là tác vụ cốt lõi khi làm việc trên bất kỳ hệ điều hành nào. Trên CentOS, bạn có thể thực hiện mọi thao tác chỉ bằng vài câu lệnh đơn giản.
ls: Liệt kê các file và thư mục trong thư mục hiện tại. Thêm tùy chọnls -lđể xem chi tiết (quyền, chủ sở hữu, kích thước) hoặcls -ađể hiển thị cả các file ẩn.cd: Thay đổi thư mục làm việc. Ví dụ,cd /var/logsẽ đưa bạn đến thư mục log của hệ thống.pwd: Hiển thị đường dẫn đầy đủ của thư mục hiện tại.mkdir: Tạo một thư mục mới. Ví dụ:mkdir du-an-moi.touch: Tạo một file trống. Ví dụ:touch ten_file.txt.cp: Sao chép file hoặc thư mục. Dùngcp file_cu file_moiđể sao chép file, vàcp -r thu_muc_cu thu_muc_moiđể sao chép cả thư mục.mv: Di chuyển hoặc đổi tên file/thư mục. Để đổi tên, dùngmv ten_cu ten_moi. Để di chuyển, dùngmv ten_file /duong/dan/moi.rm: Xóa file. Hãy cẩn thận với lệnh này! Dùngrm ten_fileđể xóa file vàrm -r ten_thuc_mucđể xóa thư mục.
Việc thành thạo các lệnh này sẽ giúp bạn điều hướng và tổ chức cấu trúc dữ liệu trên máy chủ một cách nhanh chóng. Nếu bạn muốn hiểu thêm về cách quản lý file, thư mục trên các hệ điều hành, tham khảo thêm File Explorer là gì để thấy sự khác biệt giữa các hệ.
![]()
Lệnh quản lý người dùng và quyền
Trong một hệ thống máy chủ, việc quản lý người dùng và phân quyền truy cập là cực kỳ quan trọng để đảm bảo an ninh. CentOS cung cấp một bộ lệnh mạnh mẽ để bạn kiểm soát chặt chẽ vấn đề này.
useradd: Tạo một người dùng mới. Ví dụ:sudo useradd ten_nguoi_dung.passwd: Đặt hoặc thay đổi mật khẩu cho người dùng. Ví dụ:sudo passwd ten_nguoi_dung. Hệ thống sẽ yêu cầu bạn nhập mật khẩu mới.userdel: Xóa một người dùng khỏi hệ thống. Thêm tùy chọn-r(sudo userdel -r ten_nguoi_dung) để xóa cả thư mục nhà của họ.groupadd: Tạo một nhóm người dùng mới, giúp quản lý quyền cho nhiều người dùng cùng lúc.chmod: Thay đổi quyền truy cập của file hoặc thư mục. Bạn có thể dùng chế độ số (ví dụ:chmod 755 ten_file) hoặc ký hiệu (ví dụ:chmod u+x ten_fileđể cấp quyền thực thi cho chủ sở hữu).chown: Thay đổi chủ sở hữu của file hoặc thư mục. Ví dụ:sudo chown ten_nguoi_dung:ten_nhom ten_file.
Nắm vững các lệnh này giúp bạn xây dựng một môi trường làm việc an toàn, nơi mỗi người dùng chỉ có quyền truy cập vào những tài nguyên cần thiết cho công việc của họ.
![]()
Lệnh nâng cao và các thủ thuật trong quản lý hệ thống CentOS
Khi đã quen với các lệnh cơ bản, đã đến lúc bạn nâng cao kỹ năng của mình với các công cụ mạnh mẽ hơn. Các lệnh nâng cao giúp bạn giám sát “sức khỏe” của hệ thống, quản lý các dịch vụ đang chạy và tự động hóa các tác vụ lặp đi lặp lại. Đây là chìa khóa để trở thành một quản trị viên hệ thống chuyên nghiệp.
Lệnh giám sát và quản lý tiến trình
Bạn có bao giờ thắc mắc máy chủ của mình đang chạy những gì và tài nguyên đang được sử dụng ra sao không? Các lệnh sau sẽ cho bạn câu trả lời.
top: Đây là trình quản lý tác vụ thời gian thực của bạn. Gõtopvà bạn sẽ thấy một bảng cập nhật liên tục về CPU, bộ nhớ và danh sách các tiến trình đang tiêu tốn nhiều tài nguyên nhất.ps: Lệnh này cho phép bạn chụp lại “ảnh” của các tiến trình tại một thời điểm. Sử dụngps auxđể xem tất cả các tiến trình đang chạy trên hệ thống, kèm theo thông tin chi tiết về người dùng sở hữu và lượng tài nguyên sử dụng.kill: Khi một chương trình bị treo,killlà công cụ để bạn chấm dứt nó. Bạn cần tìm ID tiến trình (PID) bằngpshoặctop, sau đó dùngkill PID. Nếu tiến trình quá “cứng đầu”, hãy dùngkill -9 PIDđể buộc nó dừng lại.nicevàrenice: Các lệnh này cho phép bạn điều chỉnh độ ưu tiên của một tiến trình. Giá trị “nice” càng cao, độ ưu tiên càng thấp, giúp các tác vụ quan trọng khác có nhiều tài nguyên CPU hơn.
Việc theo dõi và quản lý tiến trình giúp bạn nhanh chóng phát hiện các vấn đề về hiệu suất và đảm bảo hệ thống luôn hoạt động mượt mà.

Lệnh quản lý dịch vụ và cập nhật hệ thống
Máy chủ của bạn hoạt động dựa trên các dịch vụ như máy chủ web (Apache, Nginx), cơ sở dữ liệu (MySQL)… Việc quản lý chúng và giữ cho hệ thống luôn được cập nhật là vô cùng cần thiết.
systemctl: Đây là công cụ quản lý dịch vụ trung tâm trên các phiên bản CentOS mới. Bạn có thể dùng nó để:- Khởi động dịch vụ:
sudo systemctl start ten_dich_vu - Dừng dịch vụ:
sudo systemctl stop ten_dich_vu - Khởi động lại:
sudo systemctl restart ten_dich_vu - Kiểm tra trạng thái:
sudo systemctl status ten_dich_vu - Cho phép dịch vụ tự khởi động cùng hệ thống:
sudo systemctl enable ten_dich_vu
- Khởi động dịch vụ:
yum(trên CentOS 7 trở về trước) vàdnf(trên CentOS 8 trở đi): Đây là các trình quản lý gói, giúp bạn cài đặt, cập nhật và gỡ bỏ phần mềm một cách dễ dàng.- Cài đặt phần mềm:
sudo yum install ten_goi - Cập nhật tất cả các gói:
sudo yum update - Gỡ bỏ phần mềm:
sudo yum remove ten_goi
- Cài đặt phần mềm:
Sử dụng thành thạo các lệnh này đảm bảo rằng các ứng dụng của bạn luôn chạy ổn định và hệ thống được bảo vệ khỏi các lỗ hổng bảo mật mới nhất. Để hiểu thêm về hệ quản trị cơ sở dữ liệu liên quan đến quản trị máy chủ và các dịch vụ, bạn có thể tham khảo thêm tài liệu liên quan.
Hướng dẫn cách sử dụng lệnh với ví dụ minh họa cụ thể
Lý thuyết sẽ trở nên dễ hiểu hơn rất nhiều khi được áp dụng vào các tình huống thực tế. Trong phần này, chúng ta sẽ đi qua các kịch bản công việc phổ biến và xem cách kết hợp các lệnh đã học để giải quyết chúng một cách hiệu quả.
Ví dụ thực tế về thao tác file và thư mục
Hãy tưởng tượng bạn đang bắt đầu một dự án website mới. Bạn cần tạo cấu trúc thư mục, sao chép các file cấu hình ban đầu và chuẩn bị môi trường làm việc.
Kịch bản: Tạo một thư mục dự án tên là du-an-web, bên trong tạo thêm hai thư mục con là hinh-anh và css. Sau đó, sao chép một file cấu hình quan trọng từ thư mục nhà của bạn vào dự án và đổi tên nó.
Hãy thực hiện các bước sau:
- Tạo thư mục chính:
mkdir du-an-web - Di chuyển vào thư mục vừa tạo:
cd du-an-web - Tạo các thư mục con:
mkdir hinh-anh css - Sao chép file cấu hình (giả sử file có tên là
config_template.txttrong thư mục nhà~):cp ~/config_template.txt .(Dấu
.đại diện cho thư mục hiện tại) - Đổi tên file cấu hình cho phù hợp với dự án:
mv config_template.txt config.php - Kiểm tra lại cấu trúc:
ls -l
Chỉ với vài lệnh đơn giản, bạn đã nhanh chóng thiết lập xong không gian làm việc cho dự án mới của mình. Nếu bạn muốn hiểu kỹ hơn về các Linux command line để ứng dụng linh hoạt hơn khi thao tác với file và thư mục, đừng bỏ qua tài liệu này.

Ví dụ quản lý người dùng và phân quyền
Bây giờ, hãy xem xét một kịch bản khác. Công ty bạn có một lập trình viên mới tên là “an” và bạn cần cấp cho anh ấy quyền truy cập vào thư mục dự án du-an-web vừa tạo. Tuy nhiên, bạn chỉ muốn anh ấy có thể đọc và sửa file, chứ không được phép thay đổi cấu trúc thư mục của người khác.
Kịch bản: Tạo người dùng “an”, đặt mật khẩu, sau đó thêm anh ta vào một nhóm chung tên là “developers” và cấp quyền phù hợp cho nhóm này trên thư mục dự án.
Các bước thực hiện:
- Tạo nhóm mới (nếu chưa có):
sudo groupadd developers - Tạo người dùng “an” và thêm vào nhóm “developers”:
sudo useradd -m -g developers an(Tùy chọn
-mtạo thư mục nhà,-gchỉ định nhóm chính) - Đặt mật khẩu cho “an”:
sudo passwd an - Thay đổi chủ sở hữu nhóm của thư mục dự án thành “developers”:
sudo chown -R ten_ban:developers /duong/dan/toi/du-an-web(Thay
ten_banbằng username của bạn.-Ráp dụng cho tất cả file và thư mục con) - Thiết lập quyền cho thư mục:
sudo chmod -R 775 /duong/dan/toi/du-an-webQuyền
775có nghĩa là:- Chủ sở hữu (bạn): có toàn quyền (đọc, ghi, thực thi).
- Nhóm “developers”: có toàn quyền (đọc, ghi, thực thi).
- Những người khác: chỉ có quyền đọc và thực thi.
Với cách thiết lập này, “an” và các lập trình viên khác trong nhóm có thể cộng tác hiệu quả trong khi vẫn đảm bảo tính toàn vẹn của dự án.
![]()
Cách tối ưu hiệu quả làm việc với các lệnh trên CentOS
Làm việc hiệu quả không chỉ là biết lệnh, mà còn là biết cách sử dụng chúng một cách thông minh. CentOS cung cấp nhiều công cụ giúp bạn tự động hóa các tác vụ nhàm chán, kết hợp các lệnh để tạo ra luồng công việc mạnh mẽ và tiết kiệm thời gian đáng kể.
Một trong những cách đơn giản nhất để tăng tốc là sử dụng alias. Bạn có thường xuyên gõ một câu lệnh dài và phức tạp không? alias cho phép bạn tạo một tên gọi tắt cho nó. Ví dụ, thay vì gõ ls -alFh mỗi lần, bạn chỉ cần tạo một alias:
alias ll='ls -alFh'
Bây giờ, mỗi khi bạn gõ ll, hệ thống sẽ tự động thực thi lệnh dài kia. Để alias có hiệu lực mỗi khi bạn đăng nhập, hãy thêm dòng lệnh trên vào cuối file ~/.bashrc.
Khi các tác vụ trở nên phức tạp hơn, shell script sẽ là người bạn đồng hành đắc lực. Một shell script về cơ bản là một file văn bản chứa một chuỗi các lệnh. Thay vì gõ lại chúng mỗi lần, bạn chỉ cần chạy file script. Ví dụ, bạn có thể tạo một script để tự động sao lưu website và cơ sở dữ liệu mỗi đêm.
Bên cạnh đó, hai toán tử cực kỳ mạnh mẽ mà bạn nên làm chủ là pipe (|) và redirect (>).
Pipe (|) cho phép bạn lấy đầu ra của một lệnh và dùng nó làm đầu vào cho một lệnh khác. Ví dụ, để tìm một tiến trình cụ thể đang chạy, bạn có thể dùng:
ps aux | grep nginx
Lệnh này sẽ lấy danh sách tất cả tiến trình từ ps aux và “lọc” ra những dòng có chứa từ “nginx”.
Redirect (> và >>) giúp bạn chuyển hướng đầu ra của một lệnh vào một file. Dấu > sẽ ghi đè lên file, trong khi >> sẽ nối thêm vào cuối file. Ví dụ, để lưu danh sách các file trong thư mục hiện tại vào một file văn bản:
ls -l > danh_sach_file.txt
Việc kết hợp các kỹ thuật này sẽ biến bạn từ một người dùng thông thường thành một quản trị viên hệ thống có khả năng tự động hóa và tối ưu hóa công việc một cách chuyên nghiệp. Nếu bạn muốn học thêm về các Linux command line chi tiết, đừng bỏ qua tài liệu chuyên sâu này.
Tổng hợp tài liệu tham khảo nhanh cho người dùng CentOS
Học hỏi là một quá trình liên tục, đặc biệt là trong lĩnh vực công nghệ thông tin. Dù bài viết này đã cung cấp một nền tảng vững chắc, việc tìm kiếm thêm kiến thức từ cộng đồng và các nguồn tài liệu chính thống sẽ giúp bạn giải quyết các vấn đề phức tạp hơn. Dưới đây là danh sách các nguồn tài nguyên uy tín mà AZWEB gợi ý cho bạn.
- Tài liệu chính thức: Nơi tốt nhất để bắt đầu luôn là trang tài liệu của dự án. CentOS Wiki và tài liệu từ Red Hat (vì CentOS dựa trên RHEL) chứa thông tin chính xác và chi tiết nhất về mọi khía cạnh của hệ điều hành.
- Các website và blog công nghệ: Các trang web như Stack Overflow, Server Fault là nơi bạn có thể đặt câu hỏi và nhận được câu trả lời từ hàng triệu chuyên gia trên toàn thế giới. Các blog công nghệ uy tín cũng thường xuyên có những bài hướng dẫn sâu về các chủ đề cụ thể.
- Diễn đàn và cộng đồng: Tham gia vào các diễn đàn chính thức của CentOS hoặc các cộng đồng Linux trên các nền tảng như Reddit (ví dụ: r/CentOS, r/linuxadmin) là một cách tuyệt vời để học hỏi kinh nghiệm thực tế từ những người khác và cập nhật các xu hướng mới.
- Sách chuyên ngành: Những cuốn sách kinh điển như “The Linux Command Line” của William Shotts hay “UNIX and Linux System Administration Handbook” là những nguồn kiến thức toàn diện, giúp bạn hiểu sâu về triết lý và cách hoạt động của hệ điều hành.
Hãy đánh dấu lại những nguồn tài liệu này. Khi gặp một vấn đề khó, việc biết nơi để tìm kiếm câu trả lời đáng tin cậy sẽ giúp bạn tiết kiệm rất nhiều thời gian và công sức.
![]()
Các vấn đề thường gặp và cách khắc phục
Trong quá trình làm việc với CentOS, bạn chắc chắn sẽ gặp phải một số lỗi phổ biến. Đừng hoảng sợ! Hiểu rõ nguyên nhân và cách khắc phục sẽ giúp bạn giải quyết vấn đề nhanh chóng và học hỏi được nhiều kinh nghiệm quý báu.
Lỗi quyền truy cập khi chạy lệnh
Một trong những lỗi phổ biến nhất mà người mới gặp phải là thông báo “Permission denied”. Lỗi này xảy ra khi bạn cố gắng thực hiện một hành động (như sửa file hệ thống, cài đặt phần mềm) mà không có đủ quyền hạn.
- Nguyên nhân: Hầu hết các tác vụ quản trị hệ thống đều yêu cầu quyền của người dùng cao nhất (gọi là “root”). Tài khoản người dùng thông thường của bạn không có các quyền này để đảm bảo an toàn, tránh việc vô tình làm hỏng hệ thống.
- Cách khắc phục: Giải pháp là sử dụng lệnh
sudo(SuperUser Do) ở đầu câu lệnh của bạn. Ví dụ, thay vì gõyum update, bạn hãy gõsudo yum update. Hệ thống sẽ yêu cầu bạn nhập mật khẩu của chính tài khoản của bạn để xác nhận.sudosẽ tạm thời cấp cho bạn quyền root để thực thi chỉ câu lệnh đó. - Lưu ý: Hãy sử dụng
sudomột cách cẩn thận và chỉ khi thực sự cần thiết. Việc lạm dụng quyền root có thể dẫn đến những sai lầm không thể cứu vãn.
Gặp lỗi cập nhật hệ thống hoặc dịch vụ không khởi động
Đôi khi, sau khi cập nhật hoặc thay đổi cấu hình, một dịch vụ nào đó (như máy chủ web) không thể khởi động được. Đây là lúc bạn cần trở thành một “thám tử” hệ thống.
- Bước đầu tiên – Kiểm tra logs: Hệ thống log là nơi ghi lại mọi hoạt động và lỗi xảy ra. Đây là nguồn thông tin quý giá nhất để chẩn đoán vấn đề. Để kiểm tra log của một dịch vụ cụ thể, hãy dùng lệnh:
sudo journalctl -u ten_dich_vu.serviceVí dụ, với máy chủ web Apache, bạn sẽ dùng
sudo journalctl -u httpd.service. Hãy đọc kỹ các dòng màu đỏ hoặc có chữ “error”, “failed”. - Kiểm tra cú pháp cấu hình: Một lỗi nhỏ như thiếu dấu chấm phẩy trong file cấu hình cũng có thể khiến dịch vụ không khởi động được. Hầu hết các dịch vụ đều có lệnh để kiểm tra cú pháp. Ví dụ, với Nginx, bạn có thể chạy
sudo nginx -t. - Kiểm tra xung đột: Một nguyên nhân phổ biến khác là xung đột cổng (port). Có thể một dịch vụ khác đang chiếm dụng cổng mà dịch vụ của bạn cần. Sử dụng lệnh
sudo netstat -tulnpđể xem các cổng đang được sử dụng và tiến trình nào đang chiếm giữ chúng.
Bằng cách tiếp cận vấn đề một cách có hệ thống, bạn có thể nhanh chóng tìm ra gốc rễ của sự cố và khắc phục nó hiệu quả.

Các best practices khi sử dụng lệnh CentOS
Sử dụng thành thạo các dòng lệnh là một kỹ năng, nhưng sử dụng chúng một cách an toàn và hiệu quả lại là một nghệ thuật. Việc tuân thủ các quy tắc thực hành tốt nhất (best practices) sẽ giúp bạn tránh được những sai lầm tai hại, bảo vệ dữ liệu và tối ưu hóa quy trình làm việc.
- Luôn kiểm tra kỹ lệnh trước khi chạy: Điều này đặc biệt quan trọng với các lệnh có khả năng phá hủy dữ liệu như
rmhoặcdd. Hãy tạo thói quen đọc lại toàn bộ câu lệnh một lần nữa trước khi nhấn Enter. Một khoảng trắng sai vị trí trong lệnhrm -rf / thu-muc-sai /có thể xóa toàn bộ hệ thống của bạn. - Backup dữ liệu trước khi thao tác quan trọng: Trước khi thực hiện bất kỳ thay đổi lớn nào, chẳng hạn như nâng cấp hệ điều hành, thay đổi cấu hình cơ sở dữ liệu, hoặc chạy một script phức tạp, hãy đảm bảo rằng bạn đã có một bản sao lưu (backup là gì) đầy đủ và có thể phục hồi được. Backup là chiếc phao cứu sinh của bạn.
- Hạn chế chạy lệnh với quyền root: Nguyên tắc “đặc quyền tối thiểu” (Principle of Least Privilege) là nền tảng của bảo mật hệ thống. Hãy đăng nhập bằng tài khoản người dùng thông thường và chỉ sử dụng
sudocho những lệnh thực sự cần quyền quản trị. Tuyệt đối tránh đăng nhập và làm việc trực tiếp bằng tài khoảnroot. - Sử dụng script để tự động hóa: Đối với các tác vụ lặp đi lặp lại, hãy viết một shell script nhỏ. Việc này không chỉ giúp tiết kiệm thời gian mà còn giảm thiểu nguy cơ lỗi do con người gây ra. Một script đã được kiểm thử sẽ thực hiện công việc một cách nhất quán mỗi lần chạy.

Kết luận
Qua bài viết này, chúng ta đã cùng nhau khám phá một hành trình toàn diện qua thế giới dòng lệnh của CentOS. Từ những thao tác cơ bản như tạo file, quản lý người dùng, đến các kỹ thuật nâng cao để giám sát hệ thống và tối ưu hóa công việc, bạn đã được trang bị một bộ công cụ mạnh mẽ. Bảng tổng hợp lệnh CentOS không chỉ là một danh sách các câu lệnh, mà còn là chìa khóa để bạn khai thác toàn bộ tiềm năng của một trong những hệ điều hành là gì máy chủ ổn định và đáng tin cậy nhất.
Quản trị hệ thống là một kỹ năng đòi hỏi sự thực hành liên tục. Đừng ngần ngại mở một terminal và áp dụng ngay những gì bạn đã học. Hãy bắt đầu với một môi trường an toàn như máy ảo để thử nghiệm và làm quen. Khi bạn càng sử dụng dòng lệnh nhiều, chúng sẽ càng trở nên quen thuộc và trực quan.
AZWEB hy vọng rằng bài viết này sẽ là một tài liệu tham khảo hữu ích trên con đường trở thành một quản trị viên hệ thống chuyên nghiệp của bạn. Hãy tiếp tục học hỏi, tham gia vào các cộng đồng Linux, và không ngừng hoàn thiện kỹ năng của mình. Chúc bạn thành công