我经常使用 gedit 打开文档,gedit /etc/apt/sources.list
显然,它是只读的,因为我不是以 root 身份打开它。
但是,为什么gedit
仍然允许我编辑文件,在标题栏中显示一个非常浅的“[只读]”提示,可能每个人都错过了,或者至少我错过了,并等待我在完成我想要的所有更改后尝试保存,只是为了说“嘿!你无法保存。你浪费了时间。”?
有没有办法:
- 让 gedit 阻止任何只读文件的版本(这样我就不会浪费时间编辑我无法保存的内容,这是我喜欢的和“自然”的思维方式)
- 让 gedit-saving 在保存时“直立”以获取 sudo 权限(这样我就不会浪费编辑的时间;但如果只读来自其他原因,如 RO 支持/挂载,那么这将不起作用)
答案1
任何可被“其他人”读取的系统文件都可以被系统中的任何人使用任何可以打开该文件的软件打开。这就是默认实现的方式。一种理论上的方法是关闭“其他人”的读取权限,但这可能会产生意想不到的副作用,我不建议这样做。
实现您想要的简单方法是安装 Gedit 的 snap 或 flatpak 版本。此类版本在沙盒中运行,并且首先无法访问系统文件。或者,使用firejail
为您的编辑器建立沙盒。
关于gedit
“upighted”:如果您决定以 root 身份工作,请多加小心。尽管如此,如果您突然遇到无法保存更改的情况,请按照评论中的建议进行操作:以临时名称保存文件,然后正确打开系统文件并粘贴修改后的内容。
开发人员可能不想费心实现这样的功能。1) 专业人员通常通过终端进行系统管理;2) 作为典型的桌面用户,您不会每天都编辑系统文件。只需注意每次都以正确的方式进行编辑,如果您忘记以 root 身份正确打开文件,则可以轻松纠正。