請選擇 進入手機版 | 繼續訪問電腦版

NoName Team 電腦資訊討論區

 找回密碼
 我要註冊
搜索
查看: 261|回復: 9

[問題] ubuntu 和 WINDOWS有辦法做多重開機嗎?

[複製鏈接]
發表於 2018-12-17 15:50:24 | 顯示全部樓層 |閱讀模式
本帖最後由 CPSEVEN 於 2018-12-17 15:51 編輯

前一陣子在修舊機器 P4-478腳位的單核電腦 只有1GB RAM

RUN XP 用火狐看YOUTUBE都很吃力了

所以我試了ubuntu 還不錯 勉強可以看
我在硬碟的後段又加入一分隔區給XPE 有萬一的情況好維修用
所以硬碟分成3段 有windows 有ubuntu 有xpe
ubuntu安裝時是可以依現有系統自成多重開機
可是事後裝的xpe他不認識

舊電腦上又沒有UEFI bios 無法使用xor-uefi版

舊的XORBOOT也不認識ubuntu的格式
請教諸位大大 有什麼辦法可以自行添加改變多重開機的?
感謝~



發表於 2018-12-18 19:46:44 | 顯示全部樓層
本帖最後由 阿達金田一 於 2018-12-18 20:21 編輯

剛才用 vbox 測試了一下 ubuntu-16.04.5-desktop-i386  (考量到樓主是用 p4...我也不知道樓主用哪一個版本)
因為不太熟 ubuntu 所以我說一下我測試流程 ...和樓主應該是不一樣的

1個硬碟...3分區 分別是 NTFS , EXT4 , NTFS

(hd0,0) NTFS  因為懶的裝 XP 所以我是放 XPE ... 不是 ISO 是直接放檔案
開機是 NTLDR  ... 所以我把 SETUPLDR.BIN 和 RPXE.COM 放根本目錄...  SETUPLDR.BIN 改名 NTLDR
簡單說 把 XPE 先當 XP 用一下

(hd0,1) 安裝 ubuntu 用...

(hd0,2) 放 xpe iso ... (雖然我最後沒測這個...因為 grub4dos 啟動 ubuntru 是 ok 的..我就沒繼續測)

啟動分區 (hd0,0) ...

一開始...開機是 (hd0,0) XPE 正常載入...
然後我重開機 ... 用 ubuntu-16.04.5-desktop-i386 iso 光碟開機...並安裝 ubuntu
在安裝過程中...最一開始分割時...我是用 bootice 去分割...然後都 NTFS
這樣不能裝 ubuntu ... 所以在安裝 ubuntu 過程中...
我直接用 ubuntu 安裝的分割管理...
把 第2分區 (hd0,1) ... 用成 EXT4 掛到 \ ... (因為好像要這樣才能灌...不然就一直說沒 root ... 所以我猜要掛到 \ )
然後 ubuntu 安裝的分割管理 中...可以 "選擇" 開機管理程序...要安裝到哪... 我是選 第2個分割 (好像是 /dev/sda2)
PS: 這裡推測樓主應該是安裝到 整個硬碟 /dev/sda  (hd0) ... 也就是安裝到 MBR

這樣灌好...重開機...還是一樣 XPE 開機...
因為 mbr 不會刷成 grub ... 還是原本的 MS MBR -> 啟動分區 -> NTLDR
然後我用 bootice 刷 MBR 成 grub4dos mbr ... GRLDR 放到 (hd0,0)
重開機...變成進入 grub4dos 指令模式下(因為我沒用 menu.lst)... 之後我只下了3行指令就進入 ubuntu

root (hd0,1)
chainloader +1
boot

因為 ubuntu 的開機我是灌到 第2分區...所以 grub4dos 只要直接用第2分區開機就好...
還有...其實 grub4dos 也可以直接啟動 rbuntu 但不建議... 因為如上面grub4dos直接啟動分區...會比較簡單..而且是用原本的  ubuntu 的開機啟動...比較不會有問題
而且...用 grub4dos 啟動還是有可能要參考原來 ubuntu 的啟動...
ubuntu 的啟動是用 grub  ... 我看了一下我 (hd0,2) 中的 /boot/grub/grub.cfg
可以找到

search --no-floppy --fs-uuid --set=root 209fc8e3-013d-481d-b441-87142a112ecb
linux    /boot/vmlinuz-4.15.0-29-generic root=UUID=209fc8e3-013d-481d-b441-87142a112ecb ro  quiet splash $vt_handoff
initrd    /boot/initrd.img-4.15.0-29-generic

