He instalado Cygwin conApache, PHP, Mercurial, MYSQL, OpenSSH, PYTHON
He actualizado sshd_config a chroot jail para acceder a carpetas definidas por el usuario
ejemplo:
Grupo de coincidencias sftp_users
DirectorioChroot /home/%u
SSH/SFTP funciona bien como quería.
Después de mi conexión a SSH, obtengo bash. Allí, si quiero ejecutar cualquier comando como 'dir, hg, mysql, whatever
'simplemente obtengocommand not found
Buscando en Google durante días probé los siguientes pasos
- copiar todos los archivos desde
C:/cygwin/bin
'C:/cygwin/home/nombre de usuario/bin' y de manera similardev,etc,lib,sbin,tmp,usr,var
; esto en realidad me da un error diferente, comoerror while loading shared libraries
- Intenté actualizar
fstab
comoC:/cygwin/bin /bin ntfs binary 0 0
si ni siquiera eso hiciera ningún cambio en mi comando de conexión SSH - Intenté agregar la ruta mientras hacía la conexión SSH
plink.exe ssh -pw xxx username@hostname -v C:/cygwin/bin/python
y también intentéplink.exe ssh -pw xxx username@hostname -v ../bin/python
- Si cambio
sshd_config
a su valor predeterminado, de alguna manera el comando funciona pero obtengo una salida por cable similar a la imagen a continuación
ayudenme esto podría salvarme la vida.
Respuesta1
Cygwin proporciona un dll que reasigna llamadas de Linux y POSIX a llamadas API de Windows. Herramientas como chroot dependen de tener un espacio de usuario de Linux adecuado y no se asignan bien cuando se usan entornos de trabajo como cygwin, aunque si realmente quieres hacer esto, es posible, consultaaquípara lo que pueda ser necesario.
Lo que recomendaría en su lugar es usar unespacio de usuario real de Linuxjunto con el más nuevoSubsistema de Windows para Linux. Esto proporciona una interfaz de kernel real compatible con Linux respaldada por Microsoft, junto con el espacio de usuario real de Linux que obtendría en un sistema Linux normal. Todas las herramientas que mencionaste deberían funcionar bien en esa configuración, chroot y todo.