From Fedora Project Wiki

No edit summary
No edit summary
Line 27: Line 27:
# build a new initramfs: <code>dracut -N</code>
# build a new initramfs: <code>dracut -N</code>
Now reboot your system.
Now reboot your system.
# while in grub replace the root=UUID=... parameter in the "linux" line by: root=LABEL=ROOTFS
# while booting edit the default grub entry and replace the root=UUID=... parameter in the "linux" line by: root=LABEL=ROOTFS
# remove any rd.lvm=0 occurrence
# remove any rd.lvm=0 occurrence
# boot it.
# now actually boot your system.
If all goes well, your system now boots fine and it's running on bcache!
If all goes well, your system now boots fine and it's running on bcache!
# Edit your /etc/grub2.cfg file..
# Edit your /etc/grub2.cfg file..

Revision as of 12:39, 12 October 2013


Description

This page describes a test case for bcache-tools: "/ on bcache using LVM"

Bcache is a Linux kernel block layer cache. It allows one or more fast disk drives such as flash-based solid state drives (SSDs) to act as a cache for one or more slower hard disk drives. The bcache-tools package contains the utilities for manipulating bcache

Testing covers not only bcache-tools but also the interaction between bcache-tools and other packages: kernel, util-linux, dracut and lvm2.

Starting with a stable system with /home on LVM on bcache, we can go forward and have / on bcache. Consider thought that bcache is EXPERIMENTAL!

Prerequisites

This test requires the following test case as preparation: /home on bcache (LVM). Furthermore it requires the volume group BCACHE to have at least 2 GB free space!

Setup

If you haven't done so, you should first execute the use case /home on bcache (LVM).

How to test

To get / on bcache:

  1. create a Logical Volume: lvcreate -L 2G -n ROOTFS BCACHE
  2. create a filesystem: mkfs -t ext4 -L ROOTFS /dev/BCACHE/ROOTFS
  3. mount it: mount /dev/BCACHE/ROOTFS /mnt
  4. copy your current root filesystem to /mnt: cp -ax / /mnt
  5. edit /mnt/fstab so your root fs is mounted like: LABEL=ROOTFS / ext4 defaults 1 1

Now we have a duplicate root filesystem on /dev/BCACHE/ROOTFS. To use it we need to build a new initramfs:

  1. rename your current initramfs: mv /boot/initramfs...img /boot/initramfs...img.sav
  2. build a new initramfs: dracut -N

Now reboot your system.

  1. while booting edit the default grub entry and replace the root=UUID=... parameter in the "linux" line by: root=LABEL=ROOTFS
  2. remove any rd.lvm=0 occurrence
  3. now actually boot your system.

If all goes well, your system now boots fine and it's running on bcache!

  1. Edit your /etc/grub2.cfg file..
  2. .. duplicate the first "menuentry ... { ...}" (about 15 lines).
  3. Now change the first one and replace the root=UUID=... parameter in the "linux" line by root=LABEL=ROOTFS
  4. reboot your system to see if it boots OK.
  5. do some other testing if you like.

Expected Results

  1. All steps complete without errors