更改 Linux 中的文件权限,以便只有 root 可以查看/使用它,当您没有足够的文件权限时,会打开对话框要求输入 root 密码

更改 Linux 中的文件权限,以便只有 root 可以查看/使用它,当您没有足够的文件权限时,会打开对话框要求输入 root 密码

如何在 Linux 中更改文件权限,以便只有 root 用户可以访问/打开 Linux 中的文件/目录。

编辑

正在做

chmod 600 文件名 + sudo chown root:root 文件名  

将其更改为只有 root 可访问的文件。但是我只有在执行 $ sudo cat file.txt 时才能看到文件内容;但是当我单击它时,它说无法显示文件内容。因此,当我单击它时,我希望它向我显示一个对话框或类似的东西,提示我输入 root 密码,然后我就可以打开文件。这可能吗??

如何将文件权限从 root 用户改回普通用户 A?

编辑2

我甚至可以做

命令 nautilus 。
然后提供 root 密码来打开文件。但这一切都是从终端进行的。我想打开某种应用程序/对话框,这样当我以普通用户身份单击该文件/目录时,它会提示我输入 root 密码,而不仅仅是告诉我您没有打开该文件的适当文件权限。我想这一定是可能的,可能使用一些脚本。有什么想法吗?

谢谢 :)

解决了这里

答案1

sudo chown root:root filename
sudo chmod 600 filename

如果它是可执行文件,请使用 700 作为权限。

您还可以以符号形式指定权限:

sudo chmod u=rw filename

有关 Nautilus 脚本和扩展的信息,请参阅这里这里。 看有关名为 nautilus-gksu 的扩展的信息,该扩展在上下文菜单中添加了“以管理员身份打开”项(以及其他扩展)。

答案2

您可以使用类似的程序gksudo提示您输入密码,因此如果这是一个文本文件,您可以运行:

gksudo gedit filename

但我不明白如何默认实现这一点。

Nautilus 确实具有脚本功能,因此你可以安装这个 Nautilus 脚本在当前位置打开一个 root nautilus 窗口,然后使用 root 凭据启动相应的程序。

这很简单,所以你应该能够修改它以使用你想要的任何程序直接打开文件。我不知道有关该文件的任何细节,所以我不能更具体。


好的,这是操作方法:

#!/bin/bash
# Place in ~/.gnome2/nautilus-scripts
# I named it "Open As Root..." the filename will be the menu name
# Set as executable
gksudo gnome-open $@

它现在将显示在右键单击->脚本下,并在验证后使用默认的 gnome 应用程序。

默认情况下,sudo 会在短时间内缓存您的密码,gtksudo 也是如此。要防止这种情况,请运行:

sudo visudo

并将其添加到默认值行:

Defaults    timestamp_timeout = 0

这将禁用 sudo 缓存并每次提示您输入密码。

相关内容