了解如何读取 LVM 属性和文件系统权限

了解如何读取 LVM 属性和文件系统权限

我正在 Dell OS10(Debian Stretch under the hood)上进行一些逆向工程,因为我认为它的工作原理真的很酷,而且我正在查看负责创建桥梁的文件之一。我想用它来测试我认为来自上面的命令流是如何工作的,但即使作为 root,它也说它是只读的:

"/alt/opt/dell/os10/lib/python/dn_base_br_tool.py" [readonly] 263 lines, 6785 characters
Press ENTER or type command to continue

所以我去检查了挂载的权限:

root@OS10:/alt/opt/dell/os10/bin# df -P /alt/opt/dell/os10/lib/python/dn_base_br_tool.py | tail -1 | cut -d' ' -f 1
/dev/mapper/OS10-SYSROOT
root@OS10:/alt/opt/dell/os10/bin#
root@OS10:/alt/opt/dell/os10/bin# lvs
  LV      VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  LICENSE OS10 -wi-ao---- 32.00m
  SYSROOT OS10 -wi-ao---- 13.50g

我去查了一下-wi-ao意思并基于这个解释。基于此,我看到以下内容

  • 属性 2 = 可写
  • 属性 3 = 继承
  • 属性 5 = 活动量
  • 属性 6 = 开放体积

我想也许有 ACL,但似乎也不是这样:

root@OS10:/alt/opt/dell/os10/bin# ls -la /alt/opt/dell/os10/lib/python/dn_base_br_tool.py
-rw-r--r-- 1 root root 6785 Jun 16  2020 /alt/opt/dell/os10/lib/python/dn_base_br_tool.py

问题是 - 为什么该文件是只读的?

答案1

检查/proc/mounts以查看文件系统的实际安装选项。

lvs仅讲述 LVM 层:即使 LV 已在可写模式下激活,如果需要,仍然可以以只读模式挂载文件系统。

该文件也可能在文件系统中被标记为“不可变” - 请参阅lsattr /alt/opt/dell/os10/lib/python/dn_base_br_tool.py

相关内容