В Mon, 08 Apr 2013 11:37:14 -0400
Jeff Mahoney
On 4/8/13 8:49 AM, Tetsuo Handa wrote:
Hello.
It seems to me that "mount --move /tmp/old/ /tmp/new/" is not working on opensuse 12.3 kernel.
linux:~ # uname -r 3.7.10-1.1-desktop linux:~ # mkdir -p /tmp/old/ /tmp/new/ linux:~ # mount -t tmpfs none /tmp/old/ linux:~ # mount --move /tmp/old/ /tmp/new/ mount: wrong fs type, bad option, bad superblock on /tmp/old, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so
strace says
mount("/tmp/old", "/tmp/new", 0xb7c34168, MS_MGC_VAL|MS_MOVE, NULL) = -1 EINVAL (Invalid argument)
Is this a bug (or is this caused by yama-like restriction mechanism)?
Do you know the last kernel where this worked as you expect? I've tested vanilla kernels from 3.0 to 3.9-rc4 and it behaves as you describe in your test.
This seems to be yest another fallout of changed systemd policy - it now makes / shared mount. bor@opensuse:~> sudo mount --move /tmp/old /tmp/new mount: wrong fs type, bad option, bad superblock on /tmp/old, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so bor@opensuse:~> sudo mount --make-private / bor@opensuse:~> sudo mount --move /tmp/old /tmp/new bor@opensuse:~> cd