2 votos

No se puede instalar Express (de Node.js) en Android Termux usando sdcard0 como directorio

No puedo instalar Express en Termux de Android. Tengo instalado la última versión de Node.js.

Funciona perfectamente cuando uso almacenamiento privado, pero estoy utilizando cd /storage/sdcard0/NodeJS/Test/ y obtengo un error de permiso denegado. Vi la palabra símbolo de enlace repetidamente en el mensaje de error del terminal.

Esto es lo que vi después de ejecutar npm install express --save:

$ npm install express --save
npm WARN test-lab@1.0.0 Sin descripción
npm WARN test-lab@1.0.0 Sin campo de repositorio.

npm ERR! ruta ../mime/cli.js
npm ERR! código EACCES
npm ERR! errno -13
npm ERR! llamada al sistema símbolo de enlace
npm ERR! Error: EACCES: permiso denegado, símbolo de enlace '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!  { Error: EACCES: permiso denegado, símbolo de enlace '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!   causa:
npm ERR!    { Error: EACCES: permiso denegado, símbolo de enlace '../mime/cli.js' -> '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime'
npm ERR!      errno: -13,
npm ERR!      código: 'EACCES',
npm ERR!      llamada al sistema: 'símbolo de enlace',
npm ERR!      ruta: '../mime/cli.js',
npm ERR!      destino: '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime' },
npm ERR!   pila: 'Error: EACCES: permiso denegado, símbolo de enlace \'../mime/cli.js\' -> \'/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime\'',
npm ERR!   errno: -13,
npm ERR!   código: 'EACCES',
npm ERR!   llamada al sistema: 'símbolo de enlace',
npm ERR!   ruta: '../mime/cli.js',
npm ERR!   destino: '/storage/sdcard0/NodeJS/Test/3/node_modules/.bin/mime',
npm ERR!   padre: 'test-lab' }
npm ERR!
npm ERR! Por favor, intente nuevamente ejecutando este comando como root/Administrador.
npm ERR! Un registro completo de esta ejecución se puede encontrar en:
npm ERR!     /data/data/com.termux/files/home/.npm/_logs/2018-05-29T13_09_20_748Z-debug.log

¿Realmente es posible instalar Express mientras que el almacenamiento actual es algo como /storage/sdcard0/...?

0 votos

2voto

Guillermo Gomez Puntos 423

Desafortunadamente, la respuesta es No, ni siquiera con root.

Android utiliza FUSE (Sistema de Archivos en el Espacio de Usuario), el cual tiene los enlaces simbólicos desactivados. Dado que Node necesita configurar enlaces simbólicos, es imposible instalarlo en la tarjeta SD (o cualquier almacenamiento interno donde guardes tus fotos, descargas, etc.). Solo puedes instalarlo en el directorio de Termux, que es /data/data/com.termux/files.

0 votos

Ya he instalado nodejs con éxito. El problema es que no puedo instalar un módulo o paquete o plugin de nodejs, o como sea que se llame. Estaba pensando en guardar los archivos app.js, package.json y los de express en un directorio en sdcard0 o sdcard1.

0 votos

¿Estás diciendo que no puedo guardar archivos (de Express) en la tarjeta SD?

0 votos

@user9850863 No puedes instalar ese módulo de Node en la tarjeta SD. Pero sí, Node.js en sí ya está configurado en los directorios de Termux.

0voto

Erling Puntos 1

Lo arreglo con esto:

  1. Instalar Termux:API (Play Store).
  2. En la terminal de Termux: apt install termux-api

Eso es todo. https://www.npmjs.com/package/termux

0 votos

¿Cómo? ¿Simplemente instalándolo?

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X