2 votes

Impossible d'installer Express (de Node.js) dans Android Termux en utilisant sdcard0 comme répertoire

Je n'arrive pas à installer Express dans Android Termux. J'ai la dernière version de Node.js installée.

Cela fonctionne parfaitement lorsque j'utilise le stockage privé, mais j'utilise le stockage privé. cd /storage/sdcard0/NodeJS/Test/ et obtenir un permission refusée erreur. J'ai vu le mot lien symbolique à plusieurs reprises dans le message d'erreur du terminal.

Voici ce que j'ai vu après avoir commandé npm install express --save :

$ npm install express --save
npm WARN test-lab@1.0.0 No description
npm WARN test-lab@1.0.0 No repository field.

npm ERR! path ../mime/cli.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!  { Error: EACCES: permission denied, symlink '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!   cause:
npm ERR!    { Error: EACCES: permission denied, symlink '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!      errno: -13,
npm ERR!      code: 'EACCES',
npm ERR!      syscall: 'symlink',
npm ERR!      path: '../mime/cli.js',
npm ERR!      dest: '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime' },
npm ERR!   stack: 'Error: EACCES: permission denied, symlink \'../mime/cli.js\' -> \'/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'symlink',
npm ERR!   path: '../mime/cli.js',
npm ERR!   dest: '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime',
npm ERR!   parent: 'test-lab' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR!     /data/data/com.termux/files/home/.npm/_logs/2018-05-29T13_09_20_748Z-debug.log

Est-il vraiment possible d'installer Express alors que le stockage actuel est quelque chose comme /storage/sdcard0/... ?

2voto

Guillermo Gomez Points 423

Malheureusement, la réponse est Non même pas avec Root.

Android utilise FUSE (Filesystem in USErspace), qui a des liens symboliques désactivé . Puisque Node a besoin de configurer des liens symboliques, il est impossible de l'installer sur la carte SD (ou tout autre stockage interne où vous stockez vos photos, téléchargements, etc.) Vous pouvez seulement l'installer dans le répertoire de Termux, qui est /data/data/com.termux/files .

0voto

Talbi Said Points 1

Je le répare avec ça :

  1. Installer Termux:API ( Play Store ).
  2. Dans le shell Termux : apt install termux-api

C'est tout. https://www.npmjs.com/package/termux

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X