Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: Backup INTRANET

  1. #1

    Backup INTRANET

    Salve a tutti, per cortesia avrei bisogno di un vostro aiuto per uno script che mi effettua il backup di alcune cartelle presenti sul server, se il backup lo faccio sul server tutto funziona ma ho difficoltà a trasferire iol tutto su di un pc con cartella condivisa con privilegio di scrittura e lettura (il tutto viene svolto all'interno di una INTRANET).
    Lo script è il seguente:

    Codice PHP:
    '########################################
    [B]var_per_BAC = "D:\_BACKUP" (funziona)
    var_per_BAC = "\\15200pc052\backup" (non funziona)
    var_per_01 = "C:\inetpub\wwwroot\proc_ISPESL_01\_CONTENITORE[/B]
    '
    #####################################


    SQL_N_backup " SELECT TOP 1 * from AA_cartella where id_SEDE =" in_id_SEDE " order by CART_N_backup desc "
    Set rs_N_backup Connes.Execute(SQL_N_backup)

    var_N_backup    =    cint(rs_N_backup("CART_N_backup")+1)

    if 
    len(var_N_backup) < 5 then
        
    if len(var_N_backup) = 1 then
        var_N_backup 
    "0000" var_N_backup 
        
    elseIf len(var_N_backup) = 2 then
        var_N_backup 
    "000" var_N_backup
        
    elseIf len(var_N_backup) = 3 then
        var_N_backup 
    "00" var_N_backup
        
    elseIf len(var_N_backup) = 4 then
        var_N_backup 
    "0" var_N_backup
        end 
    if
    else
    var_N_backup var_N_backup
    end 
    if

    var_CART_bac    =var_N_backup&"_"&giorno&"_"&mese&"_"&anno
    '######CREO LA CARTELLA PER IL BACKUP##########################
    Set objFso = Server.CreateObject("Scripting.FileSystemObject")

    If objFSO.FolderExists(var_per_BAC&"\"&var_CART_bac) Then
    Response.Redirect(back & "?err=507&var_BK="&var_CART_bac)
    else
    objFso.CreateFolder(var_per_BAC&"\"&var_CART_bac)
    End If

    Set objFso = Nothing
    '
    ######CREO LA CARTELLA PER IL BACKUP##########
    rs_N_backup.Close
    Set rs_N_backup 
    Nothing
    '########################################
    var_B_sel_1        =    split(var_B_sel,",")
    for ctInd=0 TO ubound(var_B_sel_1)

    SQL_matr = " SELECT * from AA_cartella where id_SEDE =" & in_id_SEDE & " and id_CART = " & var_B_sel_1(ctInd)
    Set rs_matr = Connes.Execute(SQL_matr)
    while not rs_matr.eof

    var_matr    =    rs_matr("CART_nome")

    matr_server        =var_per_01&"\"&rs_matr("CART_nome")
    matr_backup        =var_per_BAC&"\"&var_CART_bac&"\"&var_matr

        Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
        objFSO.copyFolder matr_server, matr_backup

        If not objFSO.FolderExists(matr_server) Then
            Response.Redirect(back & "?err=506")
            Response.End
            End If

        objFSO.DeleteFolder(matr_server)

        Set objFSO = Nothing

    rs_matr.movenext
    wend
    rs_matr.Close
    Set rs_matr = Nothing

    next 
    Vi sono grato per l'aiuto buona giornata

  2. #2
    la risorsa deve iniziare con \\, non con \

  3. #3
    Grato per vaermi risposti, hai ragione ho sbagliato nel trascivere il post, in effetti lo script è come di segutio


    '########################################
    var_per_BAC = "D:_BACKUP" (funziona)
    var_per_BAC = "\\15200pc052backup" (non funziona)
    var_per_01 = "C:inetpubwwwrootproc_ISPESL_01_CONTENITORE
    '#####################################


  4. #4
    per la questione dei permessi, devi tener presente che chi fa girare le procedure ASP è l'utente IUSR_nome macchina (o IUSRS o altro, dipende dalla versione di IIS)

    prova a dare i permessi di lettura/scrittura (meglio se fai Full Access) alla cartella root di destinazione del backup a Everyone. Da non mantenere poi a regime! solo per fare una prova.

    poi dovresti dirci che errore ti dà, perché con un generico "non funziona" si possono solo fare supposizioni...

  5. #5
    Grazie, sempre pronto ad aiutare.
    Allora il server è II6 con XP professional, dove ho dato i permessi completi sia a IUSRS che all'utenza che accede al PC.

    La macchina che riceve ho dato i permessi full sia a Everyone che all'utenza del server.

    Il messaggio di errore è il seguente:

    Tipo di errore:
    Errore di run-time di Microsoft VBScript (0x800A0046)
    Autorizzazione negata

    e mi identificato la riga 53 che è:
    objFso.CreateFolder(var_per_BAC&"\"&var_CART_bac)

    ossia var_per_BAC: "\\15200pc\052backup" e var_CART_bac è la cartella che mi deve creare

    Ancora grazie

  6. #6
    \\15200pc è il nome della macchina o il nome dello share?

  7. #7
    Scusami tanto ma ho sbagliato: \\15200pc052\BACKUP è il percorso esatto

    \\15200pc052 è il nome della macchina mentre BACKUP è la cartella condivisa con i permessi che ti ho indicato
    Grazie

  8. #8
    - vai sul server
    - apri risorse del computer
    - digita \\15200pc052\BACKUP nella barra dell'indirizzo
    - prova a creare una cartella

    se tutto funziona, deve funzionare anche da asp

    (comunque controlla bene la correttezza dei nomi nella pagina asp, ti sei dimostrato un po' paciugador )


  9. #9
    Ho fato come mi hai detto e sono riscito a creare la cartella.
    Con un file batch tutto funziona non riesco a capire in ASP perchè no

    firmato paciugador

  10. #10
    impariamo a fare un po' di debug

    la riga

    objFso.CreateFolder(var_per_BAC&"\"&var_CART_bac)

    la facciamo diventare

    myNewFolder=var_per_BAC & "\" & var_CART_bac
    Response.Write "
    maGGico folder...: " & myNewFolder & "
    "
    Response.Flush
    objFso.CreateFolder(myNewFolder)

    e controlla se la cartella è giusta

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 © 2025 vBulletin Solutions, Inc. All rights reserved.