原本的 grub.cfg 沒那麼短...還有一堆前後置動作設定的指令...這3個只是加載系統主要的部份
翻成 grub4dos 就是 find  , kernel , initrd 3個指令
因為 root 知道是 (hd0,1) 所以我就省了...
grub4dos 中我用

root (hd0,1)
kernel   /boot/vmlinuz-4.15.0-29-generic root=UUID=209fc8e3-013d-481d-b441-87142a112ecb ro  quiet splash
initrd  /boot/initrd.img-4.15.0-29-generic

也是可以啟動...但有沒有問題就不知道...我這樣是有進入到 ubuntu 的桌面...也可以順利用 ubuntu 關機
這裡 UUID=209fc8e3-013d-481d-b441-87142a112ecb 大概是我 第2分區 的 EXT4 的 UUID...所以不同分區可能都不一樣
$vt_handoff 是 grub 有用到的 環境變數...因為 grub4dos 沒有...就省略掉了


另外 grub mbr  如果是 boot.img+core.img  的方式...應該會和 grub4dos mbr 衝突...因為2者大小都需要超過 1磁區(512bytes)

發表於 2018-12-18 03:27:34 | 顯示全部樓層
ˋ478腳位的還在用....我覺得你在那裏糾結這個不如花一千塊買個中古的含CPU的主機板...做一點功課肯定校能增加好幾倍....你花的時間多太多在這些上面不太值得,參考!!PS:我沒用我....我直接裝VMWARE 甚麼都有連APPLE OS也上...一個都沒少...
發表於 2018-12-18 08:14:01 | 顯示全部樓層
本帖最後由 阿達金田一 於 2018-12-18 08:19 編輯

grub4dos

如果不會...建議是 大體上 不動原本的 開機流程...
只是利用 grub4dos 的 mbr 熱鍵開機 功能... (可用 bootice 來安裝 grub4dos 的 mbr)
在不按熱鍵時...以原本的開機流程 開機 (即 ubuntu 的開機...去開 ubuntu 或 XP)
然後按熱鍵時...去載入 grub4dos (GRLDR) ...用 grub4dos 去載入 XPE

當然如果你功力夠... grub4dos 本身就可以做到 ubuntu xp xpe 3個多重開機

 樓主| 發表於 2018-12-18 15:01:16 | 顯示全部樓層
本帖最後由 CPSEVEN 於 2018-12-18 15:11 編輯

我有試過 用ramos模式可以載入ubuntu 但記憶體不夠大 到後面會失敗
如果不使用ramos模式 而是指定 partition
grub4dos沒辦法呼叫另一個系統 失敗
用bootice去編輯bcd的方式 也遇到一樣的情況 失敗

p4單核是剛好維修到 比較極端的例子 不過這cpu還有ht 不算太差
但以現在的win7來看 起碼都要8gb以上
4gb只是勉強能跑而已 加裝個防毒 再跑個火狐就被撐得死死的
現在瀏覽器都很吃記憶體><"

舊一代的雙核 intel控肉系列跟amd 4000+~6000+ 顯卡差一點
跑win7一樣都很吃力
所以才在考慮ubuntu 這種輕載系統 瀏覽網頁 用它就很順暢
一些簡單的offiice也還可以跑
要跑小遊戲單機遊戲再用回windows xp

也是順便研究一下ubuntu xubuntu
windows以外的系統  (覺得windows越來越垃圾 要求越來越高 吃記憶體跟硬碟容量跟摩爾定律一樣)


發表於 2018-12-18 15:35:15 | 顯示全部樓層
ubuntu 論壇 XP和ubuntu雙系統規劃安裝的建議
https://www.ubuntu-tw.org/module ... .php?post_id=132626


XP和Ubuntu双启动 - CSDN
https://blog.csdn.net/phiger/article/details/2454846
發表於 2018-12-18 17:02:04 | 顯示全部樓層
本帖最後由 阿達金田一 於 2018-12-18 18:14 編輯
CPSEVEN 發表於 2018-12-18 15:01
我有試過 用ramos模式可以載入ubuntu 但記憶體不夠大 到後面會失敗
如果不使用ramos模式 而是指定 partitio ...

所以我才說...大體上保留原本的開機流程

首先你應該是先安裝 XP 再安裝 ubuntu 吧
然後 ubuntu 的 開機程式 可以分別做 XP 和 ubuntu 開機 吧(我沒在用 linux 的系統不確定)
linux 的開機程式大多是用 grub/grub2 (這不是grub4dos) 或是 syslinux(isolinux)

然後在..你可以正常的使用 ubuntu 的情況下...

