是否可以将文件移动(重命名)到NFS安装的文件夹中? (在Linux和PHP中)

时间:2019-10-24 01:59:08

标签: php linux nfs fuelphp

当前,我正在调查在PHP中运行重命名功能后剩余的原始文件的问题。

该程序很简单,已移动到一个临时文件夹。(在带有FuelPHP的PHP中)

function range(n) {
  let arr = Array.from({
    length: n
  }, (_, i) => i + 1)
  return arr
}

console.log(range(9))

这时,临时文件夹(/ tmp)已安装N​​FS。
并在临时文件夹中创建(复制)了文件(file.jpg),但未删除(移动)原始文件。

这可能是正常现象,因为它已装入NFS。

但是,似乎有一个使用此重命名功能的项目。
“有效”意味着原始文件已删除。

以前正在工作的项目的行为。

\File::rename('/path/to/uploads/file.jpg', '/tmp/file.jpg');

当前的非运行状况。

// A file exists.
/var/www/project/public/uploads/original.jpg

// Run PHP(FuelPHP) via Apache
\File::rename('/var/www/project/public/uploads/original.jpg', '/tmp/original.jpg');

// After program execution
/var/www/project/public/uploads/
/tmp/original.jpg

工作正常。(已删除)

// A file exists.
/var/www/project/public/uploads/original.jpg

// Run PHP(FuelPHP) via Apache
\File::rename('/var/www/project/public/uploads/original.jpg', '/tmp/original.jpg');

// After program execution
/var/www/project/public/uploads/original.jpg // <- This is the problem.
/tmp/original.jpg

看来基础架构没有改变。
我认为每个软件(PHP次要版本等)都已更新。
无论是否获得许可,重命名功能均不起作用(777)。


因此,问题是为什么它以前可以工作。
在NFS装入的环境中是否可以从程序(重命名功能)中删除原始文件?
如果无法从程序中移动(重命名),请进行调查,因为这是基础结构问题。

我想知道该程序(在PHP中重命名为nfs挂载文件夹)永远做不到的绝对证据。

0 个答案:

没有答案