77 lines
1.8 KiB
Diff
77 lines
1.8 KiB
Diff
|
From 067e9b4934372f72b89b2c0442a3d28290834537 Mon Sep 17 00:00:00 2001
|
||
|
From: Karel Zak <kzak@redhat.com>
|
||
|
Date: Wed, 29 Jun 2011 09:02:50 +0200
|
||
|
Subject: [PATCH] mount: first look for mountpoint
|
||
|
|
||
|
# mount <device|dir>
|
||
|
|
||
|
The current code looks for a device and then for a mountpoint in
|
||
|
/etc/fstab. This is not user friendly solution. People usually use
|
||
|
|
||
|
# mount /dir
|
||
|
|
||
|
to mount any filesystem. It makes more sense to check for mountpoint
|
||
|
and if not found then for device.
|
||
|
|
||
|
This is also important for bind mounts, for example if you have in
|
||
|
your fstab:
|
||
|
|
||
|
/dev/sda1 /mnt/foo auto defaults
|
||
|
/mnt/foo /mnt/bar none bind
|
||
|
|
||
|
then
|
||
|
# mount /mnt/foo
|
||
|
|
||
|
should be interpreted as the first entry and /dev/sda1 should be
|
||
|
mounted.
|
||
|
|
||
|
Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=716483
|
||
|
Signed-off-by: Karel Zak <kzak@redhat.com>
|
||
|
---
|
||
|
mount/mount.8 | 11 +++++++++++
|
||
|
mount/mount.c | 4 ++--
|
||
|
2 files changed, 13 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/mount/mount.8 b/mount/mount.8
|
||
|
index 8982537..e9a52dd 100644
|
||
|
--- a/mount/mount.8
|
||
|
+++ b/mount/mount.8
|
||
|
@@ -101,6 +101,17 @@ the pathname
|
||
|
refers to the root of the filesystem on
|
||
|
.IR device .
|
||
|
|
||
|
+If only directory or device is given, for example:
|
||
|
+.RS
|
||
|
+
|
||
|
+.br
|
||
|
+.BI "mount /dir"
|
||
|
+.br
|
||
|
+
|
||
|
+.RE
|
||
|
+then mount looks for a mountpoint and if not found then for a device in the
|
||
|
+/etc/fstab file.
|
||
|
+
|
||
|
.B The listing and help.
|
||
|
.RS
|
||
|
Three forms of invocation do not actually mount anything:
|
||
|
diff --git a/mount/mount.c b/mount/mount.c
|
||
|
index 3ba705f..00637f5 100644
|
||
|
--- a/mount/mount.c
|
||
|
+++ b/mount/mount.c
|
||
|
@@ -2347,10 +2347,10 @@ getfs(const char *spec, const char *uuid, const char *label)
|
||
|
else if (label)
|
||
|
mc = getfs_by_label(label);
|
||
|
else {
|
||
|
- mc = getfs_by_spec(spec);
|
||
|
+ mc = getfs_by_dir(spec);
|
||
|
|
||
|
if (!mc)
|
||
|
- mc = getfs_by_dir(spec);
|
||
|
+ mc = getfs_by_spec(spec);
|
||
|
}
|
||
|
if (mc)
|
||
|
return mc;
|
||
|
--
|
||
|
1.7.5.4
|
||
|
|