Cara menginstal Windows dan linux pada drive terpisah sehingga booting mereka independen

0

Saya memiliki sistem dengan firmware UEFI, dan saya akan menambahkan dua drive. Saya ingin menginstal Windows 7 di satu dan distro linux di yang lain. Saya ingin mengatur agar jika satu drive offline, saya dapat mem-boot dan mengoperasikan OS lainnya dengan andal , menyimpan keluhan tentang partisi data yang hilang.

Rencana saya adalah menginstal Windows terlebih dahulu dengan hanya satu drive yang terhubung. Partisi drive sebagai GPT dan instal. Windows akan membuat partisi EFI dan menambahkan entri boot UEFI-nya.

Kemudian hubungkan drive lain - jadi keduanya online - dan beri tahu installer linux untuk membuat partisi EFI -nya pada drive ke-2 dan instal bootloader-nya di sana. Saya memutuskan antara OpenSuse Tumbleweed dan salah satu distro berbasis Arch. Apakah mereka akan mengizinkan saya melakukan ini pada waktu instalasi?

Jadi entri boot UEFI untuk Windows menunjuk ke Drive1 \ EFI dan untuk linux, menunjuk ke Drive2 \ EFI. Entri-entri ini harus mengidentifikasi partisi melalui UUID. Saya akan menggunakan menu boot UEFI saat startup untuk memilih OS.

Apakah rencana saya layak? Di linux, apakah alamat perangkat drive akan berubah (sdb -> sda) jika hanya ada satu drive yang rusak?

Apakah ini dapat dilakukan melalui mode BIOS / MBR? Jika ini tidak bisa dilakukan sama sekali, mengapa tidak?

Terima kasih.

PS Saya memindai sebagian besar pertanyaan terkait yang ditampilkan, tetapi tampaknya tidak ada yang memiliki persyaratan atau keadaan yang sama. Jika ada, dengan jawaban , beri tahu saya.

Gyan
sumber

Jawaban:

1

Saya pikir UEFI dapat secara otomatis mengatasinya. Setidaknya itu harus menemukan kedua Partisi EFI, sama seperti itu akan menemukan Partisi EFI pada DVD yang dimasukkan atau pada USB Sticks.
Anda dapat mengonfigurasi pesanan dalam UEFI secara manual, atau Anda dapat menekan tombol saat memulai dalam banyak kasus yang memungkinkan Anda memilih apa yang akan di-boot.
Yup, distro akan memungkinkan Anda melakukan itu pada waktu instalasi, tetapi tergantung pada apa yang Anda instal, Anda mungkin harus melakukan lebih atau kurang pekerjaan. Antergos misalnya secara khusus meminta partisi / boot / efi dan Anda dapat membuatnya jika tidak ada - hanya google saja jika Anda tidak dapat menemukannya pada waktu pemasangan, ini adalah hal-hal dasar yang harus disebutkan di suatu tempat untuk setiap distro .

Saya tidak tahu tentang BIOS / MBR, tapi saya pikir itu mungkin bahkan dengan UEFI.

Sunting:
Seharusnya tidak perlu menghubungkan mereka satu demi satu. Seharusnya bekerja dengan baik dengan keduanya terhubung dari awal.

clocktown
sumber
1

Apa yang Anda usulkan agak umum pada masa boot-only BIOS, dan bekerja cukup baik dalam konteks itu. Ada komplikasi dalam booting EFI-mode, meskipun: Di bawah EFI, boot loader disimpan di Partisi Sistem EFI (ESP) menggunakan nama file semi-arbitrary. Untuk memberi tahu komputer apa boot loader yang akan digunakan, nama file boot loader (termasuk identifikasi partisi tempat mereka berada) disimpan di NVRAM. Masalahnya adalah banyak EFI akan secara otomatis menghapus entri NVRAM yang mengarah ke file yang tidak ada. Dengan demikian, setelah Anda menghapus disk dari komputer, EFI dapat menghapus referensi ke boot loader-nya, dan ketika Anda pasang kembali disk itu , EFI tidak akan lagi dapat di-boot - setidaknya, bukan tanpa cara untuk mengembalikan entri NVRAM-nya.

