Saya baru-baru ini menginstal CentOS 7 pada mesin yang telah menjalankan Windows 7. Saya melakukan instalasi dual boot dan menginstal CentOS di sebuah partisi. Tetapi ketika saya menyalakan mesin saya, itu hanya memberi saya dua opsi CentOS. Itu tidak memberi saya pilihan untuk memilih untuk boot Windows 7. Bagaimana saya bisa menambahkan windows 7 kembali ke opsi boot?
CATATAN: Saya membaca posting ini berjudul: CenTOS 7 dual boot dengan windows , tetapi /grub
folder saya sepertinya hanya memiliki splash.xpm.gz
file di dalamnya tanpa file lain. Juga, saya baru mengenal Linux dan membutuhkan sesuatu yang lebih banyak selangkah demi selangkah.
EDIT # 1
Saya mendapatkan hasil berikut di baris perintah:
[root@localhost home]# sudo update-grub
sudo: update-grub: command not found
[root@localhost home]# sudo grub-mkconfig
sudo: grub-mkconfig: command not found
Juga, saya sedang meneliti kemungkinan bahwa perintah ini mungkin tidak berlaku untuk CentOS. Sebagai contoh dalam U&L T&J ini berjudul: " Setara dengan pembaruan-grub untuk sistem RHEL / Fedora / CentOS? ", Serta T&J ini berjudul: " Menginstal Centos 7 setelah Windows dan tidak dapat boot ke CentOS " tampaknya menyiratkan bahwa saya harus menginstal ulang grub2. Tetapi bagaimana saya melakukannya? Saya baru saja belajar Linux.
EDIT # 2
Perintah berikut ini berfungsi. Berikut hasilnya:
[root@localhost home]# sudo grub2-mkconfig 2>/dev/null
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
set pager=1
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="${saved_entry}"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
terminal_output console
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'CentOS Linux, with Linux 3.10.0-123.el7.x86_64' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-123.el7.x86_64-advanced-77a053a9-a71b-43ce-a8d7-1a3418f5b0d9' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod xfs
set root='hd0,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint- efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 --hint='hd0,msdos5' 589631f1-d5aa-4374-a069-7aae5ca289bc
else
search --no-floppy --fs-uuid --set=root 589631f1-d5aa-4374-a069-7aae5ca289bc
fi
linux16 /vmlinuz-3.10.0-123.el7.x86_64 root=UUID=77a053a9-a71b-43ce-a8d7-1a3418f5b0d9 ro rd.luks.uuid=luks-a45243be-2514-4a81-b7a1-7e4eff712d2d vconsole.font=latarcyrheb-sun16 crashkernel=auto vconsole.keymap=us rd.luks.uuid=luks-5349515e-a082-4ff2-b035-54da7b8d4990 rhgb quiet
initrd16 /initramfs-3.10.0-123.el7.x86_64.img
}
menuentry 'CentOS Linux, with Linux 0-rescue-369d0c1b630b48cc8ef010ceb99bc668' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-369d0c1b630b48cc8ef010ceb99bc668-advanced-77a053a9-a71b-43ce-a8d7-1a3418f5b0d9' {
load_video
insmod gzio
insmod part_msdos
insmod xfs
set root='hd0,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 --hint='hd0,msdos5' 589631f1-d5aa-4374-a069-7aae5ca289bc
else
search --no-floppy --fs-uuid --set=root 589631f1-d5aa-4374-a069-7aae5ca289bc
fi
linux16 /vmlinuz-0-rescue-369d0c1b630b48cc8ef010ceb99bc668 root=UUID=77a053a9-a71b-43ce-a8d7-1a3418f5b0d9 ro rd.luks.uuid=luks-a45243be-2514-4a81-b7a1-7e4eff712d2d vconsole.font=latarcyrheb-sun16 crashkernel=auto vconsole.keymap=us rd.luks.uuid=luks-5349515e-a082-4ff2-b035-54da7b8d4990 rhgb quiet
initrd16 /initramfs-0-rescue-369d0c1b630b48cc8ef010ceb99bc668.img
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_ppc_terminfo ###
### END /etc/grub.d/20_ppc_terminfo ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-386ED4266ED3DB28' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 --hint='hd0,msdos2' 386ED4266ED3DB28
else
search --no-floppy --fs-uuid --set=root 386ED4266ED3DB28
fi
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
sumber
Jawaban:
Ini biasanya diperbaiki dengan menjalankan skrip mendeteksi sistem operasi yang diinstal dan menghasilkan file konfigurasi boot loader (
grub2
dalam hal ini). Pada CentOS 7, itu seharusnyagrub2-mkconfig
.Periksa apakah windows terdeteksi. Jalankan
grub2-mkconfig
tetapi buang outputnya:Output akan terlihat mirip (tetapi tidak identik) dengan apa yang ditunjukkan di atas. Pastikan Windows terdaftar.
Jika Windows terdaftar pada langkah sebelumnya, silakan dan simpan file konfigurasi baru. Buat cadangan dulu, untuk jaga-jaga.
Jika semuanya berjalan dengan baik, Anda sekarang harus dapat reboot ke Windows.
sumber
grub2-mkconfig > /dev/null
yang harus saya gunakan? Juga, apakah ini akan bekerja dari mode penyelamatan, jika linux tidak bisa boot?> /dev/null
membuang output. Langkah ini hanya untuk memeriksa apakah Windows terdeteksi. Itu tidak melakukan apa-apa. Adalahsudo grub2-mkconfig -o /boot/grub2/grub.cfg
yang menulis file konfigurasi baru. Perhatikan juga bahwa perintah pada sistem berbasis Debian sederhanasudo update-grub
. Menjalankan ini dari sistem penyelamatan bisa berhasil tetapi Anda perlu beberapa hal lain terlebih dahulu. Lihatlah jawaban saya di sini .Menindaklanjuti jawaban oleh @terdon - ketika Anda melakukan langkah-tes, dan grub2-mkconfig tidak menemukan partisi Windows. Selanjutnya, pastikan Anda telah menginstal paket "ntfs-3g", sehingga sistem Linux Anda dapat membaca partisi Windows.
Setelah menginstal itu, ketika Anda menjalankan
... Anda akan melihat boot windows terdaftar. Jika entri / entri lainnya OK, silakan dan tulis.
sumber
--enablerepo epel
sakelar untuk perintah pertamaSaya menemukan masalah ini ketika menginstal CentOS 7.0. Windows pada awalnya tidak terdaftar dalam output dari grub2-mkconfig.
Untuk menginstal ntfs-3g seperti yang disarankan dalam jawaban lain, saya harus menginstal epel-release:
Cukup mencoba
sudo yum --enablerepo epel install ntfs-3g
menghasilkan repositori tidak ditemukan pesan.Instalasi epel-release memungkinkan instalasi ntfs-3g. Dari sana, partisi Windows terdaftar di grub2-mkconfig. Langkah-langkah dalam jawaban sebelumnya kemudian memberi opsi untuk memilih windows saat boot.
sumber
Ringkas jawaban oleh @terdon @JosephK dan @clk untuk memformalkan prosedur lengkap.
Tambahkan repositori epel
Instal paket ntfs-3g
Jalankan
grub2-mkconfig
perintah dan periksa apakah entri 'Windows' terdeteksi.Perbarui
grub.cfg
file.sumber