blog.dopana

Back

Dù bạn là web developer, mobile developer hay data scientist, Linux là môi trường bạn không thể tránh khỏi — server chạy Linux, CI/CD chạy Linux, thậm chí macOS cũng là họ hàng Unix. Bài này tổng hợp các lệnh Linux thiết yếu bạn cần biết.

1. Quản Lý File Và Thư Mục#

Di Chuyển Và Xem#

pwd # In ra thư mục hiện tại
ls -lah # Liệt kê file với quyền, kích thước, ngày
tree -L 2 # Cây thư mục, sâu 2 cấp
cd - # Quay lại thư mục trước đó
bash

Tìm Kiếm#

find . -name "*.ts" -type f # Tìm file .ts
find . -size +1M # File lớn hơn 1MB
grep -rn "TODO" --include="*.ts" # Tìm TODO trong file .ts
locate nginx.conf # Tra cứu nhanh (cần updatedb)
bash

2. Xem Và Quản Lý Tiến Trình#

ps aux # Danh sách tiến trình
top # Real-time, tương tác
htop # Đẹp hơn top (cần cài)
kill -9 PID # Kill tiến trình cứng đầu
kill -15 PID # Graceful shutdown
lsof -i :3000 # Process nào đang giữ port 3000
bash

3. Network#

curl -I https://example.com # Chỉ lấy header HTTP
curl -X POST https://api.example.com # Gửi POST request
ping -c 4 google.com # Kiểm tra kết nối
traceroute google.com # Xem đường đi gói tin
ss -tuln # Port nào đang lắng nghe
nc -zv host 22 # Kiểm tra port có mở không
bash

4. Disk Và Memory#

df -h # Dung lượng ổ cứng
du -sh * # Dung lượng từng thư mục con
du -sh --exclude=node_modules . # Bỏ qua node_modules
free -h # RAM
bash

5. File Permissions#

chmod 755 script.sh # -rwxr-xr-x: owner full, group/other đọc+chạy
chmod +x script.sh # Thêm execute
chown user:group file # Đổi chủ sở hữu
umask 022 # Mặc định: file 644, folder 755
bash

6. SSH Keys & Remote#

ssh-keygen -t ed25519 -C "email@example.com" # Tạo key
ssh-copy-id user@server # Copy key lên server
ssh -i ~/.ssh/custom_key user@host -p 2222 # Custom key và port
rsync -avz --progress ./dist/ user@server:/var/www/ # Sync thư mục
bash

7. Logs Và Systemd#

journalctl -u nginx --since "1 hour ago" # Log của service nginx
journalctl -f # Live log
systemctl status nginx # Trạng thái service
systemctl restart nginx # Restart service
bash

Mẹo Nhỏ Tiết Kiệm Thời Gian#

# Lịch sử lệnh
history | grep docker
!! # Chạy lại lệnh trước
!$ # Tham số cuối của lệnh trước
!docker # Chạy lệnh docker gần nhất

# Alias hữu ích (thêm vào ~/.zshrc hoặc ~/.bashrc)
alias gs="git status"
alias gp="git push"
alias ll="ls -lah"
alias ..="cd .."
bash

Kết Luận#

Linux không đáng sợ như bạn nghĩ. Học 20 lệnh trên đây là bạn đã xử lý được 90% tình huống hàng ngày. Còn lại — Google là bạn. Và nhớ: man là người bạn tốt nhất của bạn (man ls, man grep…).

Tài liệu tham khảo#