Saya ingin menekankan bahwa tidak semua EFI melakukan ini; beberapa meninggalkan entri NVRAM yang tidak valid pada tempatnya, yang berarti bahwa mereka akan terus bekerja setelah Anda menghapus dan kemudian memulihkan hard disk. Saya tidak yakin tentang persentase komputer yang menghapus entri NVRAM; Anda hanya perlu memeriksa ini sendiri.

Salah satu cara yang mungkin untuk mengatasi masalah ini adalah dengan menggunakan "nama file fallback," yang EFI/BOOT/bootx64.efi(untuk sistem x86-64 / AMD64 / x64) pada ESP. Boot loader dengan nama file ini diluncurkan jika firmware tidak dapat menemukan loader boot lain yang valid. Dengan demikian, Anda bisa menyalin atau mengganti nama boot loader normal OS dengan nama ini untuk membuatnya berfungsi; atau Anda bisa meletakkan boot manager di tempat itu. (Boot manager memungkinkan Anda memilih OS mana yang akan di-boot; boot loader memuat kernel OS ke dalam memori. Beberapa program, seperti GRUB, melakukan kedua hal tersebut.) Sesuatu seperti boot manager saya yang barumungkin bermanfaat untuk ini. Secara teori, menempatkan rEFInd di posisi mundur di kedua disk dan menghapus entri NVRAM untuk Windows dan Ubuntu harus bekerja dengan cukup baik, tetapi ada satu komplikasi: Banyak EFI memperlakukan boot loader Windows ( EFI/Microsoft/Boot/bootmgfw.efi) seolah-olah itu adalah nama file fallback lain. Ini mungkin dipromosikan melalui nama file cadangan biasa, sehingga sistem dapat boot ke Windows jika disk Windows diinstal.

Perhatikan bahwa, jika komputer menghapus entri NVRAM yang tidak valid dan Anda bergantung pada nama file cadangan, booting bisa menjadi tidak dapat diprediksi. Yaitu, komputer mungkin pergi ke Windows satu kali dan Linux lain kali, tergantung pada apa yang terakhir kali boot, disk apa yang telah dicolokkan saat terakhir kali boot, dll. Anda harus dapat menggunakan komputer yang dibangun -dalam boot manager untuk memaksa boot ke OS tertentu, tetapi alat ini sering canggung dan kadang-kadang tidak dapat diandalkan.

Semua ini membuat jawaban untuk pertanyaan mengapa Anda ingin dapat menghapus disk penting. Di bawah EFI, membiarkan kedua disk Anda tetap terhubung sepanjang waktu cenderung lebih mudah daripada menukarnya, seperti yang Anda katakan ingin Anda lakukan. Jika Anda ingin mengurangi kemungkinan salah satu OS merusak file yang lain, Anda mungkin lebih baik dengan cadangan yang baik dan perencanaan yang baik dari partisi mana setiap OS diizinkan untuk membaca dan menulis.

Bergantung pada kebutuhan Anda, opsi di antara adalah membiarkan satu disk terinstal secara permanen dan menempatkan boot loader kedua OS pada disk tersebut. Anda kemudian dapat mencabut disk kedua sesuai kebutuhan. Perlu diketahui, bahwa banyak distribusi mengkonfigurasi GRUB untuk bergantung pada file di /bootdirektori Linux , jadi jika Anda ingin membuat disk Linux tidak dapat dicolokkan, Anda mungkin perlu meletakkan /bootpartisi pada disk yang diinstal secara permanen. Atau, Anda bisa menjadi ahli dalam GRUB untuk menjaga konfigurasi dan file pendukungnya di ESP; atau Anda bisa menggunakan sesuatu selain GRUB. Sebagai alternatif kasus ekstrim, Anda dapat memiliki disk yang sangat kecil (bahkan USB flash drive) dengan ESP dan, jika perlu, /bootpartisi, dan menggunakan disk terpisah untuk sebagian besar instalasi setiap OS.

