No puedo encontrar el comando que instalé desde cygwin; no puedo ejecutar ddrescue que instalé

No puedo encontrar el comando que instalé desde cygwin; no puedo ejecutar ddrescue que instalé

yo corríhttps://cygwin.com/setup-x86_64.exe y ddrescue instalado

Aquí hay información de cygwin y cmd para que vea dónde está el archivo y las rutas.

ingrese la descripción de la imagen aquí

user@hp-probook1 ~
$ PATH=$PATH:/bin

user@hp-probook1 ~
$ echo $PATH
/usr/local/bin:/usr/bin:/cygdrive/c/windows:/cygdrive/c/windows/system32:/cygdrive/c/blah:/usr/bin:/bin

user@hp-probook1 ~
$ ddrescue
-bash: ddrescue: command not found

user@hp-probook1 ~
$

y

C:\cygwin>dir
 Volume in drive C has no label.
 Volume Serial Number is 4645-5DCE

 Directory of C:\cygwin

20/04/2020  22:48    <DIR>          .
20/04/2020  22:48    <DIR>          ..
05/11/2020  02:29    <DIR>          bin
14/03/2020  01:02            53,342 Cygwin-Terminal.ico
14/03/2020  00:59                88 Cygwin.bat
14/03/2020  01:02           157,097 Cygwin.ico
14/03/2020  00:59    <DIR>          dev
05/11/2020  02:29    <DIR>          etc
22/04/2020  10:00    <DIR>          home
20/04/2020  22:48    <DIR>          lib
14/03/2020  00:35    <DIR>          pk
20/04/2020  22:48    <DIR>          sbin
20/04/2020  22:46         1,352,723 setup-x86_64.exe
14/03/2020  00:59    <DIR>          tmp
14/03/2020  00:58    <DIR>          usr
14/03/2020  00:58    <DIR>          var
               4 File(s)      1,563,250 bytes
              12 Dir(s)  19,118,116,864 bytes free

C:\cygwin>dir bin\dd*
 Volume in drive C has no label.
 Volume Serial Number is 4645-5DCE

 Directory of C:\cygwin\bin

03/02/2017  19:40            83,987 dd.exe
03/04/2020  16:17           118,291 ddrescue.exe
03/04/2020  16:17            59,411 ddrescuelog.exe
               3 File(s)        261,689 bytes
               0 Dir(s)  19,118,116,864 bytes free

C:\cygwin>

información agregada

user@hp-probook1 ~
$ which ddrescue
which: no ddrescue in (/usr/local/bin:/usr/bin:/cygdrive/c/windows:/cygdrive/c/windows/system32:/cygdrive/c/blah)

user@hp-probook1 ~
$ echo  $PATH
/usr/local/bin:/usr/bin:/cygdrive/c/windows:/cygdrive/c/windows/system32:/cygdrive/c/blah

user@hp-probook1 ~
$ PATH=$PATH:/bin

user@hp-probook1 ~
$ which ddrescue
which: no ddrescue in (/usr/local/bin:/usr/bin:/cygdrive/c/windows:/cygdrive/c/windows/system32:/cygdrive/c/blah:/bin)

user@hp-probook1 ~
$

y

user@hp-probook1 /bin
$ cd /bin

user@hp-probook1 /bin
$ ls dd*
dd.exe

user@hp-probook1 /bin
$

user@hp-probook1 /bin
$ cd /cygdrive/c/cygwin/bin

user@hp-probook1 /cygdrive/c/cygwin/bin
$ ls ddrescue
ddrescue

user@hp-probook1 /cygdrive/c/cygwin/bin
$ ddrescue --help
-bash: ddrescue: command not found

user@hp-probook1 /cygdrive/c/cygwin/bin
$ ./ddrescue --help
ddrescue: Both input and output files must be specified.
Try '/usr/bin/ddrescue --help' for more information.

user@hp-probook1 /cygdrive/c/cygwin/bin
$ ls /usr/bin/ddrescue
ls: cannot access '/usr/bin/ddrescue': No such file or directory

user@hp-probook1 /cygdrive/c/cygwin/bin
$

Respuesta1

Ahora funciona..

Me di cuenta de que no solo no podía ejecutar ddrescue, sino que tampoco podía ejecutar ssh... a pesar de que instalé ssh. Reinstalar cygwin de la forma normal no funcionó.

Cygwin naturalmente requiere dos directorios, uno para él y otro para los paquetes. Tenía un directorio para cygwin, por ejemplo, c:\cygwin y otro para los paquetes c:\cygwinpk.

Lo que hice para que funcionara fue cambiar el nombre de c:\cygwin a c:\oldcygwin y el de c:\cygwinpk a c:\oldcygwinpk.

Descargué la configuración de cygwin (64 bits, por supuesto, porque los 32 bits son de hace eones, e incluso mis computadoras bastante antiguas son de 64 bits). Luego instalé cygwin

Y eso marcó la diferencia, obligando a cygwin a realizar una instalación realmente nueva.

Tuve que cambiar el nombre de los directorios antiguos de cygwin antes de reinstalar cygwin para que funcionara.

Ahora como ves funciona

user@hp-probook1 ~
$ echo $PATH
/usr/local/bin:/usr/bin:/cygdrive/c/tech/something:/cygdrive/c/Program Files (x86)/QuickTime/QTSystem:/cygdrive/c/Program Files/Microsoft Network Moni
tor 3:/cygdrive/c/Program Files/Git/cmd:/cygdrive/c/blah

user@hp-probook1 ~
$


user@hp-probook1 ~
$ ddrescue
ddrescue: Both input and output files must be specified.
Try 'ddrescue --help' for more information.

user@hp-probook1 ~
$ ssh
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface]
           [-b bind_address] [-c cipher_spec] [-D [bind_address:]port]
           [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11]
           [-i identity_file] [-J [user@]host[:port]] [-L address]
           [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
           [-Q query_option] [-R address] [-S ctl_path] [-W host:port]
           [-w local_tun[:remote_tun]] destination [command]

user@hp-probook1 ~
$ which ddrescue
/usr/bin/ddrescue

user@hp-probook1 ~
$ which ssh
/usr/bin/ssh

user@hp-probook1 ~
$

Eso es en una máquina con Windows 7... una alternativa a la de Win7 sería una máquina virtual. Windows 10 tiene otra opción, un "WSL" funcional muy elegante (subsistema de Windows para Linux) que le permite configurar, por ejemplo, un sistema Ubuntu. Y la unidad c como se ve en Windows es visible en /mnt/c. al igual que en cygwin, está en /cygdrive/c. Entonces la gente puede usar menos cygwin en Win10. Como los programas WSL *nix parecen un poco más nativos de *nix, siempre obtendrás las últimas versiones que cualquier usuario de *nix obtendría.

información relacionada