如何打开Perl文件句柄以通过sudo(或作为另一个用户)写入数据
发布时间:2020-12-15 23:33:37 所属栏目:大数据 来源:网络整理
导读:我想将数据写入文件,但应该使用特定用户的访问权限打开文件句柄. 因此,以下声明: open (FH," $filename") or die "$@n"; 允许以特定用户身份写入文件. 有没有办法在Perl脚本中执行此操作,而不使用sudo -u $username运行整个脚本? 解决方法 有两种既定的方
我想将数据写入文件,但应该使用特定用户的访问权限打开文件句柄.
因此,以下声明: open (FH,"> $filename") or die "$@n"; 允许以特定用户身份写入文件. 有没有办法在Perl脚本中执行此操作,而不使用sudo -u $username运行整个脚本? 解决方法
有两种既定的方法.堆叠器,您被邀请编辑此答案以填补每个答案的缺点.
用sudo运行程序.您在程序中执行的第一件事是打开所需的文件并保留句柄,然后立即执行drop the root privileges.必须以低权限进行任何进一步处理. Apache httpd工作就像这样,它以root身份打开日志文件,但继续以无人或类似方式运行. 如果您不喜欢这种方式,请正常运行程序,当您需要提升时,创建一个新进程并使用用户配置的sudo,su –,kdesu / gksu或诸如此类的方式运行它. CPAN客户端就像这样工作,它以普通用户的身份获取,解包,构建和测试模块,但是在安装时调用sudo make install等. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |