Discussione: Copia file da Windows a Linux

Risultati da 1 a 10 di 10

  1. #1
    Nuovo Iscritto
    Data Registrazione Dec 2010
    Messaggi 5
    Rigraziamenti

    Copia file da Windows a Linux

    Salve.
    Il mio problema è scrivere un script in grado di copiare un file da un server windows ad un server Linux (nello specifico Ubuntu), dove è installato apache.

    I due pc sono collocati nella stessa rete lan, e il file è raggiungibile solamente tramite un percorso di tipo smb:// protetto da password.

    Qualcuno è in grado di aiutarmi?
    Sono gradite anche soluzioni alternative.
    Ringrazio anticipatamente.
  2. #2
    Forumista DOC
    Data Registrazione Feb 2005
    Messaggi 4,389
    Rigraziamenti
  3. #3
    Nuovo Iscritto
    Data Registrazione Dec 2010
    Messaggi 5
    Rigraziamenti
    Php, ma posso usare anche la funzione exec() per mandare un comando al terminale come "cp".

    Il problema è che non riesco a fargli accettare il percorso di tipo smb:// ...
  4. #4
    Forumista DOC
    Data Registrazione Oct 2009
    Località Roma
    Messaggi 5,305
    Rigraziamenti
    Questa classe sembra fare al caso tuo. Ti consiglio di dargli un'occhiata.
  5. #5
    Nuovo Iscritto
    Data Registrazione Dec 2010
    Messaggi 5
    Rigraziamenti
    In effetti sembra proprio ciò che mi serve.

    E' un pò scarna di documentazione però questa classe

    Ho un pò di difficoltà nell'usarla, sapete aiutarmi?
  6. #6
    Forumista DOC
    Data Registrazione Oct 2009
    Località Roma
    Messaggi 5,305
    Rigraziamenti
    Non sono sicuro di aver capito bene, ma mi sembra di leggere che in realtà non sia necessario usare direttamente la classe. Devi solamente includerla nel tuo script e poi potrai accedere tranquillamente agli URL smb:// tramite le funzioni della libreria stream.
  7. #7
    Nuovo Iscritto
    Data Registrazione Dec 2010
    Messaggi 5
    Rigraziamenti
    Non sono sicuro di aver capito bene, ma mi sembra di leggere che in realtà non sia necessario usare direttamente la classe. Devi solamente includerla nel tuo script e poi potrai accedere tranquillamente agli URL smb:// tramite le funzioni della libreria stream.
    Quoto dalla descrizione
    The class implements functions to create, read and write to files available in the local network shares.
    Quindi nella classe è implementata qualche funzione per leggere i file. Il problema è capire quale... Non c'è un minimo di documentazione.
  8. #8
    Forumista DOC
    Data Registrazione Oct 2009
    Località Roma
    Messaggi 5,305
    Rigraziamenti
    Ripeto: prova ad accedere all'URL come faresti normalmente con le funzioni per la manipolazione dei file (fopen, fwrite, fgets) e vedi se funziona. Io, purtroppo, non posso testare la classe, quindi dovrai necessariamente farlo tu.
  9. #9
    Nuovo Iscritto
    Data Registrazione Dec 2010
    Messaggi 5
    Rigraziamenti
    Ripeto: prova ad accedere all'URL come faresti normalmente con le funzioni per la manipolazione dei file (fopen, fwrite, fgets) e vedi se funziona. Io, purtroppo, non posso testare la classe, quindi dovrai necessariamente farlo tu.
    Incredibile, ma vero, funziona!

    Non mi spiego ancora a livello tecnico come possa essere possibile, dato la classe non ri-implementa nessun metodo già esistente, ne c'è la necessita dichiarare un oggetto appartenente ad essa per il suo utilizzo. Insomma, a prima vista è un utilizzo totalmente trasparente, mi è bastato semplicemente includere la classe nel mio script e usare la semplicissima funzione copy con il percorso smb://.


    Grazie mille!
  10. #10
    Forumista DOC
    Data Registrazione Oct 2009
    Località Roma
    Messaggi 5,305
    Rigraziamenti
    Se ti interessa, la magia sta tutta in questa riga:
    Codice PHP:
    stream_wrapper_register('smb''smb_stream_wrapper') or die ('Failed to register protocol'); 
    Che praticamente registra il wrapper per gli URL di tipo smb. Con questo sistema puoi gestire un tipo illimitato di protocolli, semplicemente registrando il relativo wrapper

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi