Privilegi da amministratore su .bat file

Oportet

Utente Attivo
236
4
Salve forum,

Siccome ho necessità di avere la stessa cartella aggiornata sul pc e sull'hard disk esterno, ho creato due semplicissimi file .bat che sfruttano la funzione di mirroring /mir di robocopy in Windows 7. I due script .bat sono semplicemente uno l'inverso dell'altro, cioè copia da pc su hd esterno e l'altro fa il contrario, a seconda di quello di cui ho bisogno. Ecco i .bat

Codice:
robocopy d:\uni r:\uni /mir
pause

Codice:
robocopy r:\uni d:\uni /mir
pause

Preciso che d: è l'hd esterno e r: è la partizione dati sul pc. Ora, quando faccio doppio clic sul primo .bat tutto funziona a meraviglia, ma quando eseguo il secondo script, cioè quello che da pc copia su hd esterno, mi da un accesso negato con un "errore 5", che non capisco.

Ho notato che se apro cmd.exe con Esegui come Amministratore e incollo il comando del secondo script tutto funziona, ma se cerco di eseguire come amministratore direttamente lo script da errore!

Ho letto in rete di inserire runas coi suoi parametri nello script, ma non ha funzionato comunque. Nemmeno eseguendo lo script togliendo l'UAC funziona. C'è un qualche comando da inserire nel .bat per eseguirlo realmente come amministratore, tipo "sudo" in linux?

P.S.: Com'è possibile che copiare dati dall'hd esterno sul pc è indolore e sembra impossibile il contrario?!

A voi!
 

Federico83

UTENTE LEGGENDARIO
Utente Èlite
35,407
6,323
CPU
Ryzen 7 3700X
Dissipatore
NDH15
Scheda Madre
Gigabyte auros X570 elite
HDD
4.5TB + 15 di NAS lol
RAM
16 GB G.Skill 3200
GPU
RTX2070
Monitor
IIyama 28" 4K
PSU
Cooler Master GX 650
Case
REV200
OS
Windows11x64pro

Oportet

Utente Attivo
236
4
Ho scaricato la GUI, ma in pratica senza digitare robocopy /? da cmd.exe non si capisce nulla su come usarlo, perchè ci sono soltanto i comandi da spuntare e non spiegati, mentre nel file di aiuto da console c'è anche la spiegazione. Ho cercato di usarlo e ha tirato fuori lo stesso script che avevo prodotto io col blocco note: non a caso l'output di errore è stato identico, l'ho allegato al post.
P.S.: Il nome utente è oscurato volutamente, non c'entra nulla cmd.exe.

Il succo è che non mi da l'accesso all'hard disk esterno e l'unico modo di far andare il comando è di digitarlo in cmd manualmente, dopo averlo aperto come amministratore. Nemmeno eseguendo lo script come amministratore la cosa funziona...È molto strano!
 

Allegati

  • robocopyerrore5.png
    robocopyerrore5.png
    13.3 KB · Visualizzazioni: 433

Federico83

UTENTE LEGGENDARIO
Utente Èlite
35,407
6,323
CPU
Ryzen 7 3700X
Dissipatore
NDH15
Scheda Madre
Gigabyte auros X570 elite
HDD
4.5TB + 15 di NAS lol
RAM
16 GB G.Skill 3200
GPU
RTX2070
Monitor
IIyama 28" 4K
PSU
Cooler Master GX 650
Case
REV200
OS
Windows11x64pro
se diventi il proprietario del disco cosa succede?
 

Oportet

Utente Attivo
236
4
se diventi il proprietario del disco cosa succede?

Purtroppo da lo stesso errore di accesso negato. Dato l'hd esterno, sono andato su Proprietà>Sicurezza>Avanzate>Proprietario e quindi l'ho modificato col mio utente attuale con cui sono loggato (sono l'unico admin). Il proprietario risulto effettivamente io, ma lanciando lo script il problema è identico. Ripeto, riesco ad eseguire

Codice:
robocopy f:\uni x:\uni /mir /it

Solo avviando cmd.exe come admin e copiando il comando, ma ogni altro tentativo di usare il comando (vedi tramite script) da l'errore di accesso negato. N.B.: F: è l'hd esterno e X: è la partizione dati, mentre /mir fa il mirroring della prima directory sulla seconda e /it include i file variati. Non so proprio come risolvere se non come ho già scritto, ma possibile che uno script così semplice non funzioni?
 
Ultima modifica:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!