node.js mkdirp特权问题

时间:2014-11-19 00:19:54

标签: node.js

我正在尝试从名为“foo”的帐户运行node.js,并希望在“bar”区域中创建一个目录:

/家/酒吧/的public_html / openDirectory /

我正在尝试使用mkdirp并收到以下错误:

 process.setuid(555) ;  //  555 is foo's UID
 mkdirp( '/home/bar/public_html/openDirectory' , function(err)  {
  

{[错误:EACCES,mkdir'/ home / bar / public_html / openDirectory']    错误:3,    代码:'EACCES',     路径:'/ home / bar / public_html / openDirectory'}

当我以root身份运行或者写入foo的区域时,mkdirp对我来说很好,但是当我尝试在另一个用户区域使用mkdirp时,我收到了EACCESS错误。

/ home / bar / public_html / openDirectory区域暂时设置为777保护,只是为了看看我是否可以解决这个无法解决的问题:

  

drwxrwxrwx 1 bar bar 4096 11月18日12:34 openDirectory

我很想看看我是否可以暂时授予节点进程root权限,但是想先由其他人运行该问题。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

如果要在其他用户的主目录中创建目录,则需要成为sudo用户。您必须使用sudo来完成此类工作。