【问题标题】:Running lynx via sudo通过 sudo 运行 lynx
【发布时间】:2013-02-13 16:06:07
【问题描述】:

我正在尝试在apache user via sudo 下运行Lynx,但似乎 lynx 试图访问我的主目录:

    $ sudo -u apache lynx
    /home/ssmirnov/: No such directory

我的主目录有这样的权限:drwx------

你能告诉我如何在另一个用户下运行 Lynx 吗?

【问题讨论】:

  • 显示运行grep apache /etc/passwd的输出

标签: lynx


【解决方案1】:

您可以尝试使用 sudo 的 -H 选项。它将$HOME 设置为您尝试运行的用户的主目录。也许 lynx 正在那里寻找文件,我不知道。 (在我的机器上似乎没有问题......但是。)

-i 也可以;它基本上设置了环境,就好像用户已经登录一样,包括 cd'ing 到他们的主目录。请注意,这意味着启动为该用户指定的 shell、运行登录脚本等等。如果不允许用户登录,这可能会失败。

如果您想要从您的主目录运行它,例如将某些内容下载到该位置,当然您必须以某种方式授予对apache 的访问权限。这可以在大多数现代 Linux 系统上的 ext* 文件系统上完成(无需授予所有人访问权限),方法是说类似setfacl -m u:apache:rwx $HOME。在紧要关头,您可以暂时将apache 放入您的组并授予组rwx 对您的homedir 的权限......但除非这是您的家用机器,否则我不会这样做。

【讨论】:

  • 不幸的是,-H 和 -i 都没有解决这个问题 :( 我没有更改主目录权限,因为我需要在不同的环境中通过脚本运行 lynx。
  • 脚本需要 lynx 有什么特别的原因吗?它更多地用于交互式使用;在脚本中,大多数人使用wget
猜你喜欢
  • 1970-01-01
  • 2013-07-23
  • 1970-01-01
  • 2012-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-12
相关资源
最近更新 更多