Noob aquí: tengo un problema, cuando accedo a mi servidor a través de SSH, el $ PATH es correcto
root@ks391320:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Pero cuando abro mi servidor a través de la sesión XRDP y voy al terminal, muestra una RUTA incorrecta :
root@ks391320:~# echo $PATH
/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin
Y esto crea un problema porque cuando trato de instalar algo usando el "Instalador de paquetes" muestra este error (entre otros)
dpkg: warning: 'ldconfig' not found in PATH
command-line
gui
paths
Ivan Castellanos
fuente
fuente
/etc/environment
!1
La RUTA predeterminada de todo el sistema se define en
/etc/environment
. Primero, verifique que esté configurado en un valor razonable. Como referencia, aquí está el mío, que es lo mismo que una instalación predeterminada:2
Si
/etc/environment
está cuerdo y aún tiene problemas, puede anular la RUTA predeterminada~/.bashrc
. Por ejemplo, tengo esto en mi .bashrc que agrega un directorio a mi PATH si y solo si existe y no está en mi PATH:Dado que, según su captura de pantalla, parece que ha habilitado los inicios de sesión de root, asegúrese de configurar también .bashrc de root. (Por cierto, dado que root no puede iniciar sesión de forma predeterminada en Ubuntu, esta configuración es probablemente menos probada y posiblemente esté relacionada con su problema).
3
Si los dos primeros métodos fallan, verifique si su cliente XRDP está haciendo algo exótico. Si es así, tendrá que configurarlo para que funcione normalmente o identificar una forma de solucionarlo.
Actualizar
He estado mirando un poco alrededor del sistema. Puede encontrar todos los lugares en su sistema que especifiquen una RUTA con el siguiente comando (el
sudo
está allí porque algunos/etc
usuarios no pueden leer algunos archivos ):Creo que es seguro ignorar muchos de esos lugares, lo que resulta en el siguiente comando:
Un archivo que parece posible (aunque realmente no sé demasiado al respecto) es
/etc/login.defs
. Puedes echarle un vistazo.Además, también puede grep sus archivos de puntos:
fuente
gksudo gdebi-gtk /full/path/to/package.deb
? Me ha parecido un poco exigente. Si es así, debería heredar el entorno desde el que se inicia.Revelación completa: no uso Ubuntu ... pero tuve el mismo problema con Debian.
xrdp lanza /etc/xrdp/startwm.sh (a menos que Ubuntu haya modificado esta ubicación). Agregué esta línea:
en la parte superior de /etc/xrdp/startwm.sh y la RUTA ahora está configurada correctamente.
Para Ubuntu, agregar
en la parte superior de /etc/xrdp/startwm.sh podría hacer lo mismo.
fuente
Esto me dejó perplejo por un tiempo también.
/etc/environment
no es un script de shell, por lo que no puede llamarlo como uno. Lo que funcionó para mí fue editar el script "sesman" del administrador de sesión xrdp en pam. Agregué la línea de "sesión" a mi/etc/pam.d/sesman
archivo:Esto hace que el administrador de la sesión cargue el
/etc/environment
archivo al iniciar sesión.fuente
En teoría agregando
funcionaría pero no funciona. Simplemente lo puse en la parte superior de mi .bashrc para corregir el problema
fuente
Gracias a las respuestas anteriores llegué a tal solución:
Puede no ser el más óptimo pero funciona (Ubuntu 12.04).
fuente
@ John: Creo que debe verificar su /etc/xrdpstartwm.sh: las primeras líneas en la mía dicen:
Eso significa que si / etc / X11xinit / xinitrc existe, ese archivo se ejecutará en su lugar, y no ayudará mucho agregar el
a /etc/xrdpstartwm.sh. :-)
/ Per Hertz
fuente