Ich bin hier über Google gelandet und glaube tatsächlich, einen Weg gefunden zu haben, um in Cygwin eine voll funktionsfähige Root-Promt zu erhalten.
Hier sind meine Schritte.
Zuerst müssen Sie das Windows-Administratorkonto in "root" umbenennen. Öffnen Sie dazu das Starthandbuch und geben Sie "gpedit.msc" ein.
Bearbeiten Sie den Eintrag unter Richtlinie für lokalen Computer> Computerkonfiguration> Windows-Einstellungen> Sicherheitseinstellungen> Lokale Richtlinien> Sicherheitsoptionen> Konten: Administratorkonto umbenennen
Dann müssen Sie das Konto aktivieren, wenn es noch nicht aktiviert ist. Lokale Computerrichtlinie> Computerkonfiguration> Windows-Einstellungen> Sicherheitseinstellungen> Lokale Richtlinien> Sicherheitsoptionen> Konten: Status des Administratorkontos
Melden Sie sich jetzt ab und beim Root-Konto an.
Legen Sie nun eine Umgebungsvariable für cygwin fest. Um dies auf einfache Weise zu tun: Klicken Sie mit der rechten Maustaste auf Arbeitsplatz> Eigenschaften
Klicken Sie (in der linken Seitenleiste) auf "Erweiterte Systemeinstellungen".
Klicken Sie unten auf die Schaltfläche "Umgebungsvariablen"
Klicken Sie unter "Systemvariablen" auf die Schaltfläche "Neu ..."
Geben Sie für den Namen "cygwin" ohne Anführungszeichen ein. Geben Sie den Wert in Ihr Cygwin-Stammverzeichnis ein. (Meins war C: \ cygwin)
Drücken Sie OK und schließen Sie alles, um zum Desktop zurückzukehren.
Öffnen Sie ein Cygwin-Terminal (cygwin.bat)
Bearbeiten Sie die Datei / etc / passwd und ändern Sie die Zeile
Administrator : nicht verwendet: 500: 503 : U- MACHINE \ Administrator , S-1-5-21-12345678-1234567890-1234567890- 500: / home / Administrator : / bin / bash
Dazu (Ihre Nummern und der Maschinenname sind unterschiedlich, stellen Sie nur sicher, dass Sie die markierten Nummern auf 0 ändern!)
root : unbenutzt: 0: 0 : U- MACHINE \ root , S-1-5-21-12345678-1234567890-1234567890-0 : / root : / bin / bash
Nachdem alles erledigt ist, wird der Befehl "su" mit diesem nächsten Bit funktionieren. (Nicht perfekt, aber es wird genug funktionieren, um es zu verwenden. Ich denke nicht, dass Skripte richtig funktionieren werden, aber hey, du bist so weit gekommen, vielleicht kannst du den Weg finden. Und bitte teile)
Führen Sie diesen Befehl in cygwin aus, um den Deal abzuschließen.
mv /bin/su.exe /bin/_su.exe_backup
cat > /bin/su.bat << "EOF"
@ECHO OFF
RUNAS /savecred /user:root %cygwin%\cygwin.bat
EOF
ln -s /bin/su.bat /bin/su
echo ''
echo 'All finished'
Melden Sie sich vom Root-Konto ab und kehren Sie zu Ihrem normalen Windows-Benutzerkonto zurück.
Führen Sie danach die neue "su.bat" manuell aus, indem Sie im Explorer darauf doppelklicken. Geben Sie Ihr Passwort ein und schließen Sie das Fenster.
Versuchen Sie nun, den Befehl su von cygwin aus auszuführen, und prüfen Sie, ob alles in Ordnung war.
what
Skript geben, das Sie ausführen möchten ? Es gibt kein Äquivalent zu 'sudo' in einer Cygwin-Shell - die Rechte stammen von dem Win-Benutzer, der die Cygwin-Shell gestartet hat. Daher ist der KyleWpppd-Link gut, um Fehler wie "sudo unknown command" zu vermeiden. In Ihrem Fall scheint es sich um ein bestimmtes Problem mit dem Skript zu handeln, das Sie ausführen möchten.