0
0
Lập trình
Admin Team
Admin Teamtechmely

Cách mở rộng dung lượng đĩa trên VM Debian tại Hetzner Cloud

Đăng vào 1 tháng trước

• 6 phút đọc

Hướng dẫn mở rộng dung lượng đĩa trên VM Debian tại Hetzner Cloud

Trong hướng dẫn này, chúng ta sẽ cùng nhau tìm hiểu cách mở rộng dung lượng đĩa trên một VM Debian đang được lưu trữ trên Hetzner Cloud. Việc này sẽ được thực hiện bằng cách thêm một volume mới và tạo một điểm gắn kết riêng biệt. Điều này cho phép bạn lưu trữ dữ liệu một cách độc lập với phân vùng gốc, giải phóng không gian và giữ cho hệ thống của bạn được tổ chức.

Giới thiệu

Khi tôi tạo kho lưu trữ gói Debian tùy chỉnh của riêng mình, tôi đã gặp phải vấn đề với dung lượng đĩa. Tôi đã đánh giá thấp dung lượng cần thiết để lưu trữ kho và tải về tất cả các tệp cần thiết. Thay vì phải xóa và xây dựng lại VM của mình từ đầu, tôi muốn mở rộng dung lượng đĩa và tạo một phân vùng mới cho dữ liệu kho lưu trữ.

1. Thêm Volume và Gắn nó vào VM của bạn

Khi nhận ra dung lượng đĩa của VM không đủ, bước đầu tiên là thêm không gian lưu trữ bổ sung. Bạn sẽ cần tạo một volume và gắn nó vào VM của mình. Hetzner Cloud cung cấp tính năng này rất đơn giản qua bảng điều khiển web của họ. Đây là phương pháp mà chúng ta sẽ sử dụng ở đây.

Trong bảng điều khiển web của Hetzner, bạn chỉ cần nhìn vào menu bên trái — có một phần "Volumes" đang chờ bạn:

Hình ảnh bảng điều khiển Hetzner Cloud

Sau đó, bạn nhấp vào nút đỏ "Tạo Volume" ở bên phải và bạn sẽ thấy cửa sổ sau:

Ở đây, bạn cần chọn:

  • Dung lượng đĩa bạn cần (GB)
  • Tên của volume
  • Máy chủ mà bạn muốn gắn nó vào
  • Tùy chọn gắn kết
  • Hệ thống tệp nếu bạn chọn 'tự động' cho tùy chọn gắn kết

VM ban đầu của tôi chỉ chứa 40 GB dung lượng đĩa, và tôi cần thêm một volume 60 GB. Dưới đây là cách mà tôi đã thực hiện:

Hãy điều chỉnh theo nhu cầu của bạn và nhấp "Tạo & Mua ngay" : volume của bạn bây giờ đã được tạo và gắn vào VM của bạn!

2. Thay đổi điểm gắn kết và làm cho nó vĩnh viễn trên VM của bạn

Đầu tiên, hãy đăng nhập vào VM của bạn và thực hiện lệnh sau để xem volume mới được gắn vào VM của bạn:

bash Copy
lsblk -f

(Xem xét sử dụng sudo nếu cần)

Như bạn có thể thấy, volume tôi đã thêm có tên là "sdb". Chúng ta cũng thấy rằng volume có hệ thống tệp đúng, đó là 'ext4' (đây là hệ thống tệp thông dụng trên Debian, Ubuntu, CentOs...). Cuối cùng, chúng ta thấy rằng nó đã có một điểm gắn kết: '/mnt/HC_Volume_103410845'.

Tôi cần dung lượng đĩa này có sẵn cho kho lưu trữ gói Debian tùy chỉnh của mình dưới đường dẫn /var/local/my-debian-repo.

Vậy nên đầu tiên, tôi đã tháo gắn đĩa với:

bash Copy
sudo umount /mnt/HC_Volume_103410845

--> Chỉ cần thay đổi đường dẫn điểm gắn kết với cái mà bạn thấy trên VM của bạn.

Nếu bạn gặp lỗi tại điểm này, có thể là do điểm gắn kết của bạn vẫn có các tiến trình đang chạy trên đó. Bạn có thể kiểm tra xem có tiến trình nào đang truy cập vào nó hay không với:

bash Copy
sudo lsof <your_mount_point_path>

Với ví dụ của tôi, tôi sẽ thực hiện:

bash Copy
sudo lsof /mnt/HC_Volume_103410845

Sau đó, tôi đã tạo thư mục cho kho lưu trữ của mình với:

bash Copy
sudo mkdir -p /var/local/my-debian-repo

--> Chỉ cần thay đổi đường dẫn thư mục với của bạn.

Sau đó, gắn volume vào thư mục này:

bash Copy
sudo mount /dev/sdb /var/local/my-debian-repo

