Tôi tìm giải pháp cho vấn đề của riêng tôi. Nó không đơn giản như vậy. Đối với tôi là một người dùng Ubuntu thiếu kinh nghiệm, điều đó thật khó hiểu. Cuối cùng, tôi quyết định không làm điều này. Nhưng, có lẽ ai đó có một cách khác để làm điều này tốt hơn tôi.
Cài đặt hệ điều hành Ubuntu mới
Cài đặt hệ điều hành Ubuntu cùng với hệ điều hành chính của bạn. Trong trường hợp của tôi, đó là linux mint. Nhưng, tôi thấy không có sự khác biệt trong quá trình giữa bạc hà và Ubuntu vì bạc hà dựa trên Ubuntu.
Tạo tệp trung bình cho hộp ảo để đọc HĐH mới
Sau khi cài đặt xong. Bạn cần tạo một phương tiện cho VirtualBox để đọc phân vùng chứa hệ điều hành Ubuntu được cài đặt mới. Cách bạn làm là như thế này:
VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sdX -partitions Y,Y
X
Ổ cứng của bạn ở đâu và Y
là số parition của bạn. Không bao gồm phân vùng chứa khởi động hệ điều hành chính của bạn. Bởi vì chúng tôi cần phương tiện khởi động khác nhau cho HĐH mới không chứa hệ điều hành chính. Bạn có thể cần phải chạy như root.
Tạo Medium cho Virtual Box để khởi động từ HĐH mới
Để tạo phương tiện khởi động, chúng tôi sẽ tạo một hình ảnh ISO từ tệp khởi động hệ điều hành mới. Đầu tiên, chúng ta phải làm điều này trong hệ điều hành chính của chúng ta. Khởi động lại máy tính và khởi động từ hệ điều hành chính. Trong trường hợp của tôi, tôi khởi động lại vào Linux Mint.
Chúng ta cần tạo một thư mục tạm thời để tạo tệp khởi động iso. Vì vậy, một khi Mint đã sẵn sàng để thực hiện công việc. Tạo một thư mục. Tôi giả sử chúng ta làm điều này trong Desktop. Chúng tôi sẽ làm như thế này:
Đi tới Máy tính để bàn.
Tạo thư mục mới và đặt tên là "iso".
Mở thư mục iso đó và tạo lại một thư mục mới có tên "boot".
Mở thư mục khởi động đó và tạo một thư mục mới một lần nữa có tên là "grub".
Nếu chúng ta đang làm điều này thông qua thiết bị đầu cuối, tất cả những gì chúng ta phải làm chỉ là gõ dòng này và nhấn enter
mkdir -p ~/Desktop/iso/boot/grub
Terminal là một công cụ tuyệt vời nếu chúng ta biết những gì chúng ta đang làm! ;)
Khi các thư mục được tạo, chúng ta cần sao chép các tệp khởi động Ubuntu OS mới vào thư mục đó. Vì vậy, hãy mở phân vùng nơi chúng tôi cài đặt Ubuntu OS và sau đó sao chép tất cả các tệp từ /usr/lib/grub/i386-pc/
sang ~/Desktop/iso/boot/grub
. Và sao chép tất cả các tập tin từ /boot/grub/grub.cfg
đến ~/Desktopiso/boot/grub
.
Một lần nữa, nếu bước này được thực hiện thông qua thiết bị đầu cuối, chúng ta nên làm như thế này:
cp /usr/lib/grub/i386-pc/* ~/Desktop/iso/boot/grub
cp /boot/grub/grub.cfg ~/Desktop/iso/boot/grub
Mở grub.cfg ~/Desktop/iso/boot/grub/grub.cfg
bằng trình soạn thảo văn bản. Cảnh báo không phạm sai lầm nào, lỗi mà bạn sẽ chỉnh sửa ở đây không phải là lỗi trong đó /boot/grub/grub.cfg
. Nếu bạn chỉnh sửa lần cuối tôi đã đề cập, khởi động hệ điều hành chính của bạn sẽ thất bại.
Khi grup.cfg mở. Xóa menuentry
không liên quan đến hệ điều hành Ubuntu mới mà chúng tôi đã cài đặt. Nó thường trông như thế này:
### Begin /etc/grub.d/your_main_os ###
menuentry 'The text displayed in boot menu' {
----
some code we don't need understand for this
----
}
### End /etc/grub.d/your_main_os ###
Xóa mọi mục nhập menu không liên quan đến hệ điều hành Ubuntu mới mà chúng tôi đã cài đặt. Chúng ta không cần chúng tồn tại trong VirtualBox phải không?
Tiếp theo, chuyển đổi các thư mục có tất cả các tệp được bao gồm thành iso với điều này:
grub-mkrescue -o boot.iso ~/Desktop/iso
Lưu ý: Nếu bạn gặp lỗi trong khi thực hiện việc này, bạn cần cài đặt xorriso
trước. Với cái này:
sudo apt-get install xorriso
Tập tin Iso để khởi động được tạo ra. Sẽ tốt hơn nếu chúng ta đặt tệp iso đó vào cùng một thư mục với tệp trung bình mà chúng ta đã tạo.
Đặt Máy ảo có thể khởi động hệ điều hành Ubuntu chính xác đã cài đặt
Chúng tôi đã tạo phương tiện để đọc HĐH mới được cài đặt và chúng tôi đã tạo ra trình tải khởi động cho VirtualBox một cách độc lập. Điều cuối cùng là cấu hình, Virtual Box nên làm điều này như thế nào.
Đi đến nơi chúng tôi đặt của chúng tôi medium.vmdk
. Mở terminal ở đó và làm điều này:
chmod -v 666 medium.vmdk
Khi thay đổi root medium.vmdk
và boot.iso
cho phép tập tin. Chúng tôi đã là chủ sở hữu của các tập tin.
Mở VirtualBox. Tạo một máy mới. Khi tùy chọn Ổ cứng cung cấp tùy chọn, hãy chọn use an existing virtual hard drive
và lấymedium.vmdk
Hoàn thành nó, nhưng đừng chạy nó. Với máy mới được chọn, mở cài đặt.
Trong phần Lưu trữ, nếu không có bộ lưu trữ CD, hãy tạo bộ nhớ mới. Sau đó tạo mount boot.iso
mà chúng ta đã tạo trong bộ lưu trữ CD đó.
Trước khi đóng Cài đặt, hãy đi tới phần Hệ thống để đảm bảo. Bộ lưu trữ CD chứa boot.iso
được đọc trước tiên trước Đĩa cứng. Bằng cách đó, Virtual Box sẽ khởi động từ CD để đọc HĐH mới được cài đặt.
Hoàn thành. Và chúng ta có thể chạy HĐH được cài đặt mới cả từ Máy ảo và từ máy thật.
Ghi chú quan trọng
Mặc dù chúng tôi có thể khởi động nó từ hai cách. Có một số vấn đề tôi tìm thấy.
Bất cứ khi nào chúng tôi khởi động từ máy thật và sau đó cố gắng khởi động nó từ máy ảo thì đó là lỗi. Bởi vì trạng thái ổ đĩa vật lý được thay đổi mà không medium.vmdk
biết nó. Vì vậy, chúng ta phải tạo một phương tiện mới và thay đổi quyền đó một lần nữa để có thể khởi động từ máy ảo. Nhưng, chúng ta không cần phải tạo mới boot.iso
.
Bởi vì địa chỉ MAC từ cả hai máy là khác nhau. HĐH sẽ bị nhầm lẫn khi cố gắng định cấu hình cài đặt mạng. Trong trường hợp của tôi, tôi đã cài đặt Ubuntu Server làm HĐH mới và mỗi khi tôi khởi động từ các máy khác nhau, nó sẽ đưa ra một thông báo như "Chờ cấu hình mạng ..." trong khoảng 2 phút rồi khởi động.
Đó là nó. Giải pháp của tôi cho vấn đề của riêng tôi.