You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
labnotes/_source/_posts/2016-01-19-setting-up-grub-...

62 lines
1.6 KiB
Markdown

---
layout: post
title: "Setting up GRUB/GPT/LVM"
date: 2016-01-19 17:09:09 +0100
comments: true
categories:
---
Notes on setting up a machine to use GPT partitioning, LVM for
all filesystems (including root), and GRUB2 to boot.
Starting with a vanilla Debian 7.8 setup. Here we assume that /dev/sdb
is the disk that will ultimately contain the system.
GPT setup
=========
(parted) mklabel gpt
(parted) mkpart primary 2048s 4095s
(parted) set 1 bios_grub on
(parted) name 1 "BIOS Boot Partition"
(parted) mkpart primary 4096s 100%
(parted) set 2 lvm on
(parted) name 2 "LVM"
Do we want a swap partition there??? If we don't provision one now,
we'll have to swap to an LVM LV.
LVM setup
=========
pvcreate /dev/sdb1
# Format given disk for LVM
vgcreate tank /dev/sdb2
# Create a volume group with that disk as the underlying storage
lvcreate -n rootfs -L 10G tank
lvcreate -n home -l 100%FREE tank
Filesystem
==========
mkfs.ext4 /dev/mapper/tank-rootfs
mkfs.ext4 /dev/mapper/tank-home
mount -t ext4 /dev/mapper/tank-rootfs /mnt
Set up root filesystem (including /boot subdirectory) in /mnt.
Make sure that /etc/fstab on tank-rootfs points to the proper
root fs.
GRUB2
=====
for i in /dev /dev/pts /proc /sys /run; do mount -B $i /mnt$i; done
chroot /mnt
rm -f /boot/grub/device.map
grub-mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sdb