none
Disco di rete non accessibile in Prompt Comandi (ma solo se Admin) RRS feed

  • Domanda

  • Ho Win 10 Pro.

    In Esplora risorse digito \\IP-Address e vedo le cartelle condivise.

    Associo una di queste ad un disco, ad esempio Y:

    Se apro il Prompt Comandi e digito "dir y:" compare il contenuto del disco di rete

    Se invece apro il Prompt Comandi (Amministratore) e digito "dir y:" compare "Impossibile trovare il percorso specificato".

    Questo con qualsiasi cartelle condivisa associata a qualsivoglia lettera.

    Perché?

    giovedì 6 ottobre 2016 14:19

Risposte

  • C'è un po' di "confusione" nei post di questo thread...

    I dischi di rete, sono visibili SOLO nel contesto utente in cui sono stati mappati...

    per capirci:

    un prompt dei comandi e un prompt dei comandi come amministratore, non sono la stessa cosa, condividono la stessa sessione utente ma sono in due ambienti diversi con contesti di security diversi!!

    Se vuoi che il Prompt Comandi (Amministratore) "veda" y:, dovrai rimapparla nuovamente all'interno, con un net use y: \\server\share

    Perché il tuo script funzioni devi eseguire la mappatura all'interno dello script stesso, così che la mappatura si trovi nello stesso contesto, ovviamente se tali condivisioni necessitano di una autenticazione questa dovrà essere reinserita.

    Se afferri questi concetti, le mappature delle share funzioneranno sempre, stesso discorso per l'errore powershell (ma potrebbe essere un qualsiasi programma es. notepad.exe!!!) che vedrà solo quello che è stato mappato nel proprio contesto...

    Esegui questo programma prima "normale" e poi "come amministratore" e avrai un command prompt e un notepad che "vedono" Q:  ed un prompt e notepad amministratori che "vedono"  Y:

    ::Es Doppia-personalità.cmd
    @echo off
    :: Evito la memorizzazione delle connessioni di rete
    net use /persistent:off
    :: Cerco il SID associato ad un "elevazione"
    (whoami /all | find /i "S-1-16-12288") && ( 
      cls
      Echo Prompt Comandi (Amministratore)
      :: rimuovo Y:
      net use Y: /del 2>&1 >NUL
      
    net use Y: \\hp\mac 
      echo mappato Y 
    
    ) || ( 
    
      cls 
      Echo Prompt Comandi (normale)
      ::rimuovo Q
      net use Q: /del 2>&1 >NUL
      echo ora mappo Q
      net use Q: \\hp\mac 
    )  
    
    :: visualizzo le lettere mappate
    net use
    :: Avvio un notepad che vedrà solo la lettera relativa al suo contesto...
    start " " notepad.exe
    cmd
    Ciao Gas

    ps: oppure usi robocopy (non subst!!!), come dice Alessandro, probabilmente risolverai (autenticazioni permettendo) ma non capirai perché "sono le mappate che molte volte non vengono riconosciute."


    Gastone Canali >http://www.armadillo.it


    Se alcuni post rispondono al tuo quesito(non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili. GRAZIE! Ricorda di dare un occhio ai link Click Here andHere


    lunedì 10 ottobre 2016 20:58
    Moderatore

Tutte le risposte

  • Non è che non è accessibile, la connessione amministrativa vede solo le unità fisiche della macchina. Se ci fai caso anche se digiti y: per cambiare il disco dall'amministrativa non te lo fa fare.

    E' un'impostazione by design.  Se usi il percorso UNC tipo dir \\nomepc\nomecondivisione dall'amministrativa vedrai che ti funziona.

    Che poi questo possa essere un problema...non so quale..ma ora lo sai.

    Ciao!

    A.

    giovedì 6 ottobre 2016 15:50
    Moderatore
  • Perché però con il prompt dei comandi "normale" funziona?

    Io devo usare Robocopy per salvare le immagini di backup presenti nel disco su un disco di rete.

    Non so se posso usare UNC, non ho neppure controllato.

    giovedì 6 ottobre 2016 16:56
  • sai cosa vuol dire by design?

    certo che funziona robocopy con l'unc, sempre funziona l'unc nei comandi, sono le mappate che molte volte non vengono riconosciute.

    ma e se usi powershell invece del prompt??

    ciao.

    A.

    venerdì 7 ottobre 2016 20:32
    Moderatore
  • Se hai creato l'unità y: da un utente che non è amministratore, il prompt dei comandi lanciato in modo "normale", viene eseguito con le credenziali dell'utente quindi vede l'unità y: 

    Il prompt dei comandi lanciato come amministratore, viene eseguito con le credenziali dell'utente Administrator, che non ha impostato l'unità di rete y: quindi non la vede.

    Però, via linea di comando, si può impostare:

    subst y: \\IP-Address\directory

    Gianluca

    sabato 8 ottobre 2016 07:14
  • Con Powershell il risultato è questo:

    PS C:\WINDOWS\system32> n:
    Set-Location : Impossibile trovare l'unità. Un'unità con nome 'N' non esiste.
    In riga:1 car:1
    + Set-Location $MyInvocation.MyCommand.Name
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (N:String) [Set-Location], DriveNotFoundException
        + FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

    N: è stato creato da Esplora Risorse.

    In Windows l'utente è amministratore, ma se mi chiedete se al momento della mappatura avevo lanciato Esplora Risorse come amministratore, ad essere onesto non lo so. Ho cliccato sulla icona nella barra.

    Nel menu contestuale non c'è la voce "Esegui come Amministratore". Dovevo andare ad eseguirla richiamando direttamente l'eseguibile?

    E sempre ad essere onesto non so cosa voglia dire "Impostazione By Design". Improvviso: "di default"?

    lunedì 10 ottobre 2016 08:34
  • C'è un po' di "confusione" nei post di questo thread...

    I dischi di rete, sono visibili SOLO nel contesto utente in cui sono stati mappati...

    per capirci:

    un prompt dei comandi e un prompt dei comandi come amministratore, non sono la stessa cosa, condividono la stessa sessione utente ma sono in due ambienti diversi con contesti di security diversi!!

    Se vuoi che il Prompt Comandi (Amministratore) "veda" y:, dovrai rimapparla nuovamente all'interno, con un net use y: \\server\share

    Perché il tuo script funzioni devi eseguire la mappatura all'interno dello script stesso, così che la mappatura si trovi nello stesso contesto, ovviamente se tali condivisioni necessitano di una autenticazione questa dovrà essere reinserita.

    Se afferri questi concetti, le mappature delle share funzioneranno sempre, stesso discorso per l'errore powershell (ma potrebbe essere un qualsiasi programma es. notepad.exe!!!) che vedrà solo quello che è stato mappato nel proprio contesto...

    Esegui questo programma prima "normale" e poi "come amministratore" e avrai un command prompt e un notepad che "vedono" Q:  ed un prompt e notepad amministratori che "vedono"  Y:

    ::Es Doppia-personalità.cmd
    @echo off
    :: Evito la memorizzazione delle connessioni di rete
    net use /persistent:off
    :: Cerco il SID associato ad un "elevazione"
    (whoami /all | find /i "S-1-16-12288") && ( 
      cls
      Echo Prompt Comandi (Amministratore)
      :: rimuovo Y:
      net use Y: /del 2>&1 >NUL
      
    net use Y: \\hp\mac 
      echo mappato Y 
    
    ) || ( 
    
      cls 
      Echo Prompt Comandi (normale)
      ::rimuovo Q
      net use Q: /del 2>&1 >NUL
      echo ora mappo Q
      net use Q: \\hp\mac 
    )  
    
    :: visualizzo le lettere mappate
    net use
    :: Avvio un notepad che vedrà solo la lettera relativa al suo contesto...
    start " " notepad.exe
    cmd
    Ciao Gas

    ps: oppure usi robocopy (non subst!!!), come dice Alessandro, probabilmente risolverai (autenticazioni permettendo) ma non capirai perché "sono le mappate che molte volte non vengono riconosciute."


    Gastone Canali >http://www.armadillo.it


    Se alcuni post rispondono al tuo quesito(non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili. GRAZIE! Ricorda di dare un occhio ai link Click Here andHere


    lunedì 10 ottobre 2016 20:58
    Moderatore