Birden fazla işletim sistemine sahip bir dizüstü bilgisayarım var.
Mevcut işletim sistemini kapatıp başka bir işletim sistemine önyükleyebileceğim herhangi bir komut var mı?
windows-> Ubuntu ve tersi
teşekkür ederim
Birden fazla işletim sistemine sahip bir dizüstü bilgisayarım var.
Mevcut işletim sistemini kapatıp başka bir işletim sistemine önyükleyebileceğim herhangi bir komut var mı?
windows-> Ubuntu ve tersi
teşekkür ederim
Yanıtlar:
Bu ayrıntılar UEFI'nin GPT sistemlerini nasıl kullandığı ile tam olarak örtüşmeyebilir, ancak MBR tabanlı sistemleri tarif eder.
Resmi (eski) standart, Ana Önyükleme Kaydı'ndakileri kullanmaktır. MBR'nin ayrıntılarını değiştirmek için "fdisk" komutu kullanılabilir.
Geleneksel MBR, bir bölümün işaretlenip işaretlenmediğini belirten bazı bitler içerir. Standart, zorunlu olarak önyükleme kodu tarafından zorunlu tutulmamasına rağmen, yalnızca bir bölümün işaretlendiğini belirtir. Bir kullanıcı belirli bir bölümün işaretlenmesi gerektiğini belirttiğinde, geleneksel bir fdisk programı genellikle başka bir işaretli bölümü kontrol eder ve eğer bulunursa işaretini kaldırır. "Seçili" bir bölüm gibi, "işaretli" bir bölümü tanımlamak için kullanılan alternatif kelimeler olabilir.
Ardından, geleneksel MBR bazı "kod" ları (talimatlar) içerir. Sistem önyüklendiğinde bu kod çalıştırılır. Kod, her bölümün ne kadar büyük olduğunu ve hangi bölümün işaretlendiğini görmek için MBR'yi kontrol eder. Daha sonra işaretlenen bölümde bulunan bazı ek kodları çalıştırarak önyükleme işlemine devam edecektir.
Yani, yaygın olarak desteklenen standart. Ne yazık ki, bu standart yöntem fdisk'e girmeyi ve bununla manuel olarak etkileşim kurmayı içerir. Yani bu, çalıştırabileceğiniz tek bir program değil. Bununla birlikte, en yaygın olarak desteklenen standarttır.
OpenBSD SSS'den alıntı yapmak için : Çoklu önyükleme :
Hemen hemen her işletim sistemi bunu yapmak için bir program sunar; OpenBSD'ler fdisk'tir (8), benzer adlandırılmış programlar Windows 9x ve DOS'ta ve diğer birçok işletim sistemindedir. Bu, kapatılması ve yeniden başlatılması uzun zaman alan işletim sistemleri veya sistemler için oldukça arzu edilebilir - onu ayarlayabilir ve yeniden başlatma işlemini başlatabilir, sonra uzaklaşabilir, bir fincan kahve alabilir ve sisteme geri yüklenen sisteme geri dönebilirsiniz. İstediğiniz - Magic Moment'in bir sonraki işletim sistemini seçmesini beklemek yok.
İnsanların yaptığı şık değişikliklerin hepsinde, en yaygın olarak desteklenen resmi sürecin avantajlarının bu kadar sıklıkla gözden kaçırılması komik.
Bunun istenildiği kadar otomatik olamayacağını biliyorum, ancak sorulan soru etkileşimsizliği belirtmedi. Yani basit cevap, evet, böyle bir komut var. Bu "fdisk" dir.
Şimdi, başka bazı varyasyonlar var ve bu yüzden eğer böyle bir çözüm arıyorsanız otomasyon muhtemelen mümkün. İşletim sistemlerinizi "önyükleme" adlı bir komut veya benzeri bir şey için kontrol etmek isteyebilirsiniz; Eski işletim sistemi / 2 işletim sisteminin hangi işletim sisteminin başlatıldığını değiştirebilecek bir "BOOT" komutu içerdiğini biliyorum. Çalıştırmanız gereken kesin komut (lar) gerçekte hangi önyükleme kodunu kullandığınıza bağlıdır. Birden fazla "önyükleme yöneticisi" programı mevcut ve bu işlev artık daha fazla işletim sistemine dahil edilmiş durumda. Bu iyi haber. Kötü haber, sürecin standartlaştırılmadığı, bu yüzden size sadece herkesin farklı varyasyonlarıyla iyi bütünleşen belirli bir işlemi sağlayamıyorum. Temel olarak, bir çözüm seçip kullanmanız gerekir. Birincil endişenin birden fazla işletim sisteminden yapılabilecek ve sistem önyüklenirken kullanılan diskin bölümlerine yazmak için kullanılabilecek bir işlem bulması muhtemeldir. Bu bölümler tipik olarak bir dosya sisteminin parçası değildir ve virüsten koruma özellikleri, bir kişinin diskin kritik bölümlerine yazma yeteneğini sınırlamaya çalışabilir.
Temel olarak, işlem, bir bölümün bayrak bitlerini değiştirmeyi veya MBR'nin önyükleme kodunu değiştirmeyi veya MBR'nin önyüklemeye devam etmek için kullandığı bölümdeki kodun davranışını değiştirmeyi içerecektir. Yani bu üç farklı yaklaşım ve bu yaklaşımların her biri aslında mevcut olan farklı seçeneklerden bazıları tarafından kullanılıyor.
Dördüncü bir yaklaşım, BIOS'un hangi diskten önyükleme yaptığını değiştirmek olabilir. Bununla birlikte, bu yaklaşım geleneksel olarak farklı sistemler arasında daha az uyumlu olmuştur, bu yüzden bu yaklaşım gerçekten kullanılan bir şeyden daha teorik bir olasılıktır. (Her ne kadar birçok kullanıcı bu yaklaşımı etkileşimli olarak kullanmış olsa da, genellikle bir önyükleme menüsü çıkarmak için F12 veya başka bir tuşa basarak; bazen sadece BIOS ayarlarına girer ve sonraki önyüklemelerde kullanılacak varsayılan diski değiştirir.)
En yaygın yöntem muhtemelen sistem bir işletim sisteminde önyüklendiğinde MBR'nin tamamının 512 baytlık bir görüntüsünün oluşturulması ve daha sonra sistem farklı bir işletim sistemiyle önyüklendiğinde tüm MBR'nin 512 baytlık görüntüsünün kaydedilmesidir. Ardından, bu 512 baytları doğrudan diskin ilk 512 baytına yazmak için ihtiyacınız olan yazılımı kullanın. ("Dd" gibi bir şey hile yapardı.) Bununla ilgili en büyük zorluk sadece işletim sistemi tarafından izin veriliyor olabilir.
AFH'nin cevabı bunun Linux'tan grub ile nasıl yapılabileceğini gösteriyor. XP / 2003 günlerinden itibaren Windows Önyükleme Yöneticisi bu tür sektör görüntülerini kullanır (bu da "Boot.ini" dosyası tarafından belirtilir), böylece Windows'tan çıkmak Boot.ini metin dosyasını değiştirerek yapılabilir. (Bu işlem Vista / 2008'de değişmiş olabilir, bu yüzden daha yeni sistemlerde denemeden önce yeni önyükleme yöneticisine göz atın.) Bu çözümlerden herhangi birini uygulamanın kesin bir yolu, kullanmayı bırakmaya çalıştığınız işletim sistemine bağlı olacaktır. (Örneğin: Microsoft Windows'un hangi sürümü.)
Evet, önyükleme seçimi için Grub kullanıyorsanız mümkündür: -
su
veya sudo -s
./boot/grub.cfg
birine kopyalayın ./boot/grub.win
/boot/grub.lin
/etc/default/grub
değiştirme GRUB_DEFAULT=
önyükleme listesi (sıfırdan sayım) alternatif OS sayısına.update-grub
, daha sonra kopya /boot/grub.cfg
etmek /boot/grub.lin
veya /boot/grub.win
uygun şekilde.GRUB_DEFAULT=
önceki değerine geri yükle /etc/default/grub
.bootlin
ve bootwin
içerir: cp /boot/grub.lin /boot.cfg
veyacp /boot/grub.win /boot.cfg
shutdown -r now
Şimdi Ubuntu'yu arayabilir bootlin
veya arayabilirsiniz bootwin
.
Windows'ta da aynı şeyi yapmanız gerekir: -
U:
Ubuntu bölümüne bir sürücü harfi (örn. ) Atayın ve yazılabilir hale getirin.bootlin.cmd
ve içerebilir , ardından:bootwin.cmd
copy
U:\boot\grub.cfg
shutdown -r
Eğer önyükleme ntldr
yaparsanız, iki kopyası ile benzer bir teknik kullanabilirsiniz boot.ini
(önce Salt Okunur, Sistem ve Gizli niteliklerini silmeniz gerekebilir). Diğer önyükleyicilerle kullanabileceğiniz benzer bir teknik olabilir, ancak bununla nelerin işe yarayacağını önermek için başkalarına bırakıyorum.
DİKKAT: ext2fsd'nin salt okunur modda iyi çalıştığını biliyorum, ancak hiçbir zaman yazılabilir modda kullanmadım: Ubuntu sisteminizi bozabileceğinin farkında olun, bu nedenle birkaç kez denemeden önce yedeklendiğinden emin olun ve doğru çalıştığından emin olabilirsiniz. Dizin değişikliği gerektirmeyen grub.cfg
yerinde düzenleme yapmak Windows’tan daha güvenli olabilir , ancak aynı dosya sisteminde çalışma dosyalarını kullanmayan bir tür Windows in-line editörüne ihtiyacınız olacak veya birkaç satır kadar çalışacaksınız C
. yap.
Bir donanımın yeniden başlatılması çağrıldığında, daha sonra kapanma ve açılma ile hemen hemen aynıdır. Böylece tüm ram hafızası kaybolur. ve güç açtığımızda, önyükleme işlemi anakart ürün yazılımı tarafından gerçekleştirilir. Eğer anakart bellenimine bir mesaj söylemek istiyorsak , bu mesajı koçta bırakmamalıyız. ancak diske (veya başka bir kalıcı medyaya) bir şey (herhangi bir şey) yazabiliriz ve efi'nin değişken olmayan değişkenleri ayarlamak için bir mekanizma sağladığını düşünüyorum.
Yukarıda bahsedilen yaklaşımların yanı sıra, linux çekirdeği, donanım bozulmadan başka bir sisteme "teslim kontrolü" sağlamak için kexec işlevselliğine sahiptir. Her ne kadar bir windows çekirdeği direkt olarak kexec'lenmiş olmayabilir, ancak bir yükleyici programına kexec'le bir yükleyici var ve yükleyici programın windows sistemini başlatmasına izin veriyor.