Tôi đã cài đặt Ubuntu như bình thường trên một phân vùng riêng và định cấu hình máy tính thành dualboot giữa Ubuntu / XP.
Tôi đã cài đặt coLinux với Debian với hình ảnh backports có sẵn trên trang web coLinux.
Cấu hình coLinux để nó có thể gắn kết phân vùng Ubuntu, mẹo ở đây là tìm ra số phân vùng chính xác. Số phân vùng trong coLinux dường như thấp hơn số phân vùng được sử dụng khi khởi động máy tính với Ubuntu. Trong trường hợp của tôi, tôi đã phải thiết lập:
<block_device index="1" path="\Device\Harddisk0\Partition5" enabled="true" alias="hda7"/>
Khởi động coLinux với Debian với hình ảnh backports và sau khi khởi động, phân vùng ubfox trong trường hợp của tôi /dev/hda7
Để có thể khởi động Ubuntu trong coLinux, bạn cần bật một số dịch vụ tự khởi động khi khởi động, hầu hết chúng đều có phần cứng liên quan theo một cách nào đó và không được hỗ trợ bên trong coLinux. Bạn vẫn muốn chạy các dịch vụ này khi không chạy Ubuntu trong colinux. Tôi đã làm điều này bằng cách trước tiên tạo tập lệnh /etc/inid.d/colinux theo http://wiki.colinux.org/cgi-bin/DualBootSystem
Tập lệnh này tất nhiên phải được tạo trong /etc/init.d
thư mục trên phân vùng ub Ubuntu chứ không phải trên hình ảnh "debian with backports".
Khi tập lệnh này được tạo, bạn cũng cần chỉnh sửa default.colinux.xml
tập tin để nó chứa COLINUX=1
tham số khởi động, trong trường hợp của tôi:
<bootparams>root=/dev/hda8 COLINUX=1</bootparams>
Tập lệnh này hiện có thể bật một số dịch vụ tự khởi động khi bắt đầu bên trong coLinux nhưng vẫn chạy các dịch vụ này khi dualboot máy tính với ubfox. Bạn cũng phải đảm bảo chạy tập lệnh này khi khởi động bằng cách chèn các liên kết trong /etc/rcS.d
thư mục.
Bước tiếp theo là chuyển các dịch vụ bằng cách chèn các câu lệnh if bên trong các tập lệnh dịch vụ vào /etc/init.d
(trên phân vùng ubfox).
if [ -f /var/local/colinux ] ; then
exit 0
fi
Tôi đã phải tắt các dịch vụ sau khi khởi động bên trong coLinux để khởi động, coLinux bị hỏng trong khi khởi động khi bất kỳ dịch vụ nào trong số này đang chạy:
/etc/init.d/gdm
/etc/init.d/powernowd
/etc/init.d/hotkey-setup
/etc/init.d/pcmcia
/etc/init.d/vbesave
Tạo các câu thơ tùy chỉnh colinux của một số tệp khác, tập lệnh colinux trong init.d đã đề cập ở trên cho phép có phiên bản colinux và phiên bản không colinux của một số tệp khác nhau. Trong trường hợp của tôi, tôi có các phiên bản đặc biệt của các tập tin sau đây:
/etc/fstab
(coLinux gắn kết các phân vùng ntfs sử dụng smbfs thay vì ntfs read-only gắn)
/etc/network/interfaces
(Tôi đã không nhận được colinux đến việc sử dụng DHCP vì vậy nó đã hardcoded số IP thay vì)
/etc/gdm/gdm.conf
(Tôi không thực sự chắc chắn điều này được sử dụng vì gdm không thể khởi động khi khởi động, nhưng tôi có một phiên bản đặc biệt cho coLinux với tất cả [máy chủ] bị vô hiệu hóa. Nó có thể được sử dụng khi sử dụng vnc nhưng tôi không chắc có cần không)
Điều quan trọng cần nhớ là chỉnh sửa tệp chính xác khi thiết lập các tệp này theo cách này vì các tệp thông thường sẽ bị ghi đè bằng các phiên bản * -colinux hoặc * -non-colinux tại mỗi lần khởi động. Có thể thiết lập các liên kết tượng trưng thay vì ghi đè lên các tệp nhưng tôi chưa kiểm tra điều này.
Cuối cùng, bạn sẽ phải thiết lập coLinux để nó khởi động bằng phân vùng Ubuntu thay vì hình ảnh "debian with backports", điều này được thực hiện bằng cách đặt phân vùng khởi động trong tệp default.colinux.xml, trong trường hợp của tôi, nó chỉ vào /dev/hda8
<bootparams>root=/dev/hda8 COLINUX=1< /bootparams>
- Bây giờ có thể khởi động Ubuntu bằng cách chọn nó trong menu dualboot (grub) khi khởi động máy tính hoặc bằng cách khởi động XP và khởi động coLinux. Quan sát rằng khi chạy bên trong coLinux, hạt nhân Ubuntu thực sự không được sử dụng thay vào đó là nhân coLinux được sử dụng. Điều này rất quan trọng để suy nghĩ về ví dụ nếu bạn cần biên dịch lại các hạt nhân và các mô-đun hạt nhân.
Cuối cùng, đừng làm sai như tôi đã làm. Như được mô tả trong chủ đề này, tôi đặt XP / coLinux vào chế độ ngủ đông và sau đó được dualboote vào Ubuntu. Hệ thống tệp Ubuntu của tôi bị hỏng trong lần khởi động tiếp theo của XP và tôi đã quyết định thực hiện cài đặt lại toàn bộ Ubuntu.