Sono arrivato qui tramite google e in realtà credo di aver trovato un modo per ottenere un promt root completamente funzionante in Cygwin.
Ecco i miei passi.
Per prima cosa devi rinominare l'account dell'amministratore di Windows in "root". Fallo aprendo manu start e digitando "gpedit.msc"
Modificare la voce in Criteri del computer locale> Configurazione del computer> Impostazioni di Windows> Impostazioni di sicurezza> Criteri locali> Opzioni di sicurezza> Account: Rinomina account amministratore
Quindi dovrai abilitare l'account se non è ancora abilitato. Criteri del computer locale> Configurazione del computer> Impostazioni di Windows> Impostazioni di sicurezza> Criteri locali> Opzioni di sicurezza> Account: stato dell'account amministratore
Ora disconnettersi e accedere all'account di root.
Ora imposta una variabile d'ambiente per cygwin. Per farlo nel modo più semplice: fai clic con il pulsante destro del mouse su Risorse del computer> Proprietà
Fai clic (sulla barra laterale sinistra) "Impostazioni di sistema avanzate"
Nella parte inferiore fai clic sul pulsante "Variabili d'ambiente"
In "Variabili di sistema" fai clic sul pulsante "Nuovo ..."
Per il nome metti "cygwin" senza virgolette. Per il valore, immettere nella directory principale di Cygwin. (Il mio era C: \ cygwin)
Premi OK e chiudi tutto per tornare al desktop.
Apri un terminale Cygwin (cygwin.bat)
Modifica il file / etc / passwd e cambia la riga
Amministratore : non utilizzato: 500: 503 : U- MACCHINA \ Amministratore , S-1-5-21-12345678-1234567890-1234567890-500 : / home / Amministratore : / bin / bash
Per questo (i tuoi numeri e il nome della macchina saranno diversi, assicurati di cambiare i numeri evidenziati su 0!)
root : non utilizzato: 0: 0 : U- MACCHINA \ root , S-1-5-21-12345678-1234567890-1234567890-0 : / root : / bin / bash
Ora che tutto è finito, questo prossimo bit farà funzionare il comando "su". (Non perfettamente, ma funzionerà abbastanza da usare. Non credo che gli script funzionino correttamente, ma hey, sei arrivato così lontano, forse puoi trovare la strada. E per favore condividi)
Esegui questo comando in cygwin per finalizzare l'affare.
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'
Disconnettersi dall'account root e tornare al normale account utente di Windows.
Dopo tutto ciò, esegui il nuovo "su.bat" manualmente facendo doppio clic su di esso in Explorer. Inserisci la tua password e vai avanti e chiudi la finestra.
Ora prova a eseguire il comando su da cygwin e vedi se tutto ha funzionato bene.
what
sceneggiatura che stai cercando di eseguire? Non esiste un equivalente di 'sudo' all'interno di una shell cygwin - i diritti sono quelli dell'utente win che ha lanciato la shell cygwin, quindi il link KyleWpppd è buono per evitare errori come "sudo unknown command". Nel tuo caso sembra che sia un problema specifico con lo script che desideri eseguire.