Tengo un script de Python en mi WSL Debian llamado pasman
, que se encuentra en la bin
carpeta de mi directorio de inicio, donde guardo mis scripts personalizados. Tengo una export
declaración archivada .bashrc
para poder ejecutar estos scripts en cualquier lugar del sistema WSL. También tengo mi bin
carpeta configurada en visudo
el archivo para ejecutar scripts cuando sudo
sea necesario.
Este script de Python tiene un shebang:
#!/mnt/c/Users/<MyWindowsUsername>/AppData/Local/Programs/Python/Python38/python.exe
porque quiero ejecutarlo con el intérprete de Python para Windows.
El problema es que quiero mantener este script como propiedad de root
, entonces necesito ejecutarlo con sudo
, pero cuando lo ejecuto sudo
obtengo:
C:\Users\<MyWindowsUsername>\AppData\Local\Programs\Python\Python38\python.exe: can't open file '/home/<mylinuxusername>/bin/pasman': [Errno 2] No such file or directory
Si el script no es propiedad de root
y lo ejecuto sin él sudo
, se ejecuta perfectamente.
Entonces, no creo que el problema sea que el intérprete de Windows Python no pueda encontrar mi script en WSL, sino que no puede encontrar el script solo cuando se ejecuta con sudo
, sin sudo
haberlo encontrado.
Tampoco creo que el problema esté en la export
declaración de mi .bashrc
expediente. Si lo fuera, cuando intente ejecutarlo sudo
obtendré algo como sudo: pasman: command not found.
. sudo
Encontré mi pasman
comando incluso con el export
de mi usuario .bashrc
.
¿Alguien tiene alguna idea de por qué sucede esto?