From 22b778e8705e78fb55ccb6964891b2f4bccdd366 Mon Sep 17 00:00:00 2001 From: delphij Date: Thu, 20 Mar 2014 00:14:45 +0000 Subject: [PATCH] MFC r256999 (smh): Added support for the 'zfs list -t snap' and 'zfs snap' aliases which are available under Oracle Solaris 11. This includes an update to the ZFS(8) man page to reflect all the available alias (snap, umount, and recv). Initial changes obtained from ZFS On Linux + fixes for man page and cmd help: https://github.com/zfsonlinux/zfs/commit/10b75496bb0cb7a7b8146c263164adc37f1d176a https://github.com/zfsonlinux/zfs/commit/cf81b00a73fe47fdb21586ac1cc179b734540973 Obtained from: https://github.com/zfsonlinux/zfs git-svn-id: svn://svn.freebsd.org/base/stable/9@263404 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- cddl/contrib/opensolaris/cmd/zfs/zfs.8 | 21 +++++++++++---------- cddl/contrib/opensolaris/cmd/zfs/zfs_main.c | 19 +++++++++++++------ 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/zfs/zfs.8 b/cddl/contrib/opensolaris/cmd/zfs/zfs.8 index 1a8a47e0c..cd3c337e1 100644 --- a/cddl/contrib/opensolaris/cmd/zfs/zfs.8 +++ b/cddl/contrib/opensolaris/cmd/zfs/zfs.8 @@ -25,10 +25,11 @@ .\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved. .\" Copyright (c) 2013 Nexenta Systems, Inc. All Rights Reserved. .\" Copyright (c) 2013, Joyent, Inc. All rights reserved. +.\" Copyright (c) 2013, Steven Hartland .\" .\" $FreeBSD$ .\" -.Dd September 20, 2013 +.Dd October 23, 2013 .Dt ZFS 8 .Os .Sh NAME @@ -61,7 +62,7 @@ .Op , Ns ... .Sm on .Nm -.Cm snapshot +.Cm snapshot Ns | Ns Cm snap .Op Fl r .Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... .Ar filesystem@snapname Ns | Ns Ar volume@snapname @@ -157,7 +158,7 @@ .Op Fl o Ar property Ns Oo , Ns Ar property Oc Ns ... .Fl a | Ar filesystem .Nm -.Cm unmount +.Cm unmount Ns | Ns Cm umount .Op Fl f .Fl a | Ar filesystem Ns | Ns Ar mountpoint .Nm @@ -172,11 +173,11 @@ .Op Fl i Ar snapshot | Fl I Ar snapshot .Ar snapshot .Nm -.Cm receive +.Cm receive Ns | Ns Cm recv .Op Fl vnFu .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot .Nm -.Cm receive +.Cm receive Ns | Ns Cm recv .Op Fl vnFu .Op Fl d | e .Ar filesystem @@ -1645,7 +1646,7 @@ options, as they can destroy large portions of a pool and cause unexpected behavior for mounted file systems in use. .It Xo .Nm -.Cm snapshot +.Cm snapshot Ns | Ns Cm snap .Op Fl r .Oo Fl o Ar property Ns = Ns Ar value Oc Ns ... .Ar filesystem@snapname Ns | Ns volume@snapname @@ -1857,7 +1858,7 @@ syntax. A comma-separated list of types to display, where .Ar type is one of -.Sy filesystem , snapshot , volume , No or Sy all . +.Sy filesystem , snapshot , snap, volume , No or Sy all . For example, specifying .Fl t Cm snapshot displays only snapshots. @@ -2186,7 +2187,7 @@ Mount the specified filesystem. .El .It Xo .Nm -.Cm unmount +.Cm unmount Ns | Ns Cm umount .Op Fl f .Fl a | Ar filesystem Ns | Ns Ar mountpoint .Xc @@ -2369,13 +2370,13 @@ on future versions of .Tn ZFS . .It Xo .Nm -.Cm receive +.Cm receive Ns | Ns Cm recv .Op Fl vnFu .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot .Xc .It Xo .Nm -.Cm receive +.Cm receive Ns | Ns Cm recv .Op Fl vnFu .Op Fl d | e .Ar filesystem diff --git a/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c b/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c index f0f866c18..1f9b2b970 100644 --- a/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c +++ b/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c @@ -257,9 +257,9 @@ get_usage(zfs_help_t idx) case HELP_PROMOTE: return (gettext("\tpromote \n")); case HELP_RECEIVE: - return (gettext("\treceive [-vnFu] \n" - "\treceive [-vnFu] [-d | -e] \n")); + "\treceive|recv [-vnFu] [-d | -e] \n")); case HELP_RENAME: return (gettext("\trename [-f] " "\n" @@ -278,10 +278,10 @@ get_usage(zfs_help_t idx) case HELP_SHARE: return (gettext("\tshare <-a | filesystem>\n")); case HELP_SNAPSHOT: - return (gettext("\tsnapshot [-r] [-o property=value] ... " + return (gettext("\tsnapshot|snap [-r] [-o property=value] ... " " ...\n")); case HELP_UNMOUNT: - return (gettext("\tunmount [-f] " + return (gettext("\tunmount|umount [-f] " "<-a | filesystem|mountpoint>\n")); case HELP_UNSHARE: return (gettext("\tunshare " @@ -3014,7 +3014,7 @@ zfs_do_list(int argc, char **argv) flags &= ~ZFS_ITER_PROP_LISTSNAPS; while (*optarg != '\0') { static char *type_subopts[] = { "filesystem", - "volume", "snapshot", "all", NULL }; + "volume", "snapshot", "snap", "all", NULL }; switch (getsubopt(&optarg, type_subopts, &value)) { @@ -3025,9 +3025,10 @@ zfs_do_list(int argc, char **argv) types |= ZFS_TYPE_VOLUME; break; case 2: + case 3: types |= ZFS_TYPE_SNAPSHOT; break; - case 3: + case 4: types = ZFS_TYPE_DATASET; break; @@ -6712,6 +6713,12 @@ main(int argc, char **argv) if (strcmp(cmdname, "recv") == 0) cmdname = "receive"; + /* + * The 'snap' command is an alias for 'snapshot' + */ + if (strcmp(cmdname, "snap") == 0) + cmdname = "snapshot"; + /* * Special case '-?' */ -- 2.45.0