為什麼使用 LiveCD/LiveUSB 和安裝 Ubuntu 之間的情況會改變?

為什麼使用 LiveCD/LiveUSB 和安裝 Ubuntu 之間的情況會改變?

以下是我使用 Ubuntu LiveCD 或 LiveUSB 時遇到的一些奇怪的經驗:

1) 我有一台原廠 Chromebook (CR-48)。在 Ubuntu 12.04.0 發布後,我最終刪除了 ChromeOS,只安裝了它。它就像一個魅力。大約一年後,我破壞了一些東西,並在 LiveUSB 上使用 12.04.3 重新安裝了 Ubuntu。 LiveUSB 運作完美 - 螢幕解析度、wifi、觸控板都運作良好。我安裝了它(一次安裝更新,一次從 USB 驅動器存儲),兩次螢幕解析度、wifi 和觸控板都壞了。

我最終下載了 12.04.0 並安裝了它,然後升級到 12.04.3,一切再次完美運行。

2) 我購買了東芝 Portege z935,LiveUSB 工作正常,即 wifi。安裝後,wifi速度極慢,基本上無法載入任何頁面。答案是藍牙與 wifi 有某種衝突,必須停用藍牙才能讓 wifi 正常運作。然而,兩者都可以在 LiveUSB 版本中啟用,沒有問題。

所以我的問題是,為什麼會發生這種情況?為什麼 LiveUSB 版本一切正常,但安裝到系統上後卻出現問題?是否有不同的安裝 Ubuntu 的方法,可以完全按照 LiveUSB 版本(驅動程式、設定等)進行安裝?安裝過程中是否存在我可以以某種方式覆蓋的假設?

答案1

我在為朋友安裝 Ubuntu 時也有類似的經驗。 LiveUSB 開箱即用,但當 Ubuntu 啟動時,由於安裝的視訊驅動程序,他出現了嚴重的撕裂現象。他的系統無法使用。

所以,我的猜測是,LiveUSB 對您的所有硬體使用一些非常通用的驅動程序,並且它們可以正常工作。

在安裝過程中,Ubuntu 會找到適合您硬體的確切驅動程序,並將它們安裝到您的硬碟上。這樣,當您啟動時,您的硬體將透過新驅動程式與軟體進行通信,這可能會破壞 LiveUSB 中一些效果更好的功能。

免責聲明:這是一個猜測,我沒有證據支持它。

答案2

理論上,您可以使用 ISO 作為來源,使用 /dev/sdX 作為目標,將即時媒體複製到硬碟dd,但這樣您將擁有即時媒體而不是安裝。我認為你不會喜歡最終的結果。

答案3

LiveBoot/CD 在稱為 RAM 磁碟的虛擬磁碟上運作。簡單的思考方式是,它使用 RAM 的一部分作為硬碟(因此它與實際磁碟分離)。

實際使用的驅動程式不一定是完整版本上安裝的驅動程序,LiveBoot 將有一個「更簡單」的版本。當我這麼說時,我的意思是該驅動程式不一定專門適合您的計算機,而是一個通用驅動程序,適用於“每個”顯示卡。 (就像啟動到安全/後備模式時將載入沒有進階設定的驅動程式一樣)。這樣做是為了在更廣泛的電腦上實現相容性(因為 LiveBoot 旨在成為任何電腦上完全可用的系統)

安裝後,您的作業系統安裝會查看系統上安裝了哪些硬件,以及哪些驅動程式可用於該硬體。然後它將安裝並將您的系統指向已安裝的驅動程式。

可能的解決方案:

如果您正在將其安裝為新系統(即您不介意嘗試找到可行的方法),您可以隨時嘗試替代版本查看驅動程式/設定是否適用於此版本。

可能的替代方案:您可以進行伺服器安裝,並僅安裝您需要的內容,但這需要研究,並且可能有點難以承受,並且不需要。

至於下面的答案(當我寫這篇文章時),它們都可以組合在一起以形成一個可能的答案。

您可能希望查看/思考的其他一些事情:

  • 做一個從頭開始的 LiveCD, 或者LiveCD客製如果您知道 LiveCD 中的驅動程序,您也許可以根據個人用途自訂 LiveCd(並更改正在安裝的驅動程式)。

  • (根據 ElderGeek 關於將 LiveBoot 放在實體磁碟上的答案的「操作方法」)您需要:

    • 為您的 LiveCD 映像建立一個分割區(使其可啟動)
    • 用於dd將 LiveBoot .iso 放入新分割區(範例格式為dd if=/dev/sdc1/nameof.iso of=/dev/sda1/)檢查man dd是否有dd可以使用的不同選項。
    • 操作您的 GRUB 設定以指向包含 LiveBoot 的分割區(在終端類型中info -f grub -n 'Simple configuration'並讀取)我懷疑這sudo grub-mkconfig會將其作為作業系統使用。
    • 看著(關於如何使 LiveBoot 資訊持久化)您需要將 USB 所在的位置變更為分割區所在的位置。

    • 執行此操作時,您可能/仍會遇到休眠等問題,或 LiveCD 的任何其他問題。

  • 載入 LiveBoot/CD 可能會更容易確定正在使用哪些驅動程式(lsmodcat /proc/modules尋找一些資訊)並嘗試使用已安裝版本上的驅動程式。

答案4

RAM 和驅動程式是兩件事。由於 LiveCD 會耗盡 RAM,這可能是個問題。還有驅動程式和實際硬體衝突。 LiveCD 實際上並未安裝在電腦上,您是從它啟動的。這就是為什麼當我安裝 Ubuntu 時 hibernate 不起作用。

相關內容