Truecrypt ve önyükleyicisinden (Windows XP bölümünün yanında çoklu önyükleme) GRUB2 for Ubuntu 10.04 nasıl zincirlenir?


9

Truecrypt'in her zamanki gibi Windows XP için parola istemesini istiyorum, ancak standart [ESC] seçeneğiyle, yani Escape tuşu aracılığıyla, (şifrelenmemiş) Ubuntu yüklemesi için grub bulmasını istiyorum.

Toshiba NB100 netbook'un 120Gb sabit sürücüsüne Windows XP yükledikten sonra Ubuntu 10.04 için yer açmak için bölümlendim ve Windows XP yüklendikten sonra yükledim.

Windows XP'yi şifrelediğimde, Truecrypt ana önyükleme kaydındaki (MBR) grub girdisinin üzerine yazacak, inanıyorum (?) Ve artık XP ve Ubuntu arasında seçim yapamayacağım. Bu yüzden geri yüklemem gerekiyor.

Ubuntu forumlarında ve başka yerlerde cevaplar için oldukça kapsamlı bir araştırma yaptım, ancak henüz tüm olasılıkları, senaryoları ve hata mesajlarını kapsayan tam bir cevap bulamadım, aksi takdirde eski GRUB'dan değil, GRUB2'den bahsediyorlar. Ubuntu 10.04, GRUB2 kullanır.

Kurulumum:

Bölme:

  1. Windows XP, NTFS (Truecrypt ile şifrelenecek), 40Gb
  2. / boot (Ext4, 1Gb)
  3. Ubuntu takası, 4Gb
  4. Ubuntu / (kök) - ana dosya sistemi (20gb)
  5. NTFS paylaşımı, 55Gb

Truecrypt önyükleme yükleyicisinin önyükleme sırasında GRUB'un yerini aldığını biliyorum, çünkü başka bir dizüstü bilgisayarda zaten denedim.

Önyükleme yükleyici ekranının her zamanki gibi görünmesini istiyorum:

Truecrypt

Parolanı Gir:

(veya atlamak için [ESC])

parolası WindowsXP içindir ve önyüklenecek Ubuntu grubunu bulmak için [ESC] tuşuna basıldığında

Yardımın için şimdiden teşekkür ederim.

Sorunun temel alanı, kaçış tuşuna basıldığında Truecrypt'e nasıl talimat verileceği ve esc tuşuna basıldığında Grub / Ubuntu'nun truecrypt önyükleyicisine nasıl görünebileceği konusunda talimat verilmesidir. Zincirleme olarak da bilinir.

Yanıtlar:


6

Bu oldukça kolay. Diskinizi bölümlere ayırın, Windows'u ve Ubuntu'yu yükleyin. Windows'u şifreleyen ancak Ubuntu'yu şifrelenmemiş bırakan Windows bölümünde TrueCrypt kullanın.

Daha sonra muhtemelen sadece Windows'a ve daha sonra TrueCrypt önyükleyici aracılığıyla önyükleme yapabileceğinizi göreceksiniz. Zaten oradaydın gibi görünüyor.

Diyelim ki diskiniz sdaWindows açık sda1ve Linux açıkken sda2(bu varsayımsal, sizinki olmayacak gibi görünüyor sda2). TrueCrypt, MBR üzerine yüklenecek ve GRUB'un üzerine sdayazacaktır.

Canlı bir CD'yi başlatmak için Ubuntu dağıtım CD'sini kullanın, ardından önceden kurulu sisteminize bağlanın. Şöyle ki:

sudo su -
mkdir -p /mnt/ubuntu
mount /dev/sda2 /mnt/ubuntu
mount --bind /proc /mnt/ubuntu/proc
mount --bind /dev /mnt/ubuntu/dev
chroot /mnt/ubuntu

Ardından GRUB önyükleyicisini yükleyin, ancak sda2yerine sda.

grub-install /dev/sda2 --force

Ardından, yeniden başlattığınızda, TrueCrypt yükleyiciye sizden sda-> sda1Windows'a önyükleme yapmak için bir parola girmesini istersiniz . Ancak ESCAPE'a bastığınızda sda2, MBR yerine doğrudan Linux'a atlama ve önyükleme seçeneği elde edersiniz .

