【问题标题】:How can I make a Perl script executable from everywhere by everyone?如何让每个人都可以从任何地方执行 Perl 脚本?
【发布时间】:2009-05-22 04:15:30
【问题描述】:

我写了一个非常简单的 perl 脚本,现在我想让它在任何地方都可以执行。

我知道我可以把它放到 /bin/ 中,从 'mytest.pl' -> 'mytest' 重命名它,然后 chmod +x,但这是标准做法吗?我注意到 /bin/ 中没有任何东西是 perl 脚本。

另外,我希望它能够登录到 /var/logs/mytest/*

是否有任何我应该注意的安全问题?

【问题讨论】:

  • 让它看起来更专业!比如 /usr/bin/cpan

标签: perl executable


【解决方案1】:

最好将用户制作的脚本放在 /usr/local/bin 中,但是否值得担心这是您的决定。至于登录到/var/logs/mytest/*,您可以尝试使用可以写入目录的用户创建脚本suid(出于安全考虑,有时不允许这样做),或者只创建/var/logs /mytest 世界可写。

【讨论】:

  • 谢谢马特,我在那里找到了一大堆 perl 脚本,现在我正在追随他们的脚步。
  • 某些系统可能需要perlsuid 可执行文件才能以 setuid 权限运行 Perl 脚本。 perlsuid 可能不会默认安装(Debian 将其拆分为自己的额外包(packages.debian.org/perl-suid),它不依赖于)并且已被弃用,以支持使用其他机制,如 sudo
【解决方案2】:

与其担心日志文件权限问题,何不登录系统记录器呢?这就是它的用途。见Sys::Syslog

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多