Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782

    Robocopy, autenticazione e file BAT

    Devo schedulare il mirroring di una gerarchia di cartelle tra due sedi collegate via VPN.

    Sorgente e destinazione sono due Windows SBS Essential 2011... fondamentalmente una versione castrata di Server 2008.

    Per vedere la cartella remota mi loggo sul server con le opportune credenziali. Fatto ciò eseguo robocopy.

    net use \\192.168.1.2\ipc$ password /user:admin
    robocopy "D:\ServerFolders\Cartella" "\\192.168.1.2\Mirror\Cartella" /MIR /B /SEC /TBD


    Se eseguo questi comandi direttamente dal prompt (lanciato come amministratore), tutto funziona a meraviglia. Se metto le due righe in un file BAT e lo eseguo dallo stesso prompt, robocopy restituisce un

    ERRORE 67 (0x00000043) Recupero del tipo di destinazione del file system in corso \\192.168.1.2\Mirror\Cartella\
    Impossibile trovare il nome della rete.


    Qualcuno ha idea del perché?

    Grazie.
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

  2. #2
    Veramente bizzarro... se provi a mappare la directory come unità di rete ti dà lo stesso errore?
    codice:
    net use y: \\192.168.1.2\Mirror\Cartella password /user:admin
    robocopy "D:\ServerFolders\Cartella" "y:\" /MIR /B /SEC /TBD
    ---EDIT---
    A pensarci, l'unica differenza tra l'esecuzione batch e quella "manuale" è di tempistiche - se inserisci una pausa tra la net use e robocopy (che so, ping 127.0.0.1) funge? La cosa bizzarra è che l'opzione /TBD credo debba servire esattamente a questo...
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782
    avevo già provato a mappare la cartella remota come unità, cambia solo l'errore che diventa: Impossibile trovare il percorso specificato (ERRORE 3). Ovviamente anche in questo caso lanciando manualmente i comandi dal prompt tutto funziona.

    /TBD l'avevo aggiunto proprio per quel motivo. Aggiungere un ritardo tra i due comandi non cambia la situazione....

    Roba da matti...
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

  4. #4
    Ciao.
    Scusate l' ''impudenza'' Vedo che siete persone che hanno tanta esperienza e non sapevo se postare o no questa mia sensazione, ma po ho detto 'non c'è niente di male...'.
    In effetti veniva di pensare che il tempo di autenticazione al Server non fosse sufficiente, ma se quell'opzione del comando, ritarda a sufficienza... (che poi per provare davvero se fosse questo, potrebbe bastare a mettere tra le 2 righe una ulteriore con 'Pause' e aspettare che l'autenticazione venga effettuata con successo oppure no...o ho detto una cavolata...?! boh!
    Comunque, premesso che non ho mai visto Windows Server superiore al 2003 e pensando a come si comporta es. Windows 7 in questi casi, nel senso che per far eseguire alcuni comandi elencati in un file Batch, insomma perchè abbi successo la cosa, alcune volte necessita che venga eseguto da una finestra di esplora risorse, pulsante destro sul file .Bat e esegui come Amministratore, mi domandavo, se avessi provato a fare così...o avevi provato solo a scrivere il nome del Batch da prompt dei comandi...?!
    Perchè nella remota possibilità che funzionasse, allora probabilmente, schedulandolo con i privilegi dell'amministratore potrebbe funzionare... O è stata la prima cosa che hai provato e non vedendolo funzionare, hai iniziato a scomporre i vari comandi in un prompt per iniziare a cercare il perchè non funzionasse...?
    Mah! almeno per un saluto, questo post servirà... noo...?!
    Un salutone dall'Alta Maremma...!

  5. #5
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782
    luky1964, ma quale impudenza... ogni suggerimento è prezioso!

    Purtroppo la pausa tra i comandi non risolve il problema... tra l'altro l'opzione /TBD dovrebbe teoricamente servire proprio a ritentare dopo 30 secondi nel caso il percorso di rete non fosse ancora disponibile (errore 67).

    Anche la tua seconda ipotesi è già stata verificata. I comandi singoli lanciati dal prompt eseguito come amministratore funzionano. Se dallo stesso prompt lancio il bat, errore. Se lancio il bat con tasto destro/esegui come amministratore, errore.

    Ciao
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

  6. #6
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782
    Credo di aver scoperto la causa...

    Nel post ho cambiato i nomi dei percorsi per comodità...

    In realtà la cartella di destinazione è una cosa tipo

    \\192.168.1.2\Società\Archivi

    Ho notato che se nel bat sostituivo il robocopy con un

    dir \\192.168.1.2\Società\Archivi

    ottenevo un errore.... che però non ottenevo se eseguivo il dir su un percorso non contenete lettere accentate....

    Eseguendo robocopy su un percorso UNC privo di lettere accentate tutto funziona!

    Salvare il file bat in utf8, unicode etc... crea altri problemi ed errori...

    Cosa mi perdo?
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

  7. #7
    Ciao!.
    Sensazione:
    Hai visto che noi informatici di vecchia guardia, evitiamo e sconsigliamo sempre di usare caratteri che escono fuori dalle normali lettere, numeri, trattino sia del - che _, se vuoi proprio separare...?! forse non viene proprio risolto il path usando caratteri accentati che se 'vogliamo', escono da quel range di ASCII tradizionali/standard... forse hai centrato proprio la questione, da prompt direttamente ok e in un contesto di 'batch program', nada...! la questione è proprio il perché...?!

    Guarda questo se può essere un 'input' che possa darti un'idea...?!
    Buona giornata.
    Un salutone dall'Alta Maremma...!

  8. #8
    Moderatore di Sicurezza informatica e virus L'avatar di Habanero
    Registrato dal
    Jun 2001
    Messaggi
    9,782
    Ciao luky, quello da te indicato è un problema di selezione della pagina dei codici carattere che interviene in fase di visualizzazione a schermo...purtroppo non è il mio caso.

    Ho cercato in rete, la cosa è nota e, a mio parere, è follia pura.
    Fondamentalmente il prompt dei comandi e i file bat (non solo sui server... ho verificato che il problema esiste anche su 7, xp) usano la codifica OEM... peccato che notepad e altri editor di testo usino invece la codifica ANSI... e i due differiscono proprio nei codici carattere >127 dove risiedono i caratteri accentati.

    Ho risolto usando il mio text editor di fiducia (UltraEdit) che offre una utile funzione ANSI to OEM.


    Quanto tempo perso...
    Leggi il REGOLAMENTO!

    E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
    Drugo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.