Fakat bekle

Bunu yapmadan önce, bir uyarı: grub-installyanlış yaparsanız ve MBR'nin üzerine sdayazarsanız veya MBR'nin üzerine yazmak için GRUB'u tetikleyen bir çekirdek yükseltmesi yaparsanız, geri dönmek için TrueCrypt önyükleyicisini yeniden yüklemeniz gerekir. Windows'a. Hazır değilseniz bu büyük bir güçlüktür.

GRUB ile uğraşmadan önce, TrueCrypt bootloader öğelerini Linux içinden yedeklemenizi öneririm. Bu şekilde TrueCrypt'i kırdığınızda ve yalnızca Linux'a girdiğinizde kolayca geri yazabilirsiniz.

TrueCrypt önyükleme yükleyicinizi yedekleyin:

dd if=/dev/sda of=~/truecrypt.mbr count=1 bs=512
dd if=/dev/sda of=~/truecrypt.backup count=8 bs=32256 # Just in case

TrueCrypt önyükleme yükleyicinizi geri yükleyin (buna diyorum restore-truecrypt.sh):

sudo dd if=~/truecrypt.mbr of=/dev/sda count=1 bs=512
sudo dd if=~/truecrypt.backup of=/dev/sda count=8 bs=32256
sudo grub-install /dev/sda2 --force

Bu komut kümelerinin her ikisine de kullanışlı olduğum küçük kabuk komut dosyalarında sahibim. Yanlışlıkla bootloader'ımı zap yaptığımda (olur) Komutlar veya okuma için etrafta dolaşmak istemiyorum man.

Oh, ve uyumluluk konusunda bir kelime. "GRUB" yazdığımda, GRUB 1 veya 2'yi kastettim. Şahsen, 10.04 ve Windows 7'de GRUB 2 ile yapıyorum ... ama GRUB, Windows ve Linux'un eski sürümlerinde iyi çalıştı.


Bu cevap için çok teşekkür ederim @fitzpatrick. Biraz daha zamanım olduğunda kontrol edeceğim. İşe yaramaya çalışırken kendimle uğraştım, bu yüzden kesinlikle kesin yönünüz :) Buraya, bulgularımın ne olduğunu size bildireceğim.
therobyouknow

"dd = = / dev / sda = ~ / truecrypt.backup sayısı = 8 bs = 32256" tam olarak nedir? TC başlıkları? Teşekkürler!
stefan.at.wpf

ayrıca, sda2 / boot bölümü mü?
stefan.at.wpf

Tamam sda2 kök parittion, lanet olsun, benim
kriptolu

ddTemelde tam önyükleme sektörünü: Komut diskin ilk 32KB kopyalıyor. Yukarıda verdiğim örnekte ayrı bir önyükleme bölümü yok, nix kurulumu tek bir bölümde. RedHat'ın ilk günlerinde Linux masaüstlerinde ayrı bölümler kullanıyordum. Günümüzde büyük disklerle, bu rigmarolü çoğu durumda sunucularınız için kaydedebileceğinizi düşünüyorum!
Aidan Fitzpatrick

2

Bu soru için kabul edeceğim cevap benim. Ve bu cevap bunu * yapamayacağımı kabul etmek ve alternatiflerden birini kabul edeceğim:

  1. VirtualBox, VMWare veya Parallels gibi Windows XP (şifreli sistem sürücü bölümü) ana bilgisayarı Ubuntu'da çalışan bir sanallaştırma / VM yazılımı uygulaması kullanın. Bu yüzden Windows'a önyükleme yapıp sonra bu uygulamayı çalıştırmam ve Ubuntu'ya önyükleme yapmam gerekecekti. Bazı yorumcular, bu yaklaşımın dezavantajlarından birini, Ubuntu'ya ulaşmak için iki kez önyükleme yapmanız (önce XP, sonra Ubuntu) olarak listeliyor. Ancak, aslında her iki işletim sisteminin de aynı anda çalıştığı için sıradan BIOS ile başlatılan çift botlara göre bir avantajı olduğunu söyleyebilirim. Örneğin uygulamaları veya web sayfalarını birden çok platformda hızlı bir şekilde test etmek istiyorsanız harika.

  2. Ubuntu için ikincil bir sabit sürücü veya SD kart (örneğin 8gb, 16Gb) kullanın ve Ubuntu'yu önyüklemek için BIOS (tek seferlik) önyükleme arasından seçim yapın.