加上 grub4dos
簡單說 linux 開機 legacy bios 情況下是
mbr -> grub/grub or syslinux -> linun kernel ....

因為還有 XP 推測大概是 grub 開機
然後...我說的 grub4dos mbr 熱鍵是
grub4dos mbr -> 不按熱鍵時 -> 原來的 mbr -> grub/grub or syslinux -> linux kernel ....
grub4dos mbr -> 按熱鍵時 -> 搜尋 grldr -> menu.lst

所以這個方法是保留最高的開機相容... 因為只是增加開機流程(流程分支)而不是完全改掉
然後...grub 或 syslinux 也有...他的開機設定檔...也就是linux kernel 的 加載指令
要用 grub4dos 代替...其實就是把指令...改用 grub4dos 去執行
所以也不用什麼 ramos ...
grub4dos 又不是只有 ramos ...grub4dos 本意就是 grub for dos 版本 (雖然後期 dos 已經不是重點...)

其實如果你會  ubuntu 的 grub 開機的話...用 grub  其實也可以做 xpe 開機...
因為 XPE 開機應該和 XP 是差不多的...一個 NTLDR 一個 SETUPLDR.BIN
不過我映像中... XPE 除非你是整個 iso 掛載來啟動...不然好像只能放到 第1分割(啟動分割)... 不然可能啟動不了

如果要看複雜一點的說明可以看
http://linux.vbird.org/linux_basic/0510osloader.php
這個簡單說就是...legacy bios 開機流程 管理而以... 各種 mbr/pbr 引導 和 開機檔(程式) 管理而以

其實如果 3個分割區..都有各自系統的 開機引導 和 開機檔...
那用 grub4dos 加載 各分割區 的 開機引導就可以 ... 也就是
title hd00
rootnoverify (hd0,0)
chainloader +1
title hd01
rootnoverify (hd0,1)
chainloader +1
title hd02
rootnoverify (hd0,2)
chainloader +1

不過這要看你當初怎麼安裝的... linux 真心不太懂啊
因為我不知道 grub 安裝時... 分割區 的 引導 和 開機檔 是 安裝到 啟動分割 還是 系統分割
 樓主| 發表於 2018-12-27 17:16:53 | 顯示全部樓層
回頭查了一下 我想我搞錯標題了


title [03] 安裝 ubuntu 16.04 32BIT  (實驗)
find --set-root /SOURCES/ubuntu16.iso
map --mem /SOURCES/ubuntu16.iso (hd32)
#map --mem (hd0,0)/SOURCES/ubuntu16.iso (hd32)
#這樣會映射到記憶體內 記憶體容量不夠大 不能使用
map --hook
chainloader (hd32)
boot

title [04] 安裝  ubuntu 16.04 32BIT  (實驗)
find --set-root /SOURCES/ubuntu16.iso
map (hd0,0)/SOURCES/ubuntu16.iso (hd32)
map --hook
root (hd0,0)
kernel (hd32)/casper/vmlinuz boot=casper iso-scan/filename=/SOURCES/ubuntu16.iso
initrd (hd32)/casper/initrd.gz

應該是在研究如何把 ubuntu 整合到XPE的隨身碟中 用GRUB4DOS呼叫安裝 出的問題 抱歉
發表於 2018-12-28 10:35:23 | 顯示全部樓層
CPSEVEN 發表於 2018-12-27 17:16
回頭查了一下 我想我搞錯標題了

ubuntu-16.04.5-desktop-i386 版的
iso 中 boot\grub\lookback.cfg
menuentry "Install Ubuntu" {
        linux        /casper/vmlinuz  file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity iso-scan/filename=${iso_path} quiet splash ---
        initrd        /casper/initrd
}

改成 grub4dos 我是用
set ubiso=/sources/ubuntu16.iso

title Install Ubuntu
find --set-root %ubiso%
map %ubiso% (0xff)
map --hook
root (0xff)
kernel /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity iso-scan/filename=%ubiso% quiet splash ---
initrd /casper/initrd

可以進入到 安裝程式 ...後面我沒測
 樓主| 發表於 2018-12-28 13:19:21 | 顯示全部樓層
本帖最後由 CPSEVEN 於 2018-12-28 13:20 編輯

感謝
我再找時間試試看
現在手頭上還有事情^^~

感謝NONAME回來了!!!~~~

您需要登錄後才可以回帖 登錄 | 我要註冊

本版積分規則

小黑屋|手機版|NoName Team 電腦資訊討論區 |網站地圖

GMT+8, 2019-1-21 15:48 , Processed in 0.211880 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表