[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170413235628.GA133121@google.com>
Date: Thu, 13 Apr 2017 16:56:28 -0700
From: Drew Davenport <ddavenport@...gle.com>
To: linux-ext4@...r.kernel.org
Subject: [PATCH v2] e2fsprogs: Make -U option consistent between tune2fs and
mke2fs
Allow "null", "clear", "random", or "time" for the -U option for
mke2fs, which are already allowed options for tune2fs.
Signed-off-by: Drew Davenport <ddavenport@...gle.com>
Reviewed-by: Andreas Dilger <adilger@...ger.ca>
---
misc/mke2fs.8.in | 20 +++++++++++++++++++-
misc/mke2fs.c | 9 ++++++++-
2 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/misc/mke2fs.8.in b/misc/mke2fs.8.in
index ef56d9ea..1c8c20f2 100644
--- a/misc/mke2fs.8.in
+++ b/misc/mke2fs.8.in
@@ -738,7 +738,25 @@ will use the default filesystem type
.IR default .
.TP
.BI \-U " UUID"
-Create the filesystem with the specified UUID.
+Set the universally unique identifier (UUID) of the filesystem to
+.IR UUID .
+The format of the UUID is a series of hex digits separated by hyphens,
+like this:
+"c1b9d5a2-f162-11cf-9ece-0020afc76f16".
+The
+.I UUID
+parameter may also be one of the following:
+.RS 1.2i
+.TP
+.I clear
+clear the filesystem UUID
+.TP
+.I random
+generate a new randomly-generated UUID
+.TP
+.I time
+generate a new time-based UUID
+.RE
.TP
.B \-v
Verbose execution.
diff --git a/misc/mke2fs.c b/misc/mke2fs.c
index 49c6e94d..b8d078a0 100644
--- a/misc/mke2fs.c
+++ b/misc/mke2fs.c
@@ -2914,7 +2914,14 @@ int main (int argc, char *argv[])
* Parse or generate a UUID for the filesystem
*/
if (fs_uuid) {
- if (uuid_parse(fs_uuid, fs->super->s_uuid) !=0) {
+ if ((strcasecmp(fs_uuid, "null") == 0) ||
+ (strcasecmp(fs_uuid, "clear") == 0)) {
+ uuid_clear(fs->super->s_uuid);
+ } else if (strcasecmp(fs_uuid, "time") == 0) {
+ uuid_generate_time(fs->super->s_uuid);
+ } else if (strcasecmp(fs_uuid, "random") == 0) {
+ uuid_generate(fs->super->s_uuid);
+ } else if (uuid_parse(fs_uuid, fs->super->s_uuid) != 0) {
com_err(device_name, 0, "could not parse UUID: %s\n",
fs_uuid);
exit(1);
--
2.12.2.762.g0e3151a226-goog
Powered by blists - more mailing lists