起動に失敗せずにルートパーティションを移動できますか?

起動に失敗せずにルートパーティションを移動できますか?

私の現在のディスクレイアウトは次のとおりです

ここに画像の説明を入力してください。

私は以下のアドバイスに従っていますhttps://unix.stackexchange.com/a/501410/674ディスクのパーティションを並べ替えます。次のステップは大丈夫ですか?

  • sda3(/) を 60G に縮小し、ディスクの最後に 204G を未割り当て領域として残します (既に実行しました)
  • sda4(/home) を未割り当て領域である 93G の前に移動します。 (この段階は進行中です。)
  • sda3(/)をディスクの終わりに、204G新しい未割り当て領域の後ろに移動し、2つの未割り当て領域(93Gと204G)を1つの297G未割り当て領域に結合します。
  • 297G 未割り当て領域を含むように sda4(/home) を拡張

私は現在Lubuntuでgpartedの2番目のステップを実行していますが、gpartedは移動するパーティションに/ bootが含まれているか、WindowsシステムパーティションC:の場合、移動したパーティションが起動しない可能性が高いと警告します。 BIOS Grubパーティション、ルートパーティション、およびプライマリパーティションがあります。 /bootパーティション sda3(/) にあります。手順3で起動に失敗せずにsda3(/)をディスクの端に移動できますか?以下に基づいてgrubを再インストールする必要があるようです。https://askubuntu.com/questions/299886/partitions-is-it-safe-to-move-partition-changing-bootそしてhttps://howtoubuntu.org/how-to-repair-restore-reinstall-grub-2-with-a-ubuntu-live-cd

修正する:上記の手順の後、ディスクのレイアウトは次のようになります。

ここに画像の説明を入力してください。

grubで何もする必要はなく、ディスクからLubuntuに正常に再起動できました。 sda3() を含むパーティションを移動し/た後に grub で何もする必要がないのはなぜですか/boot/もともと sda3( ) が占めていた領域が現在 sda4(/home) では使われていないからでしょうか。 Lubuntuが現在sda4(/ home)の空き領域である元の領域ではなく、再配置されたsda3()から起動して/いることをどうやって確認できますか?

$ cat /boot/grub/grub.cfg |grep boot
   set boot_once=true
  set boot_once=true
  if [ -z "${boot_once}" ]; then
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
        linux   /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
    initrd  /boot/initrd.img-4.15.0-45-generic
            linux   /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-45-generic
            linux   /boot/vmlinuz-4.15.0-45-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-45-generic
            linux   /boot/vmlinuz-4.15.0-44-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-44-generic
            linux   /boot/vmlinuz-4.15.0-44-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-44-generic
            linux   /boot/vmlinuz-4.15.0-43-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-43-generic
            linux   /boot/vmlinuz-4.15.0-43-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-43-generic
            linux   /boot/vmlinuz-4.15.0-42-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-42-generic
            linux   /boot/vmlinuz-4.15.0-42-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-42-generic
            linux   /boot/vmlinuz-4.15.0-39-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-39-generic
            linux   /boot/vmlinuz-4.15.0-39-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-39-generic
            linux   /boot/vmlinuz-4.15.0-38-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-38-generic
            linux   /boot/vmlinuz-4.15.0-38-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-38-generic
            linux   /boot/vmlinuz-4.15.0-36-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-36-generic
            linux   /boot/vmlinuz-4.15.0-36-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-36-generic
            linux   /boot/vmlinuz-4.15.0-33-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-4.15.0-33-generic
            linux   /boot/vmlinuz-4.15.0-33-generic root=UUID=d0fed0a4-c82a-414e-8fb2-aa10070bf938 ro recovery nomodeset 
        initrd  /boot/initrd.img-4.15.0-33-generic
    knetbsd /boot/memtest86+.elf
    linux16 /boot/memtest86+.bin console=ttyS0,115200n8

ありがとうございます。

答え1

sda3(/) を 60G に縮小し、ディスクの最後に 204G の未割り当て領域を残します。この手順を完了しました。

sda4(/home) が未割り当て領域 93G 前方に移動: このステップは進行中です。この手順を実行する前に、重要なデータをバックアップしてください。

204Gの新しい未割り当て領域の後、sda3(/)をディスクの端に移動して、2つの未割り当て領域(93Gと204G)を1つの297G未割り当て領域にマージします。この手順の前に、sda4が正常に移動されたことを確認してください。ステップ2は問題なく行われます。この手順では、/boot ディレクトリが sda3(/) にあるため、システムが起動するように GRUB ブートローダを再インストールする必要があります。この手順を実行する前に、提供されたリンクと指示を読んで理解していることを確認してください。

297Gの未割り当て領域を含むようにsda4(/ home)を拡張する:最初の3つの手順を完了したら、gpartedまたは他のディスクユーティリティを使用してsda4に未割り当て領域を追加できます。

GRUBブートに関する質問に関しては、通常/ bootディレクトリを含むパーティションを移動するときに、パーティションの新しい場所を反映するようにGRUBブートローダを更新する必要があります。ただし、新しい場所を使用しないと、GRUBは自動的にパーティションの変更を検出して起動時に調整できます。これが sda3(/) 移動後に GRUB を再インストールする必要がない理由の 1 つかもしれません。

再配置された sda3(/) から Lubuntu が起動していることを確認するには、次の点を確認してください。

端末を開き、次のコマンドを実行します。

lsblk -f

これにより、ディスクとパーティションの詳細が表示されます。 /dev/sda3 のファイルシステム UUID が /boot/grub/grub.cfg ファイルの UUID と一致することを確認します。一致すると、Lubuntuが再配置されたsda3(/)から起動していることを意味します。

オプション:/boot/grub/grub.cfgファイルの変更日時を確認して、パーティションの移動後に変更があるかどうかを確認することもできます。ファイルの変更日時がパーティションを移動した後の時刻と一致する場合、これはLubuntuが新しい場所から起動したことを示します。

答え2

/dev/sda1コアイメージは変更されていないディレクトリにあるため、GRUBを再インストールする必要はありません。コアイメージには通常、パーティションテーブルと含まれているファイルシステムタイプに必要なドライバが含まれているため、/boot/grubこの時点以降にGRUBはパーティションとファイルシステムを認識できるため、ディスクブロックの位置はもはや重要ではありません。

GRUB 構成は、ファイルシステム UUID を使用して Linux ルートパーティションを指定するようです。ルートファイルシステムをディスクに移動してもUUIDは変更されないため、カーネルはまだルートファイルシステムを見つけることができます。

GRUBコアイメージには、GRUB構成ファイルを見つけるためのパスプレフィックスが含まれています。あなたの場合は、次のようになります(,gpt3)/boot/grub。 (指定されていないディスク部分は、「GRUBコアイメージをロードしたのと同じディスク」を意味します。)あなたの/bootディレクトリはLinuxルートパーティションに含まれているようです。スロットが変更されており、3番目に変更されたパーティションスロットであるため、パスプレフィックスはまだ有効です。

パーティションツールがディスク上のパーティションの物理的な順序と一致するようにパーティションスロットを並べ替えると、GRUBは失敗します。

関連情報