J'ai un problème pour télécharger le fichier nodejs. J'ai lu stack1 et . mais je pense que ce différent cas sur la sortie du terminal comme celui-ci:Erreur: EXDEV: lien inter-périphérique non autorisé, renommer '/ tmp/on Ubuntu 16.04 LTS
> Unhandled rejection Error: EXDEV: cross-device link not permitted,
> rename '/tmp/31941-53enly.png' ->
> 'public/files/complaint/Screenshot_2016-05-01_01-16-55.png'
> at Error (native)
> at Object.fs.renameSync (fs.js:681:18)
> at null.<anonymous> (/home/faris/myprojects/orchestrale-server/routes/complaintimage.js:163:20)
> at tryCatcher (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/util.js:16:23)
> at Promise._settlePromiseFromHandler (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:502:31)
> at Promise._settlePromise (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:559:18)
> at Promise._settlePromise0 (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:604:10)
> at Promise._settlePromises (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/promise.js:683:18)
> at Async._drainQueue (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/async.js:138:16)
> at Async._drainQueues (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/async.js:148:10)
> at Immediate.Async.drainQueues [as _onImmediate] (/home/faris/myprojects/orchestrale-server/node_modules/sequelize/node_modules/bluebird/js/release/async.js:17:14)
> at processImmediate [as _immediateCallback] (timers.js:383:17)
mon code:
if (_.isEmpty(req.files) == false) {
var tp = avatar_folder+req.files.file.name;
fs.renameSync(req.files.file.path, tp, function(err){});
var avatar = req.files.file.name;
}
code de travail sur un autre distro comme os élémentaire, mais quand je lance projet sur debian jessie ou ubuntu 16 LTS cette erreur résulte sur le terminal.
tout corps ne peut pas aider? ce code fonctionne parfaitement sur OS et Arch.
Les deux questions que vous liez êtes causé par le même problème (vous ne pouvez pas renommer les fichiers sur les systèmes de fichiers/partitions). Vous devriez essayer de voir si vous pouvez configurer le middleware de téléchargement pour utiliser un répertoire temporaire sur le même système de fichiers que l'emplacement final des fichiers. La raison pour laquelle cela peut fonctionner sur d'autres distributions est que certaines ne créeront pas de partition séparée pour '/ tmp'. – robertklep