V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fengleidongxi
V2EX  ›  Android

有没有办法修改/sdcard 分区文件夹的权限?

  •  
  •   fengleidongxi · 2017-12-15 20:21:58 +08:00 · 7608 次点击
    这是一个创建于 2317 天前的主题,其中的信息可能已经有所发展或是发生改变。

    adb 能实现吗? /sdcard 和 /data 不是合并在一起了吗?为什么 /data 能,sdcard 不能?

    17 条回复    2017-12-20 00:45:44 +08:00
    iwtbauh
        1
    iwtbauh  
       2017-12-15 21:00:57 +08:00 via Android
    sdcard 使用的 vfat 文件系统不支持文件权限
    LGA1150
        2
    LGA1150  
       2017-12-15 21:26:57 +08:00 via Android   ❤️ 1
    用 RE 管理器进 /data/media/0 修改之
    WordTian
        3
    WordTian  
       2017-12-15 21:32:07 +08:00 via Android
    纠证楼主一个概念。/data 和 /sdcard 并没有合并,它们只是在同一个存储器的不同分区里。
    ltux
        4
    ltux  
       2017-12-16 02:49:26 +08:00 via Android   ❤️ 1
    有,需要 root 权限,参见 2 楼。
    ysc3839
        5
    ysc3839  
       2017-12-16 03:07:15 +08:00 via Android
    @WordTian 有的手机是合并的,有的没合并。合并了的在 /data/media 里面
    WordTian
        6
    WordTian  
       2017-12-16 04:29:59 +08:00 via Android
    @ysc3839 那并不是合并,只是把 sd 分区挂载在那个目录下。两者肯定不可能放一起的,因为这样你格式化 sdcard 的时候就会连你安装的应用和数据一起清掉了
    dinghmcn
        7
    dinghmcn  
       2017-12-16 08:42:04 +08:00 via Android
    @WordTian 手机如果只支持 mtp 查看 sdcard 文件,那么就是用 /data/media 目录直接做 sdcard,格式化 /data 分区会清除 sdcard,恢复出厂设置时清除 /data 分区会跳过 media 目录
    dinghmcn
        8
    dinghmcn  
       2017-12-16 08:44:10 +08:00 via Android
    root 后修改权限也不一定有用,毕竟还有 SELinux
    skylancer
        9
    skylancer  
       2017-12-16 11:29:04 +08:00
    @iwtbauh 你确定 /sdcard 是 vfat?
    LGA1150
        10
    LGA1150  
       2017-12-16 11:55:56 +08:00 via Android
    @iwtbauh
    @skylancer
    是虚拟的 sdcardfs
    fengleidongxi
        11
    fengleidongxi  
    OP
       2017-12-16 12:06:56 +08:00
    @LGA1150 非常感谢,试了一下,确实可以。
    如何修改所有者和权限,才有实现类似 /data 沙箱的效果?比如一个画图应用,一个学外语应用,画图应用创建的文件夹和文件夹自己可以读取,让学外语应用无法读取?更改了所有者和权限后,连画图应用自己也无法读了。
    LGA1150
        12
    LGA1150  
       2017-12-16 12:24:13 +08:00 via Android
    @fengleidongxi 所有者中 u0 开头的就是每个 APP,可以在终端模拟器中输入 ps -A 查看分别是哪个
    WordTian
        13
    WordTian  
       2017-12-16 14:11:03 +08:00 via Android
    @ysc3839 @dinghmcn
    好吧,安卓这变化有点快,我去研究研究
    skylancer
        14
    skylancer  
       2017-12-17 11:46:11 +08:00
    @LGA1150 我在嘲讽而已

    @WordTian 这个变化基本上 4.4 的时候都实装了(我还见过三星 4.3 就实装的)
    skylancer
        15
    skylancer  
       2017-12-17 11:48:22 +08:00
    @WordTian 大概你不知道首先 /sdcard 其实是 /data/media,借助于 fuse 可以实现各种功能,其次 Recovery 现在清除 /data 时如果不选择清除 /data/media,则会用 rm -rf 来取代 mkfs
    iwtbauh
        16
    iwtbauh  
       2017-12-17 11:53:17 +08:00 via Android
    @skylancer
    @LGA1150
    看了一下现在确实是这样的,抱歉了
    以前折腾 Android 2.x, 4.1 之类的系统时确实是直接挂载 vfat,4.4 是 fuse,具体是什么没看,7.1 是 sdcardfs
    woyaojizhu8
        17
    woyaojizhu8  
       2017-12-20 00:45:44 +08:00
    @fengleidongxi
    @LGA1150 手动更改各个文件夹的权限实现各应用的文件夹隔离 太麻烦了,有没有工具可以让这个过程方便一点呢?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   877 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:47 · PVG 05:47 · LAX 14:47 · JFK 17:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.