diskfilter writes are not supported
http://askubuntu.com/questions/468466/why-this-occurs-error-diskfilter-writes-are-not-supported
"
"
"
It's a BUG!This is a bug that occurs in the most recent version of Ubuntu Server (Ubuntu Server 14.04 LTS), when you create the boot partition (or the root partition, when the boot partition doesn't exists) inside a LVM or a RAID partition.You can get more info about this bug in Ubuntu Launchpad: Bug #1274320 "Error: diskfilter writes are not supported". Why does this bug occur?When the system is booting, GRUB reads (load_env ) data in /boot/grub/grubenv . This file is called GRUB Environment Block.From the GRUB Manual: It is often useful to be able to remember a small amount of information from one boot to the next.This behavior can be founded in /etc/grub.d/00_header (update-grub uses this file to generate the /boot/grub/grub.cfg file):
The problem is that the save_env statement only works in simple installations (you can't run save_env inside a RAID or LVM disk). From the GRUB manual:For safety reasons, this storage is only available when installed on a plain disk (no LVM or RAID), using a non-checksumming filesystem (no ZFS), and using BIOS or EFI functions (no ATA, USB or IEEE1275).The GRUB recordfail feature uses the save_env statement to update the recordfail state (see Ubuntu Help - Grub 2, "Last Boot Failed or Boot into Recovery Mode" section). However, in Ubuntu 14.04 (and in recent Debian versions), the save_env statement (inside the recordfail feature) is used even if GRUB is installed in a LVM or a RAID. Let's see the lines from 104 to 124 in /etc/grub.d/00_header :
GRUB correctly skips the recordfail feature when using unsupported filesystems (btrfs, zfs, etc), but it doesn't skip LVM and RAID at any moment.How does GRUB protect yourself from writing inside RAID and LVM?To read/write correctly in a filesystems, GRUB loads an appropriate module.GRUB uses the diskfilter module ( insmod diskfilter ) in RAID partitions, and the lvm module in LVM partitions.Let's see the read/write implementation of the diskfilter module:
I'm pasting the code here (lines from 808 to 823). The warning showed in this question appears at line 821:
The grub_diskfilter_read function is implemented (and GRUB can read RAID filesystems). However, the grub_diskfilter_write function raises a GRUB_ERR_NOT_IMPLEMENTED_YET error.
Why does using
If you look one more time in the |
Comments
Post a Comment