¿Cómo se elimina un Node.js instalado con tar de CentOS 7?

¿Cómo se elimina un Node.js instalado con tar de CentOS 7?

Un servidor CentOS 7 tiene v0.12.7instalado Node.js y la instalación se realizó mediante un tar. Esto genera conflictos cuando intento instalar una versión más moderna de Node.js usando yum. ¿Qué pasos específicos se deben seguir (es decir, qué comandos específicos se deben escribir) para eliminar de forma segura el archivo tar instalado v.0.12.7?

Eltarpara v0.12.7se puede encontrar en este enlace..

Además, por si es necesario, los tararchivos instalados en el servidor son los siguientes:

[root@localhost ~]# cd /
[root@localhost /]# find . -type f -iname "*.tar"
find: ‘./run/user/1000/gvfs’: Permission denied
./opt/node-v0.12.7/deps/npm/node_modules/tar/test/dir-normalization.tar
./opt/node-v0.12.7/deps/npm/test/fixtures/gitignore-and-npmignore-2.tar
./opt/node-v0.12.7/deps/npm/test/fixtures/gitignore-and-npmignore.tar
./usr/local/lib/node_modules/npm/test/fixtures/gitignore-and-npmignore-2.tar
./usr/local/lib/node_modules/npm/test/fixtures/gitignore-and-npmignore.tar
./usr/local/lib/node_modules/npm/node_modules/tar/test/dir-normalization.tar
[root@localhost /]# 

El conflicto entre las dos versiones se puede ver en los siguientes comandos:

[root@localhost /]# node --version
v0.12.7
[root@localhost /]# which node
/usr/local/bin/node
[root@localhost /]# /usr/bin/node -v
v5.6.0
[root@localhost /]#   

Entonces, ¿cómo elimino de forma segura el tarinstalado v0.12.7? ¿Qué comandos específicos se deben escribir?


PROBANDO el ENFOQUE de @Gilles:


Según las sugerencias en la respuesta de @Gille, intenté lo siguiente:

[root@localhost local]# cd /usr/local/bin
[root@localhost bin]# ls
bower  express  grunt  gulp  node  nodemon  npm  yo
[root@localhost bin]# 

Por lo tanto, probé los siguientes comandos, que parecen haberse eliminado v0.12.7, pero estoy esperando antes de marcar la respuesta a continuación como aceptada porque hay un error posterior que está documentado.en esta otra publicacion. Cualquier ayuda sobre el error posterior es muy apreciada. Aquí está el código que parece haber funcionado aquí:

rm /usr/local/bin/node
rm /usr/local/bin/npm
\rm -R /opt/node-v0.12.7/

Respuesta1

Es imposible brindarle comandos específicos para realizar la desinstalación porque no nos brinda los comandos específicos que se utilizaron para realizar la instalación. Sin embargo, según la información que proporcionas, esta no es una tarea difícil. Le recomiendo que detenga sus esfuerzos continuos; parece que está haciendo cosas muy complicadas e inútiles.

La versión instalada manualmente tiene el binario en formato /usr/local/bin. Eso es bueno: significa que quien lo instaló no hizo un completo desastre. Solo como recordatorio: /bin, y /liboutside pertenecen al administrador de paquetes ; pertenece al administrador del sistema. Tiene software instalado manualmente en ; está bien./bin/usr/usr/local/usr/local/usr/local

El paquete binario de node.js coloca archivos en un árbol común que contiene:

  • Algunos archivos de documentación en el directorio de nivel superior.
  • bin/nodeybin/npm
  • share/man/man1/node.1
  • lib/node_modules
  • share/systemtap/tapset/node.stp
  • include/node

Como nodeestá en /usr/local/bin, busque /usr/localtambién los otros archivos y directorios, por ejemplo /usr/local/share/man/man1/node.1, etc. Si los encuentra, elimínelos. Si no los encuentra, es posible que se hayan instalado en otro lugar o que no se hayan instalado en absoluto; puede intentar locateencontrar dónde están (si están presentes: los archivos de encabezado includey el archivo systemtap no son útiles para todos).

Parece que /opt/node-v0.12.7es el árbol fuente. Puedes eliminar eso.

Si le preocupa eliminar un archivo que resulta necesario, asegúrese de que sus copias de seguridad estén actualizadas, o simplemente mueva los archivos a un lado o mantenga un archivo comprimido de ellos mientras prueba que su sistema aún funciona. .

Si eresen realidadpreocupado y con prisa, lo más probable es que la versión instalada manualmente no entre en conflicto con la versión rpm; solo existe ese nodebinario (y probablemente npmtambién) que está por delante de la versión en /usr/binla RUTA. Cambie el nombre /usr/local/bin/nodea /usr/local/bin/node-0.12.7(y lo mismo para npm) y nodeo #!/usr/bin/env nodeinvocará la versión instalada en el sistema.

información relacionada