[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1029384: marked as done (ro option fails when used to mount a previously umounted partition)



Your message dated Thu, 20 Feb 2025 15:13:08 +0100 (CET)
with message-id <20250220141308.D7A53BE2EE7@eldamar.lan>
and subject line Closing this bug (BTS maintenance for src:linux bugs)
has caused the Debian Bug report #1029384,
regarding ro option fails when used to mount a previously umounted partition
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1029384: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1029384
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: mount
Version: 2.38.1-4
Severity: normal

Hello,

I have been trying different commands to temporarily mount a partition
as read-only in a different place than the one declared in fstab
(which will be used by a different partition). I tried simple commands
and ended passing all long parameters hoping it was a
misunderstanding:

---8<---
# umount /dev/mapper/VGSeagate1500-LVStorageA
# mount --verbose --type ext4 --options-source disable --options ro,noload --source /dev/mapper/VGSeagate1500-LVStorageA --target /mnt/storage-b
mount: /mnt/storage-b: /dev/mapper/VGSeagate1500-LVStorageA already mounted or mount point busy.
       dmesg(1) may have more information after failed mount system call.
# mount --verbose --type ext4 --options-source disable --options relatime --source /dev/mapper/VGSeagate1500-LVStorageA --target /mnt/storage-b
mount: /dev/mapper/VGSeagate1500-LVStorageA mounted on /mnt/storage-b.
--->8---

The man page says "To prevent this kind of write access, you may want
to mount an ext3 or ext4 filesystem with the ro,noload mount options
or set the block device itself to read-only mode, see the blockdev(8)
command." That is "or", not "and", and failed anyway.

Replacing "ro,noload" with "relatime" lets it mount, but RW. The only
text in dmesg is "dm-10: Can't mount, would change RO state" when it
fails. I also tried removing the line from /etc/fstab (assuming it was
getting in the way, even with "--options-source disable"), still not
mounting as read-only.

OK, lets try with blockdev too:

---8<---
# umount /dev/mapper/VGSeagate1500-LVStorageA
# blockdev --getro /dev/mapper/VGSeagate1500-LVStorageA
0
# blockdev --setro /dev/mapper/VGSeagate1500-LVStorageA
# blockdev --getro /dev/mapper/VGSeagate1500-LVStorageA
1
# mount --verbose --type ext4 --options-source disable --options ro,noload --source /dev/mapper/VGSeagate1500-LVStorageA --target /mnt/storage-b
mount: /mnt/storage-b: /dev/mapper/VGSeagate1500-LVStorageA already mounted or mount point busy.
       dmesg(1) may have more information after failed mount system call.
# mount --verbose --type ext4 --options-source disable --options relatime --source /dev/mapper/VGSeagate1500-LVStorageA --target /mnt/storage-b
mount: /mnt/storage-b: /dev/mapper/VGSeagate1500-LVStorageA already mounted or mount point busy.
       dmesg(1) may have more information after failed mount system call.
# blockdev --setrw /dev/mapper/VGSeagate1500-LVStorageA
# blockdev --getro /dev/mapper/VGSeagate1500-LVStorageA
0
# mount --verbose --type ext4 --options-source disable --options relatime --source /dev/mapper/VGSeagate1500-LVStorageA --target /mnt/storage-b
mount: /dev/mapper/VGSeagate1500-LVStorageA mounted on /mnt/storage-b.
--->8---

This is even worse, no mount possible until "--setrw". dmesg showed
"/dev/mapper/VGSeagate1500-LVStorageA: Can't open blockdev" and
"dm-10: Can't mount, would change RO state" after the first "--options
realtime" cmd (while getro = 1). I assume the "change RO state" now
means to writable, and the other times was to not writable.

Maybe the bug is in the man page (needs update to newer procedure?),
maybe bug in code (mount? filesystem? LVM?). There must be a way to
mount read-only as initial state (not via second invocation with
"remount,ro", which works), to avoid even the tiniest window of
writability (not important for my usage, but surely for others). And
if not possible anymore (uh? since when?), it could be explicitly
documented.

Cheers,
GSR
 

-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
merged-usr: no
Architecture: amd64 (x86_64)

Kernel: Linux 5.17.0-2-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages mount depends on:
ii  libblkid1      2.38.1-4
ii  libc6          2.36-7
ii  libmount1      2.38.1-4
ii  libselinux1    3.3-1+b1
ii  libsmartcols1  2.38.1-4

mount recommends no packages.

Versions of packages mount suggests:
ii  nfs-common  1:1.3.4-4

-- no debconf information

--- End Message ---
--- Begin Message ---
Hi

This bug was filed for a very old kernel or the bug is old itself
without resolution.

If you can reproduce it with

- the current version in unstable/testing
- the latest kernel from backports

please reopen the bug, see https://www.debian.org/Bugs/server-control
for details.

Regards,
Salvatore

--- End Message ---

Reply to: