Windows 7とCentOS 7のデュアルブートをセットアップしたかった
500GBのディスクを搭載したWindows 7マシンを使用していました。 Windowsパーティションを縮小して、CentOS 7にスペースを提供しました(約230GB)。 USB CentOS 7ネットインストールスティックを作成し、そこから起動しました。私は、CentOS 7を(ディスク全体ではなく)空き領域にインストールするのに最適な構成でインストールを実行しました。ネットインストールを行ったところ、すべてうまくいったように見えましたが、再起動するとWindowsに戻り、CentOSにアクセスできなくなりました。
USBから再起動し、cfdisk
を使用して状況を(慎重に)修正しようとしました。 CentOSのブートパーティションを選択すると、「オペレーティングシステムがない」と報告されます。また、cfdisk
は、CentOSブートでパーティションテーブルを書き込むときにパーティションテーブルを再度読み取ることができないと述べていますが、cfdisk
を再び起動すると、フラグが設定されているように見えます。
現在、USB CentOS 7ネットインストールでは、ディスク上の次のパーティションが表示されます。
## DATA
/home 168GB centos-home
## SYSTEM
/boot 500MB sda3
/ 51GB centos-root
swap 3.85GB centos-swap
「その他」のWindowsパーティションは次のとおりです。
ntfs 100MB sda1
ntfs 253GB sda2
これは問題ないように見えますが、CentOS 7のインストールに再度入ると、ルートパーティションのマウントポイントを作成する必要があることを示しています。初めてインストールしたディスクセットアップで[ここをクリックして自動的に作成するには、ここをクリックしてください]をクリックすると自動的に実行されると思っていたため、最初はこれを実行しませんでした。
そして、「CentOSシステムのレスキュー...」からcfdisk
を使用してアクセスされるパーティションテーブルは次のようになります。
Unusable 1MB
sda1 Primary ntfs 105MB
sda2 Primary ntfs 265GB
sda3 Boot Primary xfs 525MB
sda5 NC Logical LVM2_member 235GB
Logical Free space 0.03MB
前述のように、この構成で起動しようとすると、「オペレーティングシステムがありません」と表示されます。起動フラグをsda1に戻すと、Windows 7で正常に起動します。
私は(再)インストールしましたgrub2
を使用してgrub2-install
のnetinstallから/dev/sda
そしてディスクから起動すると、grub
プロンプトが表示されます。これを使用してWindowsにロードをチェーンすることができます。ただし、CentOS 7を起動しようとすると、なんらかのトレース/ダンプが表示されます。
私が使用した:
linux (hd0,msdos3)/vmlinuz-3... root=/dev/sda3
initrd (hd0,msdos3/initrd-plymouth...
boot
注:linux
はCentOSのプライマリブートパーティションだと思います
上記を試すとクラッシュします。
EPELリポジトリからyum
を使用してNTFS-3GとNTFSPROGSをインストールしました。
私は走ったgrub2-mkconfig -o /boot/grub2/grub.cfg
と再起動して、ブートメニューでWindows 7(ローダー)を見つけます。しかし、私がそれを選ぶとき、私は得ます:
error: no such device 978778...
error: hd1 cannot get C/H/S values....
これはまったく良い音ではありませんが、少なくともある程度は進歩しています。
また、内部ドライブにのみCentOS 7がインストールされており、このドライブを外部USBドライブとして使用していることにも注意してください(したがって、/dev/sdb
)。
誰かがWindowsを起動するのを手伝ってくれませんか?
私はUnixのバックグラウンドを持っていますが、ほとんどがMac OS Xを使用しています。WindowsとLinuxのデュアルブートのセットアップに常に行き詰まっています。
最後に、私のMacだけでなく、別のマシンでもCentOS 6.5システムが正常に動作しています。
間違ったWindowsパーティションをマウントした可能性があります。
100 MBまたは300 MBの小さなパーティション(Windowsのブートパーティション)を探してマウントし、コマンドを再度実行します。
それでも問題が解決しない場合は、/etc/grub.d/40_custom
の最後に以下を追加してください:
menuentry "Windows"{
set root='(hd0,0)'
chainloader +1
}
これは、Windowsブートパーティションが最初のハードディスクの最初のパーティションであることを前提としています。
grub2-mkconfig
を実行することを忘れないでください。
Windowsパーティションをマウントします。 (マウントできない場合ntfsprogs-2013.1.13-5.el7.x86_64.rpmおよびntfs-3g-2013.1.13-5.el7.x86_64.rpm =)
ルートとして実行grub2-mkconfig -o /boot/grub2/grub.cfg
CentOSブートローダーを再インストールします(LILOとGRUBのどちらでもかまいません)。ブートローダーインストーラーはマシンのOSを認識し、起動時にOSの選択肢を自動的に表示します。 CMIIW。
私は2日間、windows 7とcentos 7を使用したデュアルブートを試行してきました。簡単な手順に従ってください
インストールウィンドウ7
その後セントー7
PCを再起動すると、Windows 7の起動オプションがgrubに表示されません。
centosにブートしてsu
に切り替えます
コマンドcfdisk
を使用します
次に、ブートが書き込まれているフラグをチェックして、そのパーティションに通知します
次に、/ boot/grub2/grub.cfgでgrubファイルを開き、最初にgrub.cfgファイルをgrub.old.cfgとしてコピーしてバックアップし、ファイルを開いて編集します
menuentry "WINDOWS"{
set root='(hd0,msdos1)'
chainloader +1
}
msdosの値を、ブートフラグが指定されているパーティションで変更します。ブートフラグが/ dev/sda1にある場合はmsdos1、/ dev/sda2にある場合はmsdos2。
実行することを忘れないでくださいgrub2-mkconfig
お役に立てれば幸いです。
/etc/grub.d
にFile 11_windowsを追加する方が役立つことがわかりました。
目次:
#!/bin/sh
cat << EOF
menuentry "WINDOWS"{
set root='(hd0,msdos1)'
chainloader +1
}
EOF
次に、grub2-mkconfig
のバックアップをgrub.cfg
に保存した後、/boot/grub2
を実行しました。
結果には、起動時にgrubメニューにエントリ「WINDOWS」が追加されました。
私の場合はWindows10でしたが、同じであるはずです。
私は2日間、windows 7とcentos 7を使用したデュアルブートを試行してきました。簡単な手順に従ってください。ウィンドウ7をインストールしてからcentos 7 PCを再起動すると、Windows 7の起動オプションがgrubに表示されません。 centosスイッチで起動し、コマンドcfdiskを使用します。次に、ブートが書き込まれているフラグを確認し、そのパーティションに通知します。次に、/ boot/grub2/grub.cfgでgrubファイルを開きます。まず、grub.oldファイルをgrub.old.cfgとしてコピーしてバックアップします。ファイルとそれを編集します
menuentry "WINDOWS" {set root = '(hd0、msdos1)' chainloader +1} msdosの値を、ブートフラグが指定されているパーティションで変更します。ブートフラグが/ dev/sda1にある場合はmsdos1、/ dev/sda2にある場合はmsdos2。
Grub2-mkconfigを実行することを忘れないでください