2cac7f5f11
* Supports booting of a ZFS snapshot. Do this by cloning the snapshot into a dataset. If this, the resulting dataset, already exists, destroy it. Then mount it on root. * If snapshot does not exist, use base dataset (the part before '@') as boot filesystem instead. * If no snapshot is specified on the 'root=' kernel command line, but there is an '@', then get a list of snapshots below that filesystem and ask the user which to use. * Clone with 'mountpoint=none' and 'canmount=noauto' - we mount manually and explicitly. * For sub-filesystems, that doesn't have a mountpoint property set, we use the 'org.zol:mountpoint' to keep track of it's mountpoint. * Allow rollback of snapshots instead of clone it and boot from the clone. * Allow mounting a root- and subfs with mountpoint=legacy set * Allow mounting a filesystem which is using nativ encryption. * Support all currently used kernel command line arguments All the different distributions have their own standard on what to specify on the kernel command line to boot of a ZFS filesystem. * Extra options: * zfsdebug=(on,yes,1) Show extra debugging information * zfsforce=(on,yes,1) Force import the pool * rollback=(on,yes,1) Rollback (instead of clone) the snapshot * Only try to import pool if it haven't already been imported * This will negate the need to force import a pool that have not been exported cleanly. * Support exclusion of pools to import by setting ZFS_POOL_EXCEPTIONS in /etc/default/zfs. * Support additional configuration variable ZFS_INITRD_ADDITIONAL_DATASETS to mount additional filesystems not located under your root dataset. * Include /etc/modprobe.d/{zfs,spl}.conf in the initrd if it/they exist. * Include the udev rule to use by-vdev for pool imports. * Include the /etc/default/zfs file to the initrd. * Only try /dev/disk/by-* in the initrd if USE_DISK_BY_ID is set. * Use /dev/disk/by-vdev before anything. * Add /dev as a last ditch attempt. * Fallback to using the cache file if that exist if nothing else worked. * Use /sbin/modprobe instead of built-in (BusyBox) modprobe. This gets rid of the message "modprobe: can't load module zcommon". Thanx to pcoultha for finding this. Signed-off-by: Turbo Fredriksson <turbo@bayour.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #2116 Closes #2114 |
||
---|---|---|
.. | ||
.gitignore | ||
always-no-unused-but-set-variable.m4 | ||
config.awk | ||
deb.am | ||
kernel-acl.m4 | ||
kernel-automount.m4 | ||
kernel-bdev-block-device-operations.m4 | ||
kernel-bdev-logical-size.m4 | ||
kernel-bdev-physical-size.m4 | ||
kernel-bdi-setup-and-register.m4 | ||
kernel-bio-bvec-iter.m4 | ||
kernel-bio-end-io-t-args.m4 | ||
kernel-bio-failfast.m4 | ||
kernel-bio-rw-syncio.m4 | ||
kernel-blk-end-request.m4 | ||
kernel-blk-fetch-request.m4 | ||
kernel-blk-queue-discard.m4 | ||
kernel-blk-queue-flush.m4 | ||
kernel-blk-queue-io-opt.m4 | ||
kernel-blk-queue-max-hw-sectors.m4 | ||
kernel-blk-queue-max-segments.m4 | ||
kernel-blk-queue-nonrot.m4 | ||
kernel-blk-queue-physical-block-size.m4 | ||
kernel-blk-requeue-request.m4 | ||
kernel-blk-rq-bytes.m4 | ||
kernel-blk-rq-pos.m4 | ||
kernel-blk-rq-sectors.m4 | ||
kernel-blkdev-get-by-path.m4 | ||
kernel-blkdev-get.m4 | ||
kernel-block-device-operations-release-void.m4 | ||
kernel-check-disk-size-change.m4 | ||
kernel-clear-inode.m4 | ||
kernel-commit-metadata.m4 | ||
kernel-create-nameidata.m4 | ||
kernel-d-make-root.m4 | ||
kernel-d-obtain-alias.m4 | ||
kernel-d-prune-aliases.m4 | ||
kernel-declare-event-class.m4 | ||
kernel-dentry-operations.m4 | ||
kernel-dirty-inode.m4 | ||
kernel-discard-granularity.m4 | ||
kernel-elevator-change.m4 | ||
kernel-encode-fh-inode.m4 | ||
kernel-evict-inode.m4 | ||
kernel-fallocate.m4 | ||
kernel-file-inode.m4 | ||
kernel-fmode-t.m4 | ||
kernel-fsync.m4 | ||
kernel-get-disk-ro.m4 | ||
kernel-get-gendisk.m4 | ||
kernel-insert-inode-locked.m4 | ||
kernel-invalidate-bdev-args.m4 | ||
kernel-is_owner_or_cap.m4 | ||
kernel-kobj-name-len.m4 | ||
kernel-lookup-bdev.m4 | ||
kernel-lookup-nameidata.m4 | ||
kernel-lseek-execute.m4 | ||
kernel-mkdir-umode-t.m4 | ||
kernel-mount-nodev.m4 | ||
kernel-open-bdev-exclusive.m4 | ||
kernel-rq-for-each_segment.m4 | ||
kernel-rq-is_sync.m4 | ||
kernel-security-inode-init.m4 | ||
kernel-set-nlink.m4 | ||
kernel-sget-args.m4 | ||
kernel-show-options.m4 | ||
kernel-shrink.m4 | ||
kernel-truncate-range.m4 | ||
kernel-truncate-setsize.m4 | ||
kernel-vfs-iterate.m4 | ||
kernel-vfs-rw-iterate.m4 | ||
kernel-xattr-handler.m4 | ||
kernel.m4 | ||
mount-helper.m4 | ||
rpm.am | ||
Rules.am | ||
suppressed-warnings.txt | ||
tgz.am | ||
user-arch.m4 | ||
user-dracut.m4 | ||
user-frame-larger-than.m4 | ||
user-libblkid.m4 | ||
user-libuuid.m4 | ||
user-runstatedir.m4 | ||
user-systemd.m4 | ||
user-sysvinit.m4 | ||
user-udev.m4 | ||
user-zlib.m4 | ||
user.m4 | ||
zfs-build.m4 | ||
zfs-meta.m4 |