Thuê VPS (Virtual Private Server) hay máy chủ ảo (cloud server) là dạng máy chủ ảo, cloud server ảo được tạo ra bằng phương pháp dùng phần mềm ảo hóa như vmware, proxmox, open stack,… phân chia nhiều máy chủ vật lý (tối thiểu 3 server) thành nhiều máy chủ ảo khác nhau có tính năng tương tự như máy chủ riêng (dedicated server), chạy dưới dạng chia sẻ tài nguyên từ cụm máy chủ vật lý.
Mặc định khi bạn đăng ký thuê VPS ở các nhà cung cấp tại Việt Nam, bạn phải đảm bảo rằng bạn đã có kiến thức sử dụng, vận hành cũng như quản trị làm chủ nó.
Các nhà cung cấp khi bán cho bạn 1 Cloud server thường chỉ cài cho bạn một OS ( Window, linux) và Control Panel kèm theo như (DirectAdmin bản free, VestaCP, các Script như hocvps…) Và bạn chỉ việc sử dụng nó, nhưng bạn không nắm được rằng bạn cần tối ưu hóa lại VPS để chạy tốt hơn, trơn tru và mượt hơn.
Tuy nhiên trong quá trình vận hành và sử dụng bạn sẽ gặp một chút vấn đề là đầy dung lượng của VPS sử dụng hệ điều hành Linux, thì bài viết hôm nay mình sẽ hướng dẫn các bạn cách kiểm tra dung lượng trên Linux.
Dung lượng ngày phát sinh trong quá trình sử dụng như những file upload, ảnh, text, các source mà bạn upload lên quên xóa, hay cấu hình backup tự động, các file backup được lưu trữ trong VPS luôn lâu ngày sẽ làm đầy.
Để thực hiện bạn cần thao tác như sau
Bước 1: Đăng nhập vào máy chủ Linux thông qua SSH.
Bước 2: Kiểm tra tổng quát dung lượng
Sử dụng lệnh df -ah
để kiểm tra tổng quan dung lượng.
Thông báo trả về
[root@cloudvietcom ~]# df -ah Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 50G 47G 0 100% / proc 0 0 0 - /proc sysfs 0 0 0 - /sys devpts 0 0 0 - /dev/pts tmpfs 7.8G 24K 7.8G 1% /dev/shm /dev/md126p1 477M 32M 420M 8% /boot /dev/mapper/VolGroup-lv_home 53G 44G 6.4G 88% /home none 0 0 0 - /proc/sys/fs/binfmt_misc
Tại đây bạn thấy dung lượng đã full 100%. Áp dụng với phân vùng của thư mục root (hay còn thể hiện là /
)
Kiểm tra chi tiết từng thư mục, file
Bạn truy cập về thư mục root bằng lệnh
cd /
Sau đó gỏ tiếp lệnh du -sh * để liệt kê chi tiết
du -sh *
# du -sh *
12K aquota.group 12K aquota.user 6.2M bin 30M boot 200K dev 30M etc 44G home 286M lib 22M lib64 16K lost+found 4.0K media 4.0K mnt 4.0K opt du: cannot access `proc/27689/task/27689/fd/4': No such file or directory du: cannot access `proc/27689/task/27689/fdinfo/4': No such file or directory du: cannot access `proc/27689/fd/4': No such file or directory du: cannot access `proc/27689/fdinfo/4': No such file or directory 0 proc 64K root 16M sbin 4.0K selinux 4.0K srv 0 sys 36M tmp 3.4G usr 12G var
Như ở thông báo trên thư mục /var đang chiếm nhiều nhất là 12GB, tiếp tục truy cập vào thư mục /var
cd /var
Gỏ tiếp lệnh du -sh *
để liệt kê các file thư mục con trong thư mục cha là var
[root@cloudvietcom /]# cd var/ [root@cloudvietcom var]# du -sh * 35M cache 8.0K db 8.0K empty 4.0K games 5.0G lib 4.0K local 16K lock 5.9G log 32K logs 0 mail 74M named 4.0K nis 4.0K opt 4.0K preserve 120K run 22M spool 24K tmp 114M www 4.0K yp
Tại đây bạn sẽ thấy thư mục lib và log chiếm quá nhiều dung lượng. tiếp tục truy cập vào thư mục log xem có gì ở trong đó mà chiếm nhiều vậy
cd log/
Mình gỏ lệnh ll
để liệt kê.
# ll
Gỏ tiếp lệnh du -sh *
để liệt kê chi tiết, thông báo trả về nhiều file chiếm quá lớn, 1 file có tên btmp chiếm dung lượng 5.2GB.
# du -sh * 29M audit 5.2G btmp 217M btmp-20181201 66M cron 36K directadmin 44K dmesg 44K dmesg.old 0 dovecot-lmtp.log 200K dracut.log 1.1M exim 373M httpd 4.0K proftpd 0 spooler-20181125 0 tallylog 236K wtmp
Ngoài ra còn một số lệnh để bạn tìm file và thư mục lớn một cách nhanh chóng hơn.
Tìm 5 file lớn nhất: find -type f -exec du -Sh {} + | sort -rh | head -n 5
Tìm 5 thư mục lớn nhất: du -hs * | sort -rh | head -5
Xử lý các file
Các file backup trên mình không có nhu cầu sử dụng nữa, nên mình sẽ xóa nó đi bằng lệnh rm -rf
. Tuy nhiên bạn cần xác định chính xác để tránh xóa nhầm nhé.
# rm -rf access_log # rm -rf btmp-20181201 # rm -rf btmp
Chúc các bạn thành công.