Linux

如何將我的 Linux 安裝 /boot/ 和其他重要部分移動到 SSD

  • December 28, 2018

我正在使用帶有 mint 和 windows 10 的雙啟動系統(在單獨的 SSD 上)。我只是不再需要 Windows,並使用 gparted 從我的 SSD 中刪除了所有與 Windows 相關的啟動和數據。現在它處於未分配狀態。我想要做的是將我的 Linux 啟動數據移動到 SSD。(我的 linux 分區是 150 GB,而 SSD 是 120 GB)

這是我的磁碟結構。

在此處輸入圖像描述

在此處輸入圖像描述

編輯:etc/fstab 資訊 在此處輸入圖像描述

我該怎麼辦?

您可能需要減少 sda5 中包含 123Gb 的文件數量,以適應具有 111G 容量的 sdb。那是問題嗎?

在 sdb 上為您的 Linux 創建一個新分區,也可能是一個交換分區。如果您的電腦具有 UEFI BIOS,那麼您將需要一個 ESP 分區。我想 123Gb 有一些可以刪除或移動到 USB 驅動器的文件。你在 USB 上使用 sysrescuecd 嗎?這使得分區和複製更容易。

所以如果你想在 sda5 上複製 Linux 說 sdb2 然後這樣做:

  1. 使用 gparted 創建分區 sdb2
  2. 格式化分區 sdb2 可能是 ext4
  3. 創建掛載點 /mnt/sdb2 和 /mnt/sda5
  4. 將 /dev/sdb2 掛載到 /mnt/sdb2
  5. 將 /dev/sda5 掛載到 /mnt/sda5
cd /mnt/sda5
cp -a bin sbin etc usr var lib boot tmp root home /mnt/sdb2/    

不要複製 /dev /proc /sys 或 /mnt 目錄!!!如果使用 sysrescuecd 並且您的 sda5 沒有執行,這可能不是問題。如果從 sda5 執行,那麼嘗試複製這些目錄將導致遞歸循環並非常快速地填充無限磁碟。

   cd /mnt/sdb2
   mkdir /dev /proc /sys /mnt

這些空目錄在引導時由核心填充。

引導目錄取決於您是否使用 EFI,因為這可能需要使用 EFI 安裝在 /boot/efi 的 ESP 分區。如果 ESP 分區目前未掛載到舊 linux 中的 /boot/efi,則應將 /boot 的內容從舊 linux 複製到新 linux 或確保 /boot/efi 為空並將 ESP 目錄放在fstab 被掛載到新的 /boot/efi。

然後編輯 /etc/fstab 以正確掛載新分區。您可以使用 /dev/sdb2 類型標籤而不是 UUFI 程式碼來開始。嘗試在舊安裝中更新 grub,看看它是否可以為 sdb2 創建 Grub 菜單。如果是這樣,那麼引導到新的 sdb2。

也許只是將您的 linux 重新安裝到新的 SSD 會更容易,然後您可以將所需的文件從舊家複製到新家。如果您的舊 linux 是定制的,那麼舊的安裝文件可以復製到新的 linux 中。

EDIT1:添加 /lib 目錄。

EDIT2:試圖澄清 /boot 目錄和 ESP 分區。

引用自:https://unix.stackexchange.com/questions/489352