Kertaus:
Ennalta päätetty vaatimus on salata sekä tiedot että asennukset jokaisella kannettavalla tietokoneella.
Tavoite on asentaa koneella olevan salatun Ubuntun rinnalle toinen salattu Ubuntu tai muu Linux.
Esteenä on asennusohjelma (Ubiquity), joka ei tue salattuja rinnakkaisasennuksia; yhden salatun asennuksen se tekee, mutta seuraavan asennuksen voi tehdä vain vanhan päälle, joten uusia julkaisuja voi kokeilla vain asennustikulta.
Ratkaisu on helpompi kuin miltä aluksi näytti.
Kone jolle asennusta suunnitellaan:
Kovalevyllä /dev/sda on Ubuntu 15.10 -asennuksen luomat osiot:
sda1 : ensisijainen osio (ext2; 236 M; /boot-osio)
sda2 : laajennettu osio
sda5 : looginen osio, jossa on LUKS-säiliö, jossa on fyysinen taltio, joka kuuluu taltioryhmään "ubuntu-vg",
jossa on loogiset taltiot root (ext4) ja swap_1 (swap).
Koneessa on BIOS, ilman UEFI-valmiutta.
Asennuksen päävaiheet kun asennetaan toinen Ubuntu (tai muu Linux) samaan LUKS-säiliöön:
- Ota riittävän kattavat varmuuskopiot ensiksi asennetun Ubuntun puolella.
Kopioi keskeiset asetukset (/etc/crypttab, yms.) erikseen helposti saataville. - Asenna toinen Ubuntu tai muu Linux samalle salatulle osiolle.
- Käynnistä kone asennustikulta ja valitse "Kokeile Ubuntua" (tai muun Linuxin vastaava).
- Muokkaa salatun osion jakoa loogisiin taltioihin.
- Avaa LUKS-säiliö (cryptsetup luksOpen) ja LVM-muokkaus (vgscan && vgchange -ay).
- Kutista ensimmäisen asennuksen juuritaltiota (lvreduce --resizefs).
- Lisää toinen juuritaltio (yhteinen swap riittää, jos salaus estää lepotilan käytön).
- Lisää jaetulle datalle oma taltio; varaa sille kaikki jäljellä oleva tila (lvcreate -l 100%FREE).
- Sulje LVM-muokkaus (vgchange -an).
- Tarkista että ensiksi asennettu Ubuntu käynnistyy ja toimii edelleen.
Käynnistä kone ilman asennustikkua ja kirjaudu sisään. - Palaa takaisin.
- Käynnistä kone asennustikulta.
- Avaa LUKS-säiliö komentoriviltä (cryptsetup luksOpen /dev/sda5 sda5_crypt).
Jos avaat LUKS-säiliön täppäämällä käynnistinpalkin kuvaketta, se avataan väärällä nimellä.
- Käynnistä Ubiquity (tai vastaava).
- Valitse asennustyyppi "Jokin muu vaihtoehto".
- Poista käytöstä ensiksi asennetun Ubuntun käytössä olevat taltiot ja käynnistysosio.
- Poimi käyttöön asennukselle varatut loogiset taltiot.
- Osoita grub kohteeseen jossa sen asennus varmasti epäonnistuu (eli mikä tahansa muu kuin /dev/sda).
- Valitse "Jatka testaamista" asennuksen lopussa.
- Kun grub-asennus epäonnistuu, jatka ilman alkulatausohjelmaa.
- Jos ponnahdusikkuna jää jumiin, pienennä Ubiquity taustalle.
- Viimeistele asennus uudella juuritaltiolla.
- Kopioi /etc/crypttab ensimmäisen asennuksen juuritaltiolta toisen asennuksen juuritaltiolle; liitä taltiot siksi aikaa.
- Päivitä initramfs chroot:lla.
- Käynnistä kone ilman asennustikkua.
- Varmista toisen Linuxin käynnistyminen.
- Kirjaudu ensiksi asennettuun Ubuntuun.
- Lisää tiedostoon /etc/default/grub asetukset GRUB_ENABLE_CRYPTODISK=y ja GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda5:sda5_crypt".
Asetuksen GRUB_ENABLE_CRYPTODISK arvon pitää olla nimenomaan "y". Jos arvo on väärä, saat virheilmoituksen jonka mukaan sen pitäisi olla "1". - Päivitä grub ja käynnistä kone uudelleen.
Päivitys lisää uuden asennuksen samaan valikkoon, vaikka GRUB_DISABLE_OS_PROBER olisikin asetettu. - Kirjaudu juuri asennettuun Linuxiin.
Joudut syöttämään LUKS-salasanan kahteen kertaan. - Lisää avaintiedosto (ensiksi asennettu Ubuntu ei tarvitse sitä).
- Luo avaintiedosto (dd if=/dev/urandom) ja
- aseta sen suojaus (chmod u=r,go=),
- lisää uusi avain LUKS-säiliön asetuksiin (cryptsetup luksAddKey),
- kirjoita komentotiedosto avaintiedoston lataamiseen ja
- aseta sen suojaus (chmod +r),
- muokkaa /etc/crypttab viittaamaan avaintiedostoon,
- päivitä initramfs,
- ja käynnistä kone uudelleen.
- Ota uusi data-taltio käyttöön kummassakin asennuksessa.
Yhteenveto kaikkein typerimmistä kompastuskivistä:
- LUKS-säiliö on avattava komentoriviltä juuri oikealla tavalla. Jos sen avaa käynnistinpalkin kuvaketta täppäämällä, homma ei toimi oikein.
- Tunnettu vika "Wily Werewolf" -julkaisussa aiheutti ylimääräisiä varoituksia joiden ihmettelyyn meni aikaa.
- Asetuksen GRUB_ENABLE_CRYPTODISK arvon pitää olla nimenomaan "y". Jos arvo on väärä, saat virheilmoituksen jonka mukaan sen pitäisi olla "1".
- Lähteessä neuvottiin tiedoston /crypto_keyfile.bin suojauksen asetus väärin.
Lisäksi lähteissä oli paljon täysin tarpeetonta roskaa. Kaikkein arvokkain lähde oli
http://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive. Kaiken kaikkiaan vaaditut työvaiheet ovat vieläkin helpommat kuin miltä aluksi näytti.
Nyt on enää jäljellä grub-valikon siistiminen, mutta se ei kuulu tämän otsikon alle.