[Test feedback] 【deepin 25先锋测试】自带浏览器无法上传root用户的644可读文件
Tofloor
poster avatar
字甲达宾
deepin
2025-04-13 07:10
Author

【deepin 25先锋测试】自带浏览器无法上传 root 用户属性的644可读文件

2025.4.13

复现:

  1. 在终端,输入 sudo -i , 切换到 root 用户。

  2. 以 root 用户身份,创建自定义目录
    mkdir -p /home/test/

  3. 以 root 用户身份,复制某个 png 图片,或者 deb 文件,到 /home/test/ 目录下。

  4. 查看 /home/test/ 目录,两级的 属主都是 root:root, 权限都 是 755 (正常值)。

  5. 查看 /home/test/ 目录下的 xxx.png, xxx.deb,两个文件的属主都是 root:root, 权限都 是 644 (正常值)。

  6. 用 系统自带的浏览器,登陆 deepin 论坛,发贴,点击上传,发现 /home/test/ 目录下的 xxx.png 和 xxx.deb ,2个文件的图标都带锁。点击文件,上传时无反应。


    总结:只要是 root 用户的文件,哪怕权限是 644 可读的、正常属性,在 自带的浏览器里,图标都会加锁?无法上传?
    这个 权限逻辑不太正常吧?

    缺陷出在 自带的浏览器

fastfetch --logo none
abc@abc-PC


OS: Deepin beige 25 x86_64
Host: 20H3A00RCD (ThinkPad E470c)
Kernel: Linux 6.6.71-amd64-desktop-hwe
Uptime: 35 mins
Packages: 2433 (dpkg)
Shell: bash 5.2.21
Display (BOE06B3): 1366x768 @ 60 Hz in 14″ [Built-in]
DE: DDE
WM: KWin (X11)
Theme: deepin-dark [GTK2]
Icons: nirvana [GTK2]
Cursor: bloom
Terminal: deepin-terminal 6.0.17
Terminal Font: Noto Sans Mono (11pt)
CPU: Intel(R) Core(TM) i3-6006U (4) @ 2.00 GHz
GPU: Intel HD Graphics 520 @ 0.90 GHz [Integrated]
Memory: 2.35 GiB / 7.65 GiB (31%)
Swap: 0 B / 10.42 GiB (0%)
Disk (/): 7.17 GiB / 97.87 GiB (7%) - ext4
Disk (/persistent): 27.82 GiB / 118.21 GiB (24%) - ext4
Battery (01AV413): 77% [Discharging]
Locale: zh_CN.UTF-8

Reply Favorite View the author
All Replies
云水木石
deepin
2025-04-22 10:45
#1

这个问题和文件是否属于root,还有644权限没有关系,而是和文件所在的目录有关系。现在的浏览器,运行在玲珑容器中。玲珑容器是一个与host隔离的环境,除了 $HOME 等几个有限的目录外,其它目录是无法访问的。比如您这边建的 /home/test 目录,对于容器内部是不可见的。

为什么浏览器打开的文件管理器又可以看到?这是由于文件管理器是系统组件,并不运行在玲珑容器内,所以 /home/test 对文件管理器是可见的。

可以做一个实验,在 $HOME 下见一个owner是 root:root 的文件夹,再以root权限复制一个图片文件,其权限为644,再上传是可以的。

所以问题的根源在于玲珑环境和文件管理器对于文件的可见范围不同。

Reply View the author
字甲达宾
deepin
2025-04-22 13:37
#2
云水木石

这个问题和文件是否属于root,还有644权限没有关系,而是和文件所在的目录有关系。现在的浏览器,运行在玲珑容器中。玲珑容器是一个与host隔离的环境,除了 $HOME 等几个有限的目录外,其它目录是无法访问的。比如您这边建的 /home/test 目录,对于容器内部是不可见的。

为什么浏览器打开的文件管理器又可以看到?这是由于文件管理器是系统组件,并不运行在玲珑容器内,所以 /home/test 对文件管理器是可见的。

可以做一个实验,在 $HOME 下见一个owner是 root:root 的文件夹,再以root权限复制一个图片文件,其权限为644,再上传是可以的。

所以问题的根源在于玲珑环境和文件管理器对于文件的可见范围不同。

这个原理,应该是没毛病的。

但是,这种 “无法上传普通文件”的症状,是不符合 用户操作逻辑和体验的。换一种说法:是否应该调整、优化?

另外,同样用这个自带的浏览器,打开 /usr/share/pixmaps/ 图片目录:


  • debian-logo.png 图片,可以正常上传

  • xfce4*.png 图片,又会上传失败。这就比较郁闷了(这些图片需要安装 xfce4相关的软件包)。

    我的理解:

  • 玲珑系统,有一套类似于“注册/数据库”机制:来自玲珑的,互相可见。非玲珑体系的文件,无权读取。

Reply View the author
云水木石
deepin
2025-05-12 10:06
#3
字甲达宾

这个原理,应该是没毛病的。

但是,这种 “无法上传普通文件”的症状,是不符合 用户操作逻辑和体验的。换一种说法:是否应该调整、优化?

另外,同样用这个自带的浏览器,打开 /usr/share/pixmaps/ 图片目录:


  • debian-logo.png 图片,可以正常上传

  • xfce4*.png 图片,又会上传失败。这就比较郁闷了(这些图片需要安装 xfce4相关的软件包)。

    我的理解:

  • 玲珑系统,有一套类似于“注册/数据库”机制:来自玲珑的,互相可见。非玲珑体系的文件,无权读取。

关于你您提到的同目录下的文件,有的能上传,有的不能,有没有可能是因为不能上传的文件是软链接,链到其它的目录了?

目前玲珑正在完善这一块的处理,确实玲珑环境作为容器,是不宜允许过多访问宿主的资源的,但确实又存在访问宿主文件系统的资源的需求,后续会提供完善的解决方案,请继续关注。

Reply View the author