Cách thu nhỏ máy ảo VirtualBox và giải phóng không gian đĩa
Theo mặc định, VirtualBox tạo các đĩa động phát triển theo thời gian khi bạn thêm dữ liệu. Tuy nhiên, nếu bạn xóa dữ liệu khỏi máy ảo sau này, bạn sẽ nhận thấy rằng đĩa không tự động thu nhỏ. Nhưng bạn có thể thu nhỏ đĩa động bằng cách sử dụng lệnh ẩn.
Hãy nhớ rằng điều này sẽ chỉ thu nhỏ đĩa nếu nó tăng kích thước và bạn đã xóa dữ liệu. Vì vậy, nếu bạn vừa tạo một đĩa động, điều này sẽ không thu nhỏ nó. Nhưng, nếu bạn đã tạo một đĩa động, đã tải xuống 10 GB dữ liệu vào đó và sau đó xóa 10 GB dữ liệu đó, bạn sẽ có thể thu nhỏ ổ đĩa khoảng 10 GB.
Bước một: Đảm bảo bạn đang sử dụng đĩa động
Quá trình này chỉ hoạt động cho các đĩa động, có thể tăng và thu nhỏ kích thước. Các đĩa động có thể có kích thước tối đa nhất định - ví dụ 50 GB - nhưng chúng chỉ thực sự phát triển đến kích thước tối đa đó khi chúng chứa nhiều dữ liệu đó. Các đĩa có kích thước cố định sẽ luôn là kích thước tối đa của chúng.
Nếu bạn có một đĩa có kích thước cố định mà bạn muốn thu nhỏ, trước tiên bạn có thể chuyển đổi nó thành một đĩa động và sau đó làm theo các hướng dẫn dưới đây. Ví dụ: nếu bạn có một đĩa cố định có kích thước 50 GB chỉ với 20 GB dữ liệu trên đó và bạn chuyển đổi nó thành một đĩa động, bạn sẽ có thể thu nhỏ nó để chỉ chiếm 20 GB dung lượng.
Để kiểm tra xem một đĩa có kích thước động hay cố định trong VirtualBox hay không, nhấp chuột phải vào máy ảo sử dụng đĩa đó và chọn Cài đặt Cài đặt. Nhấp vào tab Lưu trữ trên mạng và chọn đĩa. Bạn sẽ thấy loại đĩa nào nó được hiển thị bên cạnh Chi tiết của Wap. Ví dụ: trong ảnh chụp màn hình bên dưới, lưu trữ được phân bổ động của động cơ cho biết đây là đĩa động.
Bước hai: Ghi số không vào đĩa trong máy ảo
Đảm bảo xóa mọi dữ liệu bạn không còn muốn trên đĩa bên trong máy ảo để giải phóng dung lượng trước khi tiếp tục. Xóa các tệp bạn không cần, gỡ cài đặt các chương trình bạn không còn sử dụng và làm trống Thùng rác của bạn. Sau đó, bạn sẽ cần ghi đè lên khoảng trống đó bằng số không.
Dành cho hệ điều hành Windows Guest
Nếu bạn đã cài đặt Windows bên trong máy ảo, bây giờ bạn nên khởi động máy ảo lên và chống phân mảnh các ổ đĩa của nó. Bên trong máy ảo, tìm kiếm menu Bắt đầu để tìm Defragmentvà và khởi chạy công cụ Defragmenter trên đĩa cứng hoặc Defragment và tối ưu hóa ổ đĩa cứng. Chọn đĩa bạn muốn nén và bấm vào đĩa Defragment đĩa.
Sau khi quá trình chống phân mảnh kết thúc, bạn sẽ cần ghi số không vào khoảng trống bên trong máy ảo. Khi bạn xóa tệp, dữ liệu đã xóa vẫn được lưu trên đĩa để VirtualBox không thể tự động thu nhỏ ổ đĩa. Nhưng, khi bạn viết các số không trên các tệp đã xóa, VirtualBox sẽ thấy một số lượng lớn các số không - không gian trống, nói cách khác - và có thể nén đĩa.
Để thực hiện việc này, hãy tải xuống tiện ích SDelete từ Microsoft. Trích xuất sdelete.exe
tập tin vào một thư mục trên máy tính của bạn.
Mở một cửa sổ nhắc lệnh. Để làm như vậy, hãy mở menu Bắt đầu, tìm kiếm Lệnh Prompt, và khởi chạy phím tắt.
Thay đổi thư mục chứa sdelete.exe
tập tin bằng cách gõ CD
, nhấn Space, nhập đường dẫn đến thư mục và nhấn Enter. Hãy chắc chắn để đặt đường dẫn trong dấu ngoặc kép nếu nó chứa một ký tự khoảng trắng. Nó sẽ giống như thế này:
cd "C: \ path \ đến \ thư mục"
Ví dụ: nếu bạn trích xuất sdelete.exe
tệp vào thư mục tải xuống tài khoản người dùng của bạn và tên người dùng Windows của bạn là Bob, bạn sẽ chạy lệnh sau:
cd "C: \ Users \ bob \ Tải xuống"
Để nhanh chóng điền vào đường dẫn thư mục, chỉ cần gõ CD
vào cửa sổ Dấu nhắc Lệnh, nhấn Dấu cách, rồi kéo và thả biểu tượng thư mục từ thanh địa chỉ của người quản lý tệp.
Chạy lệnh sau:
sdelete.exe c: -z
Điều này sẽ ghi số không vào tất cả không gian đĩa trống trên ổ C :. Nếu bạn muốn thu nhỏ một ổ đĩa thứ cấp nằm ở một ký tự ổ đĩa khác trong máy ảo, hãy nhập tên ổ đĩa của nó thay vì c :. Đây là những gì công cụ được thiết kế cho. Như trang SDelete trên trang web của Microsoft ghi chú, tùy chọn -z rất tốt cho việc tối ưu hóa đĩa ảo.
Bạn sẽ được yêu cầu đồng ý với thỏa thuận cấp phép của công cụ trước khi tiếp tục. Chỉ cần nhấp vào Đồng ý.
Chờ quá trình hoàn tất. Khi đã xong, hãy tắt máy ảo của bạn bằng cách sử dụng tùy chọn Tắt máy Tắt trong menu Bắt đầu. Bây giờ bạn đã sẵn sàng để thu gọn nó.
Dành cho hệ điều hành khách Linux
Nếu bạn đã cài đặt Linux trong máy ảo - hệ điều hành khách Linux thay vì hệ điều hành khách Windows, nói cách khác - bạn có thể bỏ qua quá trình chống phân mảnh và sử dụng các lệnh tích hợp để lấy không gian trống trên ổ đĩa. Chúng tôi sẽ sử dụng Ubuntu làm ví dụ ở đây, nhưng quy trình sẽ tương tự trên các bản phân phối Linux khác.
Để làm điều này, trước tiên bạn cần cài đặt zerofree
tiện ích bên trong máy ảo. Nó nên có sẵn trong kho phần mềm phân phối Linux của bạn. Ví dụ: bạn có thể cài đặt nó trên Ubuntu bằng cách chạy lệnh sau tại thiết bị đầu cuối bên trong máy ảo của bạn:
sudo apt cài đặt zerofree
Bạn thực sự không thể sử dụng zerofree
trên / phân vùng của bạn trong khi bạn khởi động vào môi trường Linux tiêu chuẩn. Thay vào đó, bạn sẽ muốn khởi động vào chế độ khôi phục đặc biệt nơi phân vùng gốc thông thường của bạn không được gắn kết. Trên Ubuntu, khởi động lại máy ảo của bạn và nhấn liên tục phím phím Esc Esc trong khi khởi động để truy cập menu Grub. Khi menu Grub xuất hiện, chọn tùy chọn * Nâng cao * cho Ubuntu Ubuntu và nhấn Enter.
Chọn tùy chọn Nhóm (chế độ khôi phục) Liên kết với nhân Linux gần đây nhất - nghĩa là tùy chọn có số phiên bản cao nhất ở gần đầu danh sách - và nhấn Enter.
Chọn phần gốc root vào trong menu recovery để khởi động đến dấu nhắc shell root.
Nhấn vào Enter Enter sau đó khi nhấn vào phím Enter để bảo trì, xuất hiện trên màn hình của bạn. Bạn sẽ được cung cấp một dấu nhắc thiết bị đầu cuối.
Tại dòng lệnh, xác định đĩa ảo nào bạn muốn về 0 bằng cách chạy lệnh sau:
df
Trong đầu ra dưới đây, chúng ta có thể thấy rằng / dev / sda1
là thiết bị đĩa thực tế duy nhất của chúng tôi ở đây. Chúng tôi biết rằng vì đó là đĩa duy nhất có / dev /
ở cột ngoài cùng bên trái.
Giả sử máy ảo của bạn đã được tạo với các cài đặt mặc định, nó sẽ chỉ có / dev / sda1
, đó là phân vùng đầu tiên trên ổ cứng đầu tiên. Nếu bạn đã thiết lập mọi thứ khác nhau với nhiều đĩa hoặc nhiều phân vùng, bạn có thể cần phải phân vùng khác hoặc không có nhiều phân vùng.
Bây giờ bạn đã sẵn sàng để zero đĩa. Chạy lệnh sau, thay thế / dev / sda1
với tên thiết bị của phân vùng bạn muốn ghi số không vào. Hầu hết mọi người sẽ chỉ có một / dev / sda1
thiết bị về không.
zerofree -v / dev / sda1
Khi quá trình zero kết thúc, hãy chạy lệnh sau để tắt máy ảo:
tạm dừng lại
Khi bạn thấy thông báo của Hệ thống bị tạm dừng trên màn hình của bạn, hệ thống đã tạm dừng và bây giờ bạn có thể tắt máy ảo của mình. Đóng cửa sổ của máy ảo và chọn Nguồn điện tắt máy ảo.
Bước ba: Tìm lệnh VBoxManage
Phần còn lại của quá trình sẽ được thực hiện bên ngoài máy ảo, trên hệ điều hành máy chủ của bạn. Ví dụ: nếu bạn có Windows 10 chạy trên PC và Windows 7 chạy trong máy ảo, bạn sẽ thực hiện phần còn lại của quy trình trên Windows 10.
Tùy chọn này không được hiển thị trong giao diện đồ họa của VirtualBox. Thay vào đó, bạn phải sử dụng VBoxManage.exe
chỉ huy.
Xác định vị trí lệnh này để tiếp tục. Trên Windows, bạn sẽ tìm thấy nó trong thư mục chương trình VirtualBox, đó là C: \ Tệp chương trình \ Oracle \ VirtualBox
theo mặc định Nếu bạn đã cài đặt VirtualBox sang thư mục khác, thay vào đó hãy nhìn vào đó.
Mở một cửa sổ nhắc lệnh. Để làm điều này, hãy mở menu Bắt đầu, gõ cmd
và nhấn Enter.
Kiểu CD
vào Dấu nhắc Lệnh, theo sau là đường dẫn của thư mục chứa lệnh VBoxManage. Bạn sẽ cần phải gửi nó trong dấu ngoặc kép.
Bạn có thể nhanh chóng làm điều này bằng cách gõ CD
vào cửa sổ Dấu nhắc Lệnh, sau đó kéo và thả biểu tượng thư mục từ thanh địa chỉ của người quản lý tệp vào Dấu nhắc Lệnh.
Nếu bạn đang sử dụng đường dẫn mặc định, nó sẽ giống như sau:
cd "C: \ Tệp chương trình \ Oracle \ VirtualBox"
LƯU Ý: Các hướng dẫn này giả sử bạn đang sử dụng VirtualBox trên Windows. Nếu bạn đang sử dụng VirtualBox trên macOS hoặc Linux, bạn chỉ cần mở cửa sổ Terminal và chạy vboxmanage
lệnh bình thường, như bất kỳ lệnh nào khác.
Bước bốn: Xác định vị trí đường dẫn đến đĩa bạn muốn thu gọn
Chạy lệnh sau trong cửa sổ nhắc lệnh để xem danh sách tất cả các đĩa cứng ảo trên máy tính của bạn:
Danh sách VBoxManage.exe hdds
Bước năm: Nén đĩa
Để thu gọn đĩa, bạn sẽ cần sử dụng VBoxManage.exe
với lệnh chính xác. Chỉ cần chạy lệnh sau, thay thế đường dẫn đến tệp VDI của đĩa bằng đường dẫn đến đĩa trên hệ thống của bạn mà bạn đã tìm thấy bằng lệnh trên. Hãy chắc chắn kèm theo đường dẫn của tệp trong dấu ngoặc kép nếu nó chứa một khoảng trắng ở bất kỳ đâu trong đường dẫn của nó.
Nó sẽ giống như thế này:
Đĩa modifymedium VBoxManage.exe "C: \ path \ to \ đĩa.vdi" --compact
Ví dụ: vì đường dẫn đến tệp là C: \ Users \ chris \ VirtualBox VMs Windows 7 \ Windows 7.vdi
trong ví dụ của chúng tôi, chúng tôi sẽ chạy lệnh sau:
Đĩa modifymedium VBoxManage.exe "C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi" --compact
VirtualBox sẽ thu gọn đĩa và bạn có thể khởi động ngay máy ảo sau đó nếu muốn. Bạn tiết kiệm được bao nhiêu dung lượng tùy thuộc vào lượng không gian trống cần phục hồi.
Cũng xem xét xóa Ảnh chụp nhanh
VirtualBox cho phép bạn tạo ảnh chụp nhanh cho mỗi máy ảo. Chúng chứa một hình ảnh đầy đủ của máy ảo khi bạn tạo ảnh chụp nhanh, cho phép bạn khôi phục nó về trạng thái trước đó. Chúng có thể chiếm rất nhiều không gian.
Để giải phóng thêm dung lượng, hãy xóa các ảnh chụp nhanh bạn không sử dụng. Để xem các ảnh chụp nhanh mà bạn đã lưu cho một máy ảo, hãy chọn nó trong cửa sổ VirtualBox chính và nhấp vào nút Ảnh chụp nhanh chụp nhanh ở bên phải của Chi tiết trên thanh công cụ. Nếu bạn không còn cần một ảnh chụp nhanh, hãy nhấp chuột phải vào danh sách và chọn Xóa Xóa Ảnh chụp nhanh để giải phóng dung lượng.