--> Chỉ cần thay đổi /dev/sdb với đường dẫn volume của bạn và var/local/my-debian-repo với đường dẫn thư mục của bạn.

Lưu ý: Nếu thư mục đã chứa tệp, việc gắn volume mới sẽ tạm thời ẩn chúng. Hãy chắc chắn sao lưu bất kỳ dữ liệu quan trọng nào trong /var/local/my-debian-repo trước khi gắn, để tránh mất mát hoặc ẩn chúng một cách không mong muốn.

Sau đó, kiểm tra xem nó đã hoạt động chưa với:

bash Copy
df -h

Ở đây bạn thấy rằng nó đã hoạt động với tôi, /var/local/my-debian-repo đã được gắn trên volume.

Nhưng điều này không phải là vĩnh viễn. Điều đó có nghĩa là nếu bạn khởi động lại VM của mình, phân vùng /dev/sdb sẽ không được gắn tự động. Vì vậy, để làm cho nó vĩnh viễn, bạn cần thêm nó vào tệp /etc/fstab.

Lưu ý quan trọng

Trước khi chỉnh sửa, hãy sao lưu tệp fstab của bạn vì nó rất nhạy cảm và một sai sót có thể ngăn cản hệ thống của bạn khởi động:

bash Copy
sudo cp /etc/fstab /etc/fstab.bak

Sau đó, bạn có thể thêm phân vùng mới của bạn vào fstab để gắn nó vĩnh viễn:

bash Copy
sudo echo '/dev/sdb /var/local/my-debian-repo ext4 defaults 0 2' | sudo tee -a /etc/fstab

--> Thay đổi đường dẫn volume và điểm gắn kết để phù hợp với thiết lập của bạn.

Lưu ý: -a sẽ thêm dòng vào thay vì ghi đè lên tệp.

Nếu bạn cảm thấy thoải mái hơn khi sử dụng trình soạn thảo văn bản để thêm dòng này, bạn có thể sử dụng nano hoặc vim và chèn dòng sau vào cuối tệp:

Copy
<your_volume_path> <your_mount_point> ext4 defaults 0 2

Sau đó, bạn có thể kiểm tra xem nó đã hoạt động chưa với:

bash Copy
cat /etc/fstab

Cách thay đổi kích thước volume

Bonus: Nếu bạn phát hiện ra rằng bạn cần thay đổi kích thước của volume, chỉ cần sử dụng bảng điều khiển web, nhấp vào "..." bên cạnh volume của bạn và chọn 'Resize'.

Lưu ý: Bạn có thể mở rộng một volume nhưng không thể thu nhỏ nó.

Thay đổi kích thước volume của bạn theo nhu cầu. Đừng quên thay đổi kích thước hệ thống tệp trên VM của bạn với:

bash Copy
sudo resize2fs /dev/sdb

--> Thay đổi /dev/sdb với đường dẫn đến volume của bạn.

Lưu ý: Điều này chỉ điều chỉnh hệ thống tệp để sử dụng không gian mới: volume phải đã được mở rộng trong bảng điều khiển của Hetzner.

Những lưu ý quan trọng

  • Sao lưu dữ liệu: Đảm bảo sao lưu mọi dữ liệu quan trọng trước khi thực hiện bất kỳ thay đổi nào liên quan đến đĩa hoặc phân vùng.
  • Kiểm tra tiến trình: Sử dụng các lệnh lsof để kiểm tra các tiến trình truy cập vào điểm gắn kết trước khi tháo gắn.
  • Đảm bảo tính toàn vẹn: Kiểm tra tệp fstab sau khi chỉnh sửa để đảm bảo rằng không có lỗi cú pháp.

Kết luận

Hướng dẫn này đã hướng dẫn bạn từng bước một cách chi tiết để mở rộng dung lượng đĩa trên một VM Debian tại Hetzner Cloud. Hy vọng rằng nó sẽ hữu ích cho bạn trong việc quản lý và tối ưu hóa môi trường phát triển của mình. Nếu bạn có bất kỳ câu hỏi nào, hãy để lại bình luận bên dưới!

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

1. Tôi có thể mở rộng dung lượng đĩa mà không cần khởi động lại VM không?

Có, bạn có thể mở rộng dung lượng đĩa mà không cần khởi động lại, nhưng bạn cần đảm bảo rằng phân vùng được gắn đúng cách.

2. Có thể thu nhỏ dung lượng đĩa không?

Không, bạn không thể thu nhỏ một volume đã được tạo ra trong Hetzner Cloud nhưng bạn có thể mở rộng nó.

3. Tôi cần làm gì nếu gặp lỗi trong quá trình gắn volume?

Hãy kiểm tra xem có tiến trình nào đang chạy trên điểm gắn kết hay không bằng lệnh lsof và đảm bảo rằng bạn đã tháo gắn đúng cách trước khi gắn volume mới.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào