kann den von mir installierten Befehl von Cygwin nicht finden - kann den von mir installierten ddrescue nicht ausführen

kann den von mir installierten Befehl von Cygwin nicht finden - kann den von mir installierten ddrescue nicht ausführen

Ich ranntehttps://cygwin.com/setup-x86_64.exe und ddrescue installiert

hier sind einige Informationen von Cygwin und cmd, damit Sie sehen, wo sich die Datei befindet und die Pfade.

Bildbeschreibung hier eingeben

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 ~
$

Und

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>

Informationen hinzugefügt

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 ~
$

Und

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
$

Antwort1

Es funktioniert jetzt..

Mir fiel auf, dass nicht nur ddrescue nicht ausgeführt werden konnte, sondern auch ssh nicht, obwohl ich ssh installiert hatte. Die normale Neuinstallation von Cygwin hat nicht funktioniert.

Cygwin benötigt natürlich zwei Verzeichnisse, eines für Cygwin und eines für Pakete. Ich hatte ein Verzeichnis für Cygwin, z. B. c:\cygwin und eines für die Pakete, c:\cygwinpk

Um es zum Laufen zu bringen, habe ich c:\cygwin in c:\oldcygwin und c:\cygwinpk in c:\oldcygwinpk umbenannt.

Ich habe das Cygwin-Setup heruntergeladen (64bit natürlich, denn 32bit ist von vor Ewigkeiten, und selbst meine ziemlich alten Computer sind 64bit). Dann habe ich Cygwin installiert

Und das machte den Unterschied und zwang Cygwin zu einer wirklich neuen Installation.

Damit es funktionierte, musste ich vor der Neuinstallation von Cygwin alte Cygwin-Verzeichnisse umbenennen.

Wie Sie sehen, funktioniert es

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 ~
$

Das ist auf einer Windows 7-Maschine. Eine Alternative dazu unter Win7 wäre eine virtuelle Maschine. Windows 10 hat eine weitere Option, ein sehr schickes funktionales „WSL“ (Windows-Subsystem für Linux), mit dem Sie beispielsweise ein Ubuntu-System einrichten können. Und das Laufwerk C ist in Windows in /mnt/c sichtbar. Genau wie in Cygwin ist es in /cygdrive/c. Daher verwenden die Leute Cygwin unter Win10 möglicherweise weniger. Da WSL *nix-Programme etwas nativer für *nix zu sein scheinen, erhalten Sie immer die neuesten Versionen, die jeder *nix-Benutzer erhalten würde.

verwandte Informationen