オプティカルドライブスロットのSSDからデュアルブート

オプティカルドライブスロットのSSDからデュアルブート

Windows 7 64ビットを搭載したSony Vaio SVS15があり、ドライブケージのオプティカルドライブをSSDに交換しました。私の目標は、元のハードドライブ(SSD)にWindowsのみを維持し、2番目のドライブ(光学ドライブの場所)にArch Linuxをインストールすることです。

新しいSSDインストールがスムーズで正しく検出され、フォーマットされました。このチュートリアルの指示に従って、USBスティックからArch Linuxをインストールしました。

私が経験している問題は、コンピュータを起動するとすぐにWindowsに入り、Windowsの後にArchをインストールしたことです。どちらのドライブもGPTを使用し、Windows 7 64ビットはUEFIをサポートします。

私の質問は:ArchがあるSSD(つまり、オプティカルドライブがある場所)に問題があると思いますか?それとも私がArch / Grubをインストールした方法から来たと思いますか?

これは、一方向または別の方向に検索するのに多くの役に立ちます。

注:BIOSの起動順序にはまだ「光学ドライブ」があります。つまり、SSDと交換したときに変更されませんでした。したがって、オプションは次のようになります(現在設定されている順序で)。

  1. 内部光学ドライブ
  2. 外部機器
  3. 内蔵ハードドライブ
  4. ネットワーク

ありがとうございます!

編集する:

愚かなミスをした場合に備えて、インストールプロセスを再実行しました。それでも動作しませんが、Grub2の設定時に関連する可能性があるメッセージが見つかりました。私が入力したコマンドは次のとおりです。

grub-mkconfig -o boot/grub/grub.cfg

以前これを行いarch-chroot、/boot に 512MiB EFI パーティションをインストールしました。コマンドを実行すると、いくつかの警告と「無効なマジックナンバー」メッセージが表示されます。その後、「完了」と表示されるので、これがバグかどうかはわかりません。

[root@archiso /]# grub-mkconfig -o boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux
Found initrd image(s) in /boot: initramfs-linux.img
Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img
  WARNING: Failed to connect to lvmetad. Falling back to device scanning.
[  171.937201] FAT-fs (md126p4): bogus number of reserved sectors
[  171.940041] squashfs: SQUASHFS error: Can't find a SQUASHFS superblock on md126p4
[  171.942729] EXT4-fs (md126p4): VFS: Can't find ext4 filesystem
[  171.945366] EXT4-fs (md126p4): VFS: Can't find ext4 filesystem
[  171.948756] EXT4-fs (md126p4): VFS: Can't find ext4 filesystem
[  171.955360] FAT-fs (md126p4): bogus number of reserved sectors
[  171.957919] ntfs: (device md126p4): read_ntfs_boot_sector(): Primary boot sector is invalid.
[  171.958986] ntfs: (device md126p4): read_ntfs_boot_sector(): Mount option error=recover not used. Aborting without trying to recover.
[  171.960112] ntfs: (device md126p4): ntfs_fill_super(): Not an NTFS volume.
[  171.965184] ufs: You didn't specify the type of your ufs filesystem
[  171.965184]
[  171.965184] mount -t ufs -o ufstype=sun|sunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...
[  171.965184]
[  171.965184] >>>WARNING<<< Wrong ufstype may corrupt your filesystem, default is ufstype=old
[  171.970303] ufs: ufs_fill_super(): bad magic number
done

ベストアンサー1

ブログ投稿を読むhttp://gpuenteallott.blogspot.co.uk/2012/12/dual-boot-windows-7-and-ubuntu-with-uefi.htmlこれは、Windowsが起動時にGrubをバイパスしてインストールされている他のオペレーティングシステムを常に無視するSony Vaioコンピュータの問題のようです。著者は私に合った解決策を提供したので、以下で説明します。

注1:実際に切り替えることにした後、Arch LinuxではなくUbuntuでこれを試しましたが、ここで問題はLinuxバージョンではなくWindowsのインストール方法に関連していると思いますので、これがArchにも当てはまると思います。そうでなければ、私がArch LinuxとWindowsを使用する方法は次のとおりです。MBRパーティションをクリックし、UEFIとレガシーの間でBIOSを切り替えて、WindowsまたはArchの実行から選択します。ブートモードがUEFIに設定されるたびにWindowsが起動し、ブートモードがレガシーモードに設定されるたびにArchが起動します(他のオペレーティングシステムも表示されません)。実用的な目的のために、これはノートブックを起動するときにF2を押して切り替える必要があるたびにBIOSメニューをナビゲートする必要があることを除いて、Grubが期待するものと似ています。

  1. WindowsをインストールしてからLinuxをインストールしてください。
  2. Windowsから起動し、コマンドラインから実行します。

    1. diskpart
    2. select volume [volume_number](望むよりノート2投稿の最後に)
    3. assign letter [any unused letter (usually different from C:)]
    4. B:(または選択した文字のみ)
    5. cd EFI/Microsoft/Boot
    6. rename bootmgfw.efi bootmfgw.efi.old
  3. コンピュータを再起動すると、/EFI/Microsoft/Boot/bootmgfw.efi名前を変更したばかりのコンピュータが見つからないため、Linuxに直接移動する必要があります。

    1. 端末を開き、次のように入力します。sudo gedit /etc/grub.d/11_Windows
    2. 交換するテキストファイルに以下のコードを入力し、そのケースの物理ドライブとボリュームとhd0交換してください。gpt1私が知っている限り、そうですset root='(hd0,gpt3)
#!/bin/sh -e
echo "Adding Windows 7">&2
cat << EOF
menuentry "Windows 7"{
set root='(hd0,gpt1)'
chainloader /EFI/Microsoft/Boot/bootmgfw.efi.old
}
EOF
  1. (続き)
    1. ファイルを保存してエディタを閉じます。
    2. ファイル権限の変更:sudo chmod a+x /etc/grub.d/11_Windows
    3. コンピュータの起動時に定義したオプションがリストに表示されるようにGrubを更新します。sudo update-grub

コンピュータを再起動すると、メニューにLinuxとWindowsが表示されます。

ノート2:リンクされたチュートリアルでは、作成者はボリュームの代わりにディスクとパーティションを選択しましたが、私の場合はボリュームを指定するだけでした(実際にそうでなければ機能しません)。ボリューム、ディスク、パーティション番号は、コンピュータとソニーからWindowsをインストールした方法によって異なります。私が知っているのは3冊です。ボリュームを見つけるには、//と入力して他の利用可能なオプションを確認するボリュームが見つかるremove letter [letter]まで、プロセス(毎回割り当てられた文字の削除)を繰り返す必要があります。/EFIbootmgfw.efilist volumelist disklist partition

おすすめ記事