FS#54554 - [arch-install-scripts] genfstab generates illegal mount option for VirtualBox mount

Attached to Project: Arch Linux
Opened by Johannes Ernst (jernst) - Friday, 23 June 2017, 03:04 GMT
Last edited by Dave Reisner (falconindy) - Sunday, 26 November 2017, 22:42 GMT
Task Type Bug Report
Category Arch Projects
Status Closed
Assigned To Dave Reisner (falconindy)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Run Arch in VirtualBox.
Create shared folder "foo" in VirtualBox.
In Arch:
* mount -t vboxsf foo /foo
* genfstab / > /etc/fstab
will produce option "relatime" in foo's mount line, which causes:
* mount -a
(such as during subsequent boot) to fail: "no such option".
Removing the relatime option from the foo line removes the problem.
This task depends upon

Closed by  Dave Reisner (falconindy)
Sunday, 26 November 2017, 22:42 GMT
Reason for closing:  Fixed
Additional comments about closing:  https://git.archlinux.org/arch-install-s cripts.git/commit/?id=4b781af21f13ab6356 29f3243f746a501d78f76c
Comment by Doug Newgard (Scimmia) - Friday, 23 June 2017, 03:27 GMT
I'm really interested, what's the use-case here?
Comment by Johannes Ernst (jernst) - Friday, 23 June 2017, 04:01 GMT
Liking the Mac for office work. Liking Arch for programming, so it's a MacBook Pro running VirtualBox.

Problem: you have two home directories. So I mount the Mac home dir on the Linux side. This isn't as fast as I'd like it to be, but beats scp between the two.

Of course, I could edit /etc/fstab by hand, but I never know what numbers I should put at the end of the lines, so I figure it's faster to run genfstab -- which is sort of its entire point anyway.

So I was all happy with myself, until I rebooted :-)
Comment by Dave Reisner (falconindy) - Friday, 23 June 2017, 13:13 GMT
You're using genfstab to regenerate your /etc/fstab at some point after installation completes? That's not really a use case I'm interested in supporting. But this seems like it should be simple enough to add a quirk... please post your mountinfo with the vbox share mounted.

The rules for the dump/pass numbers at the end of fstab lines are simple:

1) dump is always 0.
2) pass is 0 to disable fsck, else non-zero.
Comment by Doug Newgard (Scimmia) - Friday, 23 June 2017, 22:49 GMT
It could easily be done at install time as well, especially if mounting it to /home, so I don't think this is exclusively about running genfstab post-install.
Comment by Johannes Ernst (jernst) - Saturday, 24 June 2017, 04:31 GMT
Yes, my install process on the VirtualBox side is 1) install system 2) useradd myself, 3) mount -t vboxsf, genfstab, reboot, 4) start using.
Comment by Dave Reisner (falconindy) - Saturday, 24 June 2017, 13:12 GMT
And I still need your /proc/self/mountinfo if you'd like to see this fixed.
Comment by Johannes Ernst (jernst) - Wednesday, 28 June 2017, 03:40 GMT
17 21 0:4 / /proc rw,nosuid,nodev,noexec,relatime shared:5 - proc proc rw
18 21 0:17 / /sys rw,nosuid,nodev,noexec,relatime shared:6 - sysfs sys rw
19 21 0:6 / /dev rw,nosuid,relatime shared:2 - devtmpfs dev rw,size=4085760k,nr_inodes=1021440,mode=755
20 21 0:18 / /run rw,nosuid,nodev,relatime shared:11 - tmpfs run rw,mode=755
21 0 8:1 / / rw,relatime shared:1 - ext4 /dev/sda1 rw,data=ordered
22 18 0:7 / /sys/kernel/security rw,nosuid,nodev,noexec,relatime shared:7 - securityfs securityfs rw
23 19 0:19 / /dev/shm rw,nosuid,nodev shared:3 - tmpfs tmpfs rw
24 19 0:20 / /dev/pts rw,nosuid,noexec,relatime shared:4 - devpts devpts rw,gid=5,mode=620,ptmxmode=000
25 18 0:21 / /sys/fs/cgroup ro,nosuid,nodev,noexec shared:8 - tmpfs tmpfs ro,mode=755
26 25 0:22 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime shared:9 - cgroup cgroup rw,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd
27 18 0:23 / /sys/fs/pstore rw,nosuid,nodev,noexec,relatime shared:10 - pstore pstore rw
28 25 0:24 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime shared:12 - cgroup cgroup rw,freezer
29 25 0:25 / /sys/fs/cgroup/net_cls,net_prio rw,nosuid,nodev,noexec,relatime shared:13 - cgroup cgroup rw,net_cls,net_prio
30 25 0:26 / /sys/fs/cgroup/cpu,cpuacct rw,nosuid,nodev,noexec,relatime shared:14 - cgroup cgroup rw,cpu,cpuacct
31 25 0:27 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime shared:15 - cgroup cgroup rw,cpuset
32 25 0:28 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime shared:16 - cgroup cgroup rw,memory
33 25 0:29 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime shared:17 - cgroup cgroup rw,blkio
34 25 0:30 / /sys/fs/cgroup/pids rw,nosuid,nodev,noexec,relatime shared:18 - cgroup cgroup rw,pids
35 25 0:31 / /sys/fs/cgroup/perf_event rw,nosuid,nodev,noexec,relatime shared:19 - cgroup cgroup rw,perf_event
36 25 0:32 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime shared:20 - cgroup cgroup rw,devices
37 19 0:33 / /dev/hugepages rw,relatime shared:21 - hugetlbfs hugetlbfs rw
38 19 0:16 / /dev/mqueue rw,relatime shared:22 - mqueue mqueue rw
39 17 0:34 / /proc/sys/fs/binfmt_misc rw,relatime shared:23 - autofs systemd-1 rw,fd=34,pgrp=1,timeout=0,minproto=5,maxproto=5,direct
40 21 0:35 / /tmp rw,nosuid,nodev shared:24 - tmpfs tmpfs rw
41 18 0:8 / /sys/kernel/debug rw,relatime shared:25 - debugfs debugfs rw
43 18 0:37 / /sys/kernel/config rw,relatime shared:26 - configfs configfs rw
71 21 0:38 / /home/jernst rw,nodev,relatime shared:27 - vboxsf jernst rw
154 20 0:41 / /run/user/501 rw,nosuid,nodev,relatime shared:106 - tmpfs tmpfs rw,size=818020k,mode=700,uid=501,gid=1000

Interestingly, lsblk does not show the vboxsf device or that /home/jernst is mounted.
Comment by Dave Reisner (falconindy) - Thursday, 29 June 2017, 12:23 GMT
> Interestingly, lsblk does not show the vboxsf device or that /home/jernst is mounted.
That's not interesting, that's working as intended. There's no block device directly backing a vboxsf filesystem.

This should fix your problem: https://github.com/falconindy/arch-install-scripts/commit/4b781af21f13ab635629f3243f746a501d78f76c

Loading...