Pilihan lain adalah mengandalkan Modul Dukungan Kompatibilitas (CSM), yang menyediakan dukungan untuk booting mode BIOS (alias "lawas"). Anda dapat menginstal Windows dan Linux dalam mode BIOS dan mem-boot komputer seperti yang Anda lakukan sepuluh tahun lalu. Mengontrol CSM membutuhkan keahlian tertentu; mudah untuk secara tidak sengaja boot dalam mode EFI daripada mode BIOS (atau sebaliknya), dan jika Anda tidak terbiasa dengan itu, Anda mungkin bahkan tidak menyadari apa yang telah Anda lakukan sampai Anda telah sepenuhnya menginstal OS dan akhirnya tidak mem-boot seperti yang Anda harapkan. Lihat halaman saya ini untuk informasi lebih lanjut tentang hal ini.

Rod Smith
sumber
Terima kasih atas jawaban yang menggugah pikiran. Saya akan mengunyahnya besok. Tapi alasan saya untuk pengaturan ini bukan portabilitas. Dalam satu atau dua bulan terakhir, saya memiliki dua komputer kehilangan drive mereka karena suara mengklik yang ditakuti. Kedua drive sudah tua dan keduanya memiliki sebagian besar data penting yang didukung. Tetapi komputer-komputer itu mati sampai penggantian tiba.
Gyan
Kedua kalinya terjadi beberapa hari yang lalu. Jadi saya ingin OS yang dapat di-boot secara independen pada setiap drive dengan data inti yang bekerja dicadangkan dalam (dekat) waktu nyata ke drive lain. Jadi ketika seseorang pergi, comp masih berfungsi dan data penting aman dan dapat digunakan. RAID terlalu mahal karena banyak data tidak perlu redundansi waktu nyata dan secara teratur didukung eksternal. Saya tidak terikat dengan skema yang saya jelaskan di Q tetapi akan menyambut semua yang mencapai tujuan yang sama.
Gyan
Dalam hal ini, saya sarankan agar kedua hard disk tetap terpasang setiap saat. Anda dapat memiliki ESP terpisah, satu di setiap disk, memegang boot loader untuk OS terkait. Jika satu disk gagal total, OS lainnya akan tetap dapat dibooting, walaupun Anda mungkin perlu menggunakan boot manager bawaan komputer untuk memilih boot loader, terutama jika Anda tidak segera menghapus disk yang gagal.
Rod Smith
Ya, itu rencananya :) Apakah ini mungkin menggunakan BIOS / CSM boot di partisi MBR?
Gyan
Ya, jika kedua disk tetap terinstal setiap saat dan OS serta bootloadernya diisolasi ke disk tersebut, itu akan bekerja dengan cara yang sangat mirip untuk booting mode-BIOS atau mode-EFI. Perbedaan muncul ketika Anda menghapus satu disk; yang dapat (tergantung pada EFI Anda) memicu penghapusan entri bootloader untuk bootloader yang disimpan pada disk tersebut di bawah EFI, sedangkan dengan BIOS, entri tersebut akan ditambahkan kembali ketika Anda mengembalikan disk. Mengetahui cara menggunakan efibootmgr(di Linux) atau EasyUEFI (di Windows) dapat membantu Anda pulih dari masalah ini.
Rod Smith
0

Seperti halnya UEFI dan firmware BIOS, Anda dapat membuat instalasi Linux dan Windows yang sepenuhnya independen di hard disk yang terpisah.

Hal yang sama TIDAK berlaku untuk drive (drive biasanya merupakan partisi dalam terminologi Windows).

Untuk pengguna pemula dan yang kurang mahir, selalu terbaik untuk memulai instalasi OS pada hard disk kosong ( dengan hanya satu disk terpasang ) OS (Windows / Linux) akan membuat semua partisi yang diperlukan, melakukan semua format yang diperlukan dan menginstal OS.

Di UEFI kami memiliki sumber daya yang sama - NVRAM (memori non-volatile)!

Dalam NVRAM, entri boot dibuat ketika Anda menginstal OS apa pun (sehingga dapat mem-boot secara default). Ketika Anda menginstal dua OS (Linux dan Windows) akan ada dua entri boot (satu per OS) dan salah satunya akan menjadi default (biasanya entri boot untuk OS yang diinstal terakhir).

