10 lệnh Linux quản trị VPS phải biết trong tuần đầu
TL;DR
Mới mua VPS Linux mà chưa quen terminal? 10 lệnh dưới là bộ tối thiểu giúp bạn tự quản trị server trong 7 ngày đầu — không cần plugin, không cần web panel.
🎯 Phù hợp: dev mới mua VPS lần đầu, freelancer chuyển từ shared hosting, sysadmin junior
⏱ Áp dụng: học 20 phút, làm chủ trong 1 tuần dùng thực tế
✅ Test trên: Ubuntu 22.04 / 24.04, Debian 12, AlmaLinux/Rocky 9, CentOS Stream 9
🚀 Mục tiêu: tự xem file, kiểm tra tài nguyên, đọc log, restart service, phân quyền — đủ cứu 90% tình huống cấp bách
Vì sao cần học 10 lệnh này ngay từ tuần đầu?
VPS khác shared hosting — bạn không có cPanel sẵn để click. Mọi thao tác đều qua SSH terminal.
Những pain point thường gặp khi mới mua VPS:
😰 SSH vào VPS rồi nhưng không biết gõ gì
😩 App crash mà không biết coi log ở đâu
🤔 VPS chậm mà không biết RAM/CPU đang đầy hay trống
🔥 Cài nhầm package, không biết gỡ hoặc restart service
💸 Định thuê tech support $30/tháng chỉ để chạy vài lệnh đơn giản
10 lệnh này giải quyết tất cả tình huống trên — và bạn không cần học Linux từ đầu.
💡 Mẹo: Bookmark bài này, copy-paste lệnh khi cần. Sau 1 tuần dùng thực tế bạn nhớ nằm lòng.
Nhóm 1 — Điều hướng và xem file (ls, cd, pwd, cat)
Tóm gọn: 4 lệnh điều hướng cơ bản — đi vào thư mục, biết đang ở đâu, liệt kê file, đọc nội dung.
ls -lah — xem mọi file kèm size + quyền + ngày sửa
ls -lah /var/www/html
Output:
drwxr-xr-x 3 www-data www-data 4.0K May 11 14:23 .
drwxr-xr-x 3 root root 4.0K May 10 09:11 ..
-rw-r--r-- 1 www-data www-data 2.1K May 11 14:23 index.html
-llong format (quyền + owner + size + ngày)-ashow file ẩn (.htaccess,.env)-hsize human-readable (4.0Kthay vì4096)
pwd — biết đang ở thư mục nào
pwd
# /home/ubuntu/projects/my-app
Cứ lạc đường là gõ pwd. Đặc biệt hữu ích trong script.
cd — di chuyển
cd /var/log # tới đường dẫn tuyệt đối
cd .. # lùi 1 cấp
cd ~ # về home directory
cd - # quay lại thư mục trước
📌 Note:
cd ~vàcd(không có argument) cùng hiệu quả — đều về home.
cat + less — đọc nội dung file
cat /etc/nginx/nginx.conf # in toàn bộ ra terminal
less /var/log/syslog # đọc file dài, scroll bằng Space, thoát bằng q
Dùng less cho file >500 dòng. cat chỉ phù hợp file ngắn.
Nhóm 2 — Theo dõi tài nguyên (htop, df, du, free)
Tóm gọn: Biết VPS đang ăn bao nhiêu RAM/CPU/disk — cứu bạn khỏi tình huống “site sập không hiểu vì sao”.
htop — monitor CPU + RAM realtime
sudo apt install htop -y # Ubuntu/Debian
sudo dnf install htop -y # AlmaLinux/Rocky
htop
Giao diện màu mè dễ nhìn hơn top. Phím tắt:
F6sort theo column (CPU%, MEM%, TIME)F9kill process (chọn signalSIGTERMhoặcSIGKILL)F10thoáttview dạng cây (parent-child process)
df -h — dung lượng disk còn lại
df -h
Output:
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 50G 12G 36G 26% /
/dev/vdb1 100G 45G 51G 47% /data
⚠️ Warning:
Use% > 90%là báo động đỏ. MySQL/log fill disk = service crash.
du -sh — folder nào ngốn nhiều disk nhất
du -sh /var/log /var/www /home /tmp 2>/dev/null | sort -h
Tip để tìm thủ phạm fill disk:
du -h --max-depth=1 / 2>/dev/null | sort -h | tail -10
free -h — RAM còn lại
free -h
Output:
total used free shared buff/cache available
Mem: 1.9Gi 1.2Gi 180Mi 12Mi 540Mi 560Mi
Swap: 512Mi 12Mi 500Mi
Nhìn cột available (không phải free) để biết RAM thực sự sẵn sàng cấp cho app mới.
Nhóm 3 — Đọc log và tìm process (tail, ps, grep)
Tóm gọn: App crash hay site 502 — log và process list nói cho bạn biết nguyên nhân trong 30 giây.
tail -f — theo dõi log realtime
tail -f /var/log/nginx/error.log
Mỗi dòng log mới sẽ in ra ngay khi xuất hiện. Nhấn Ctrl+C để thoát.
Đọc 100 dòng cuối kèm theo realtime:
tail -100f /var/log/nginx/error.log
journalctl -u <service> — log của systemd service
journalctl -u nginx -n 50 --no-pager # 50 dòng cuối
journalctl -u nginx -f # realtime
journalctl -u nginx --since "10 minutes ago"
Thay nginx bằng tên service: mysql, php8.3-fpm, docker, ssh…
ps aux | grep — tìm process đang chạy
ps aux | grep nginx
ps aux | grep -v grep | grep php
grep -v grep để loại dòng grep ra khỏi kết quả.
💡 Mẹo: Cần PID để kill? Dùng
pgrep nginxtrả về luôn PID, gọn hơn.
Nhóm 4 — Quản lý service (systemctl)
Tóm gọn: 95% service trên Ubuntu/Debian/CentOS dùng systemd — systemctl là lệnh duy nhất bạn cần học.
sudo systemctl status nginx # xem service đang chạy hay tắt
sudo systemctl start nginx # khởi động
sudo systemctl stop nginx # dừng
sudo systemctl restart nginx # restart
sudo systemctl reload nginx # reload config (nhẹ hơn restart)
sudo systemctl enable nginx # tự khởi động khi boot
sudo systemctl disable nginx # bỏ tự khởi động
| Tình huống | Lệnh đúng |
|---|---|
| Đổi config NGINX | reload (giữ connection cũ) |
| Update NGINX version | restart (drop connection) |
| VPS reboot mà NGINX không tự lên | enable |
| Tạm tắt MySQL để khỏi tốn RAM | stop (vẫn enabled cho lần boot sau) |
⚠️ Lỗi hay gặp: Quên
sudo→ “Failed to start: access denied”. Lệnhsystemctlcần root cho start/stop/restart.
Nhóm 5 — Edit file + phân quyền (nano, chmod, chown)
Tóm gọn: Sửa config + cấp đúng quyền — sai 1 trong 2 là service không khởi động được.
nano — text editor đơn giản nhất
sudo nano /etc/nginx/nginx.conf
Phím tắt:
Ctrl+Osave (rồi Enter để confirm filename)Ctrl+XthoátCtrl+Wtìm kiếmCtrl+Kcắt cả dòng
💡 Mẹo: Người mới nên dùng
nanothay vìvim.vimmạnh hơn nhưng khó học,nanođủ dùng cho 99% tình huống edit config.
chmod — đổi quyền file
chmod 644 index.html # rw cho owner, r cho khác
chmod 755 deploy.sh # rwx owner, rx khác (script chạy được)
chmod -R 755 /var/www/html # đệ quy toàn folder
Nhớ 3 con số phổ biến:
644— file thường (HTML, CSS, JSON config)755— folder + script bash600— file nhạy cảm (SSH key,.envchứa password)
chown — đổi owner
sudo chown -R www-data:www-data /var/www/html # NGINX/Apache cần own folder web
sudo chown ubuntu:ubuntu ~/.ssh/id_rsa
⚠️ Pitfall thường gặp: WordPress upload không được vì folder
wp-content/uploadsthuộc ownerrootthay vìwww-data. Fix:sudo chown -R www-data:www-data wp-content/uploads.
Cập nhật hệ thống an toàn
Tóm gọn: Update Linux mỗi tuần là cách miễn phí giảm 80% rủi ro bị hack.
# Ubuntu / Debian
sudo apt update && sudo apt upgrade -y
# AlmaLinux / Rocky / CentOS Stream
sudo dnf check-update && sudo dnf upgrade -y
Nguyên tắc bắt buộc:
- Backup database trước khi upgrade package liên quan (MySQL, PHP, NGINX)
- Đọc log apt/dnf sau update — nếu có warning service cần restart, phải restart ngay
- Reboot VPS sau khi update kernel (
sudo reboot)
Auto security update không cần can thiệp:
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades
💡 Mẹo: Bài tiếp theo trong serie sẽ hướng dẫn
unattended-upgradeschi tiết — để VPS tự vá lỗ hổng mỗi đêm.
Sai lầm phổ biến tuần đầu
❌ Chạy mọi thứ bằng
rootthay vì user thường +sudo. Mất account = mất luôn server. Sửa: tạo user thường, chỉsudokhi cần.❌
rm -rf /hoặcchmod 777 /varvì nghĩ “cấp full quyền cho dễ”. Sai 1 ký tự là server bay. Sửa: dùngchmod 755/644/600, không bao giờ777.❌ Quên backup trước khi
apt upgradepackage quan trọng (MySQL major version). Sửa: snapshot VPS trước khi update lớn.❌ Edit config bằng vim không quen, nhấn nhầm phím rồi save sai. Sửa: dùng
nanođến khi quen vim.❌
tail -fxong quênCtrl+Crồi tưởng terminal treo. Sửa: nhớ phím tắt thoát.
Key takeaways
ls -lah,cd,pwd,cat/less— bộ điều hướng + xem file cơ bảnhtop,df -h,du -sh,free -h— biết VPS đang ăn bao nhiêu tài nguyêntail -f,journalctl,ps aux | grep— debug log + tìm processsystemctl— lệnh duy nhất cần biết để quản servicenano,chmod,chown— edit + phân quyềnapt/dnf upgrademỗi tuần + auto unattended-upgrades
Học 10 lệnh này tiết kiệm $30-50/tháng tiền managed support — và bạn tự chủ hoàn toàn server của mình.
FAQ
Q: Tôi dùng Windows hay Mac, làm sao SSH vào VPS Linux?
A: Windows mở PowerShell rồi ssh user@ip-vps. Mac mở Terminal, lệnh y hệt. Cả 2 đều có sẵn ssh client từ 2018.
Q: Quên password root VPS, làm sao reset?
A: Vào panel VPS provider (vsis.net cho khách VSIS), chọn Reset password root. Hoặc dùng tính năng Console boot single-user mode rồi passwd root.
Q: sudo báo “user is not in the sudoers file” — fix sao?
A: Login bằng root, chạy usermod -aG sudo <username> (Ubuntu) hoặc usermod -aG wheel <username> (CentOS/Alma). Logout login lại.
Q: Có nên cài web panel như cPanel / aaPanel cho dễ?
A: Tùy bạn. Web panel tiện click cho người không biết Linux, nhưng ăn 200-500MB RAM + dễ bị exploit nếu không update. Học 10 lệnh này tiết kiệm RAM + bảo mật hơn.
Q: VPS RAM 1GB có chạy được nhiều dịch vụ không?
A: Đủ cho 1 site WordPress + MySQL + NGINX. Nếu cần Docker, Redis, hoặc Node.js app → nên VPS 2-4GB. Xem chi tiết spec phù hợp ở vsis.net/vps.
Cần VPS Linux để thực hành?
Khách VSIS đăng ký VPS Linux từ 99k/tháng (1GB RAM, 25GB SSD, 1Gbps unmetered) đã có sẵn Ubuntu 24.04 LTS preinstall — chỉ việc SSH vào là chạy được mọi lệnh trong bài này.
👉 Đăng ký VPS Linux: vsis.net/vps
📺 Xem video 60 giây tóm tắt: link Reels (sẽ cập nhật khi đăng FB)
📖 Bài tiếp theo: “Cách check tài nguyên VPS (CPU, RAM, disk) trong 30 giây” — đăng Thứ 4 tuần này.



