Hi,

I would like to change the owner of a directory on the sdcard /sdcard/aDirectory

I have a terminal installed on my Android 10 (LineageOS 17) com.android.terminal

sudo is not present so I use su and it works.

su
#Terminal was granted Superuser rights

cd /sdcard
chown 10:10 aDirectory
#I don't get any error message.

stat aDirectory
#Uid (0/root)

So the owner stay root no matter what I’m doing, any ideas ?

  • u/lukmly013 💾 (lemmy.sdf.org)
    link
    English
    13 months ago

    But is it an SD card.

    I mean, the directory name says so, but…

    ~ $ realpath /sdcard
    /storage/emulated/0
    ~ $
    

    …it may also not be.

    • 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍
      link
      fedilink
      English
      43 months ago

      It doesn’t matter. FAT filesystems - which are usually the default on SD cards, simply do not support ownership or file permissions. Linux emulates these attributes at mount time, but they apply to the entire SD card. You can mount an SD card and tell Linux to act as if root owns everything on the card; you that you own everything on the card; and it will be so until you unmount it and remount it with a different ownership.

      These are filesystem level attributes, not device attributes. If you have a modern internal nvme drive and you format it with vfat, you will not be able to set permissions or ownership at the file level, but only at mount time, for the entire drive.

        • @TrickDacy@lemmy.world
          link
          fedilink
          English
          2
          edit-2
          3 months ago

          True, but presumably op probably has an sd card if they say they do.

          Edit: I see both ways of reading their statements on re-reading them.

        • 𝕽𝖚𝖆𝖎𝖉𝖍𝖗𝖎𝖌𝖍
          link
          fedilink
          English
          23 months ago

          You mean, they’re mounting something that isn’t an SD card to the /sdcard directory? Like something truly evil, such as mount -t btrfs -o subvol=@home / /sdcard? Or do you think there’s not anything mounted there; it’s just a directory in the root partition? None of that would make any sense.

          If they’re letting whatever automount tool (eg udevil) do its thing, this is practically impossible. And if they know enough to do it by hand, I think they’d have answered the direct question of “which filesystem” with a filesystem rather than a mount point. Don’t you think? We still don’t know what filesystem they’re working with, since they haven’t answered the question.

          • u/lukmly013 💾 (lemmy.sdf.org)
            link
            English
            23 months ago

            something that isn’t an SD card to the /sdcard directory?

            Could be.

            On my phone (Poco X3 Pro - stock Android 11, MIUI 12) the /sdcard is a symlink pointing to /storage/self/primary which itself is a symlink pointing to /storage/emulated/0, which is /data/media, the user-accessible portion of internal storage.
            Though from what I can find it anyway is just emulated FAT filesystem which is actually ext4 under that.

            Something about backwards compatibility as the directory used to actually be used for SD cards in the past.