* Can't = gerçekten yeterli zaman harcadım (3 gün içinde yaklaşık 6 saat, uzaklaşmak fikrimi temizledim, forumlarda arama yenilenmiş) bu konuda daha fazla harcamaya hazır değilim. Bu yüzden tembel olmak ve başkalarına güvenmekle suçlanamam. Can't = ayrıca anlamı: şu anda olamaz . Bunu tekrar ziyaret edebilirim.

İşte başkalarının yararlı bulabileceği bazı referanslar:

Yukarıdakilerin tümü, her olasılık veya grub versiyonunu kapsayan kesin bir cevap değil, bazı bilgiler sunar.

Aynı soruyu burada superuser, ubuntuforums ve truecrypt forumlarında yayınladım:

Bunu yapmaktaki gerekçem, bu forumların okuyucularının mutlaka diğer forumları okumaması, bazı çakışmalar olacak, ancak bazı hayati tavsiyeler gözden kaçırılabileceğidir.

Arka plan düşünceleri ve öğrenmeleri (ilgileniyorsa!)

Aslında bir gün aradığımı ve alternatiflere geldiğimi söylemekten oldukça memnunum, ancak benden daha iyi olmasını sağladım ve cevabımı kazanmak ve çözmek için savaşmaya devam ettim. Ancak (kolayca) yapılamayacağını ve alternatiflerin olduğunu kabul etmek bir rahatlamadır. Şimdi daha önemli şeylerle başa çıkabilirim! Zaten şifrelemesiz bir masaüstünde Windows 7 ve Ubuntu 10.04'ü çift önyükledim - bu oldukça basit bir prosedür. Ve alternatiflerle orijinal cevabımda istediğimden uzak değilim. Aslında şu anda bir dizüstü bilgisayarda Ubuntu'yu Windows kadar kullanmıyorum, bu yüzden çok fazla özlemeyeceğim. Ayrıca MacBookPro'm var, bu yüzden diğer işletim sistemlerinden daha fazla bir Windows hayranı değilim!

İşte başka bir kullanıcının bakış açısından Ubuntu ile truecrypt şifreli pencereler çift önyükleme yapmak istiyorum:

http://blog.mfabrik.com/2008/07/15/perfect-dual-boot-crypted-hard-disk-setup-with-truecrypt-and-luks/

"Symbian ve web geliştirmede kullanılan bir çalışma dizüstü bilgisayarım var. Hem Vista'yı hem de Linux'u önyüklemem gerekiyor. İstemci gizliliği nedeniyle, her iki işletim sistemi de kayıp dizüstü bilgisayar durumunda şifrelenmelidir. Windows kullanmasam bile aktif olarak, web tarayıcısı verileri istemci sistemleri için depolanmış bir şifre içerebilir ve yanlışlıkla onları sızdırabilir. "

Grub2 grubdan çok daha karmaşıktır, bazıları zorunlu olarak tartışabilir. Windows XP ile 10.04 öncesi Ubuntu (GRUB2 GRUB2 değil) ile başarı elde ettim:

http://www.howtoforge.com/forums/showthread.php?p=184776#post184776

Daha karmaşık diyorum çünkü artık daha fazla ayar dosyası var, aralarında referanslarla daha fazla dizine yayıldı, bazıları şimdi makine tarafından oluşturuldu ve bunların düzenlenmesine karşı öneriliyor, örneğin önyükleme menüsü, öğrenmek için bir tür komut dosyası dili var ve bir değişiklik yapıldığında çalıştırılacak kod yorumlayıcıları. Şu anda benim için çok ilgili ve sadece bir işletim sistemi başlatmak için, aya bir roket değil!


Henüz düşünmediğim bir seçenek Ubuntu Alternatif CD / .ISO imajını kullanmaktır - buradan indirin: releases.ubuntu.com/lucid Sorunun bir kopyasını gönderdiğim Ubuntu forumuna (yukarıdaki bağlantı) bakarsanız, bundan bahseden katılımcıdan bir yayın göreceksiniz. Kilit nokta, GRUB'u nereye koyacağınız (ve yaptığım gibi manuel olarak tahmin etmek yerine resmi ve düzgün bir şekilde yapacağını) ve posterlerin aynı makinede şifreli Ubuntu ve Truecrypted Windows elde ettiklerini iddia etmeleridir - bu benim amacımdı.
therobyouknow

