[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240617-backfisch-chilipulver-77c21e2b338c@brauner>
Date: Mon, 17 Jun 2024 09:53:22 +0200
From: Christian Brauner <brauner@...nel.org>
To: Hongbo Li <lihongbo22@...wei.com>
Cc: linux-ext4@...r.kernel.org, linux-fsdevel@...r.kernel.org
Subject: Re: How to create new file in idmapped mountpoint
On Fri, Jun 14, 2024 at 03:09:22PM GMT, Hongbo Li wrote:
> Hi everyone !
>
> How can I create new file in idmapped mountpoint in ext4?
>
> I try to do the following test:
> ```
> losetup /dev/loop1 ext4.img
> mkfs.ext4 /dev/loop1
> mount /dev/loop1 /mnt/ext4
> ./mount-idmapped --map-mount b:0:1001:1 /mnt/ext4 /mnt/idmapped1
> cp testfile /mnt/idmapped1
> ```
> then it rebacks me:
> ```
> cp: cannot create regular file '/mnt/idmapped1/testfile': Value too large
> for defined data type
> ```
> Did I use it incorrectly?
You're setting up a mount in which uid 1001 maps to uid 0. So if you
create files as uid 1001 they will map to uid 0 on-disk.
But you haven't mapped uid 0 to anything so the mount doesn't allow the
root user to create files. In order to that you could e.g., do:
sudo mount --bind -o X-mount.idmap='0:1001:1 1001:0:1' /mnt/ex4/ /mnt/idmapped1/
If you now (as root) do cp testfile /mnt/idmapped1/ it will work and
files created by root will show up as being owned by uid 1001 on disk.
Powered by blists - more mailing lists