Pada firmware MBR, disk pertama adalah kandidat boot pertama dan dipilih secara default. Jika tidak ada kode boot dalam MBR (master boot record) dan tidak ada partisi aktif (hanya Windows) yang akan gagal.

Setelah kedua OS terinstal, Anda dapat dengan aman memasang kedua hard disk dan menggunakan tombol pilihan boot (biasanya tombol F12) untuk memilih OS mana yang akan di-boot. Jika Anda tidak memilih, salah satu OS akan dipilih secara default.

Pada firmware UEFI biasanya dimungkinkan (menggunakan pengaturan firmware) untuk menyusun ulang entri boot dalam NVRAM (entri pertama adalah entri default).

Saya menyarankan jika komputer memiliki firmware UEFI untuk melupakan disk gaya MBR dan booting / instalasi MBR. UEFI adalah standar de facto saat ini dan memiliki banyak keuntungan (keamanan rantai boot dapat ditegakkan saat menggunakan "boot aman", partisi disk gaya GPT memecahkan banyak kekurangan MBR).

Jangan ragu untuk bertanya apakah ada sesuatu yang tidak jelas.

snayob
sumber
Maksud saya drive sebagai singkatan untuk 'hard disk drive'. SSD adalah drive yang tidak memiliki disk. Mengesampingkan itu, terima kasih. Apakah Anda tahu jika linux akan masuk dengan benar jika drive lain dihapus. Apakah alamat perangkat akan berubah, dan apakah itu akan menjadi masalah?
Gyan
Ya ada perbedaan antara drive, driver, hard disk, dan perangkat;) Anda harus terbiasa dengan urutan boot UEFI (persis apa yang terjadi dalam urutan apa) - dokumen UEFI dengan tingkat kerumitan berbeda dapat ditemukan di internet. Cari "urutan boot", "urutan boot".
snayob
Saya tidak yakin apakah nomor disk (perangkat) adalah bagian dari entri boot. Seharusnya disk GUID jika saya akan menulis spec;) Harus memeriksa apa yang sebenarnya ditentukan dalam dokumen di situs UEFI.
snayob
0

Hasil

Berhasil.

Setiap OS - Windows 7 & OpenSuse Tumbleweed - booting dan berfungsi, dengan

  • kedua hard drive online
  • hard drive lain sedang offline

Apa yang saya lakukan

1) Disabled Hard Drive 2 di UEFI dan menginstal Windows 7 pada Hard Drive 1. Seharusnya tidak perlu menonaktifkan hard drive lain tetapi Windows suka menanam benderanya dalam apa pun yang dapat ditemukan, jadi saya pikir saya akan menghindarinya. HD1 diformat sebagai GPT.

2) Diaktifkan Hard Drive 2. Sekarang kedua drive sedang online. Menginstal OpenSuse pada Drive 2. HD2 diformat sebagai GPT. Semua partisi yang dibuat untuk Linux di Suse installer ada di drive ini yaitu. EFI, Swap, OS / root, dan partisi pengguna. Semua partisi dipasang melalui UUID (penting). Tidak ada perubahan yang dibuat pada Drive 1. Boot loader yang dipilih adalah Grub2 di EFI.

3) Menguji setiap OS dengan boot dengan kedua drive diaktifkan, dan dengan drive lain dinonaktifkan. Bekerja dengan baik. Satu halangan kecil adalah bahwa jika drive Windows dinonaktifkan, Tumbleweed membutuhkan waktu lebih lama untuk init. Ini karena ada pekerjaan startup yang terkait dengan partisi swap yang habis. Meskipun partisi itu sendiri dipasang melalui UUID, beberapa pekerjaan sistem dan referensi partisi melalui alamat perangkat. Dengan kedua drive diaktifkan, alamat perangkat swap diaktifkan, /dev/sdb2dan hanya dengan drive linux yang diaktifkan, itu /dev/sda2. Sepertinya tidak mempengaruhi operasi setelah boot, selain memperpanjang waktu init. Bukan masalah dalam penggunaan normal, karena kedua drive online. Akan melihatnya.

Gyan
sumber