1

Sanırım bunu oldukça sorunsuz çözdüm. Orijinal durumum şöyleydi: Windows 7 bölümü ve Ubuntu 10.10 bölümü (Ubuntu'nun MBR'de oturan grub2) ile şifrelenmemiş bir netbook'um (MSI U160) vardı.

  1. Truecrypt'i kurmak için Windows 7'yi orijinal bölümüne yeniden yüklemem gerekti.
  2. Sonra truecrypt'i kurdum (tüm windows 7 bölümünü şifreleme)
  3. Bu talimatları kullanarak grub2 yükleyiciyi Ubuntu bölümüne yerleştirerek Ubuntu'yu bir USB anahtarından yeniden kurdum
  4. Yeniden başlattıktan sonra TrueCrypt önyükleme yükleyicisini alıyorum. [ESC] 'ye basıyorum ve linux olanı da dahil olmak üzere boatable bölümlerin bir listesini alıyorum (aynı zamanda windows bölümünü gösterir, ancak şifrelenmiş olduğundan, başarısız olacak önyükleme).

Umarım istediğin de budur.


1

Sadece son 2 günü bununla mücadele ettim ve bu cevapların hiçbirini benim için kullanamadım. Sonunda çalışma almak yaptın, ben belgeledi Blog'umda . İşte özet sürümü (Debian wheezy ile yapılır; Ubuntu için de çalışmalıdır. Diğer dağıtımlarda küçük değişiklikler gerekebilir):

Aslında, GRUB2'yi SYSLINUX'u yüklemek için zincir yüklerseniz, bu da Linux'a önyükleme yapmanıza izin veren TrueCrypt Rescue ISO görüntüsünü önyükler.

  1. Syslinux'u yükleyin:

    sudo aptitude install syslinux
    
  2. Dosyaları yerine kopyalayın:

    sudo cp /usr/lib/syslinux/memdisk /boot/
    sudo cp TrueCrypt\ Rescue\ Disk.iso /boot/truecrypt-rescue-disk.iso
    
  3. Önyükleme bölümünüzün UUID'sini belirleyin:

    sudo blkid /dev/sda2
    

    Çıktı şöyle görünmelidir:

    / dev / sda3: UUID = "12345678-1234-1234-1234567890"

  4. GRUB2'yi yapılandırın:

    Aşağıdakileri şuraya ekleyin /etc/grub.d/40_custom:

    menuentry "TrueCrypt ISO boot" {
        insmod part_msdos
        insmod fat
        insmod ext2
        insmod search_fs_uuid
        search --fs-uuid --no-floppy --set=boot [UUID without quotes]
        linux16 ($boot)/memdisk iso raw
        initrd16 ($boot)/truecrypt-rescue-disk.iso
    }
    
  5. GRUB2 yapılandırmasını yeniden yükleyin

    sudo update-grub
    

Bunun, Windows'a her önyükleme yaptığınızda [Normal] TrueCrypt önyükleme yöntemi yerine TrueCrypt Rescue CD görüntüsünü sabit sürücüden önyükleme sistemini kandırdığımız için [F8] Onarım seçeneklerini göstereceğini unutmayın. Ama bu benim için küçük bir dezavantaj gibi görünüyor (ve hatta ek bir özellik olarak kabul edilebilir!)


Başarılı çabalarınız için +1 oy verin, harika iş @Flimzy Bir noktada cevabınızı denemek ve rapor vermek istiyorum ve başarınızı tekrarlayabilirsem cevabınızı kabul edilebilir yapmak istiyorum (bunu daha önce yapabilirim) Denemek için bir makinem yok, şu anda hepsi başka şeyler için kullanılıyor). Tekrar teşekkürler!
therobyouknow

-1

çözüm: belki truecrypt önyükleyicisini grub tarafından önyüklenecek bir IMG dosyasına kopyalayın? veya belki Ubuntu yüklemek için Grub4Dos kullanın?

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.