0
Arch linux installation on MacBook Air

 

 
EFI, GPT, partitioning, zfs on root, 
encryption.

 

 
­ Почему и зачем? Because we can
­ Для кого? Для энтузиастов.

 

 
Partition table
Master Boot Record vs Guid Partition Table
4 actvive bootable partitions vs 128
Every partition type & fil...
 

 
Software for GPT
●

●

Cgdisk

●

Parted, Gparted

●

Forget about fdisk, cfdisk

●

 

Gdisk

( ~ Bit confusion about gpa...
Extended Firmware Interface
●

●

 

Разрабатывается Intel & UEFI Forum
Спецификации и sdk на сайте Intel

 
Как создать EFI загрузочный диск
Требования к диску:
●

●

Typicall zise <1Gb

●

 

 First fat32 partition
Path /EFI/boot...
List of EFI booloaders
●

●

ReFind

●

Efi grub

●

 

ReFit

Elilo

 
reFind
●

●

Roderick W. Smith

●

 

http://www.rodsbooks.com/refind
http://www.rodsbooks.com/gdisk/

 
reFind installation
●

●

Or use install shell script

●

Bless it 

●

 

Place under /EFI/boot/ under first fat32 bootab...
menuentry liveiso {
icon EFI/refind/icons/os_linux.icns
volume KERNELS
loader /arch/boot/x86_64/vmlinuz
initrd /arch/boot/...
How to test?
●

QUEMU !

●

Google EFI bios for QUEMU

●

FSF replacement for bios coreboot.org

тестирование диска на вир...
 

 
EFI shell
Like a DOS baby
если refind не загрузился и мы попали в uefi shell то 
управление ей следующее:
map ­r перечилен...
С загрузкой закончили

Перейдём к установке

 

 
Что будем ставить и куда?
●

●

На zfs root

●

 

Arch linux
Optional encrypt for /home

 
Что нам надо?
●

●

Интеграция их в live usb

●

EFISTUB kernel > 3.3 .

●

 

Zfs, dm­crypt, и другие желаемые пакеты

 E...
Дистрибутивы EFI livecd
●

●

Arch bang

●

Gparted live

●

Sys resqcue cd

●

Gentoo

●

Sabayon

●

Fedora

●

 

Arch
...
●

●

Загрузка

●

 

Создание своего live usb
Разметка диска, создание zpool, (crypt home), /boot

 
#Depmod ­a; modprobe zfs
# zpool create poolname /dev/disk/by­id/<id­to­partition>
#zfs set mountpoint=/ rpool
# zpool imp...
encrypt
●

●

●

 

crtyptsetup ­c blowfish ­y ­s 32 luksFormat ­T 5 (keyslot 
number) </dev/vg0/lvolume>
cryptsetup luksO...
Last step
●

●

 

Mkinitcpio hooks – encrypt, zfs
Kernel append – cryptdevice=/dev/sdaX, zfs=rpool

 
Bugs
●

●

●

 

Refind don't produce initramfs output
Cryptdevice didn't ask passphrase. (as standing reFind 
2013). Work...
Thnx

 

 
Upcoming SlideShare
Loading in...5
×

Alex Shavtsov - Arch linux installing on Macbook Air.

756

Published on

Доклад Alex Shavtsov «Arch linux installing on Macbook Air. Подводные камни - EFI, GPT, ZFS on root, encrypted partition.» с сентябрьской линуксовки MLUG 2013

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
756
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Alex Shavtsov - Arch linux installing on Macbook Air. "

  1. 1. Arch linux installation on MacBook Air    
  2. 2. EFI, GPT, partitioning, zfs on root,  encryption.    
  3. 3. ­ Почему и зачем? Because we can ­ Для кого? Для энтузиастов.    
  4. 4. Partition table Master Boot Record vs Guid Partition Table 4 actvive bootable partitions vs 128 Every partition type & filesystem has own GUID (e.g. ZFS, Swap, ext4...) 516E7CBA­6ECF­11D6­8FF8­00022D09712B 0657FD6D­A4AB­43C4­84E5­0933C84B4F4F EBD0A0A2­B9E5­4433­87C0­68B6B72699C7    
  5. 5.    
  6. 6. Software for GPT ● ● Cgdisk ● Parted, Gparted ● Forget about fdisk, cfdisk ●   Gdisk ( ~ Bit confusion about gpart)  
  7. 7. Extended Firmware Interface ● ●   Разрабатывается Intel & UEFI Forum Спецификации и sdk на сайте Intel  
  8. 8. Как создать EFI загрузочный диск Требования к диску: ● ● Typicall zise <1Gb ●    First fat32 partition Path /EFI/boot/  which contain a bootloader  
  9. 9. List of EFI booloaders ● ● ReFind ● Efi grub ●   ReFit Elilo  
  10. 10. reFind ● ● Roderick W. Smith ●   http://www.rodsbooks.com/refind http://www.rodsbooks.com/gdisk/  
  11. 11. reFind installation ● ● Or use install shell script ● Bless it  ●   Place under /EFI/boot/ under first fat32 bootable partition Add boot entries to refind config  
  12. 12. menuentry liveiso { icon EFI/refind/icons/os_linux.icns volume KERNELS loader /arch/boot/x86_64/vmlinuz initrd /arch/boot/x86_64/archiso.img options "archisobasedir=arch archisolabel=ARCH_201309" }    
  13. 13. How to test? ● QUEMU ! ● Google EFI bios for QUEMU ● FSF replacement for bios coreboot.org тестирование диска на виртуальной машине: qemu­system­x86_64 ­bios qemu­bios/OVMF­X64­r11337­alpha/OVMF.fd ­hda  refind­iso/refind2.img ­m 512 либо qemu­system­x86_64 ­bios qemu­bios/OVMF­X64­r11337­alpha/OVMF.fd  ­cdrom image.iso ­m 512    
  14. 14.    
  15. 15. EFI shell Like a DOS baby если refind не загрузился и мы попали в uefi shell то  управление ей следующее: map ­r перечиление винчестеровприводов имя девайса fs0: ­ перемещение на устройство . dir, cd как  обычно. для загрузки исполняемого efi файла достаточно  ввести его имя в папке. загрузка драйвера командой load.  дополнительная инфа по командам в intel uefi spec.     
  16. 16. С загрузкой закончили Перейдём к установке    
  17. 17. Что будем ставить и куда? ● ● На zfs root ●   Arch linux Optional encrypt for /home  
  18. 18. Что нам надо? ● ● Интеграция их в live usb ● EFISTUB kernel > 3.3 . ●   Zfs, dm­crypt, и другие желаемые пакеты  Enable during kernel compile CONFIG_EFI_STUB=y  
  19. 19. Дистрибутивы EFI livecd ● ● Arch bang ● Gparted live ● Sys resqcue cd ● Gentoo ● Sabayon ● Fedora ●   Arch Ubuntu  
  20. 20. ● ● Загрузка ●   Создание своего live usb Разметка диска, создание zpool, (crypt home), /boot  
  21. 21. #Depmod ­a; modprobe zfs # zpool create poolname /dev/disk/by­id/<id­to­partition> #zfs set mountpoint=/ rpool # zpool import ­R /mnt rpool zfs create zroot/home Mkdir /mnt/boot; mount /dev/sda1 /mnt/boot; #zfs set mountpoint=/home hpool # zpool import ­R /mnt hpool Pacstrap /mnt    
  22. 22. encrypt ● ● ●   crtyptsetup ­c blowfish ­y ­s 32 luksFormat ­T 5 (keyslot  number) </dev/vg0/lvolume> cryptsetup luksOpen ­T 5 ­S (keyslot number) <dev  name> <mapper name> Вы получаете /dev/mapper/yourdevice. Mkfs & mount it!  
  23. 23. Last step ● ●   Mkinitcpio hooks – encrypt, zfs Kernel append – cryptdevice=/dev/sdaX, zfs=rpool  
  24. 24. Bugs ● ● ●   Refind don't produce initramfs output Cryptdevice didn't ask passphrase. (as standing reFind  2013). Workaround: keyfile. extract initramfs & edit crypt  hook. Zfs. Only root (as standing for Arch2013). Unable to mount  /home. Workaround: import zpool in systemd zfs.service  (local­fs.target).    
  25. 25. Thnx    
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×