Mostra notizie nelle discussioni
  • Avatar
    ☺
    Scritto da
    il 2010-12-03 08:17:00.0 alle 2010-12-03 08:17:00.0
    Trollate totali: 4459
    devo fare uno script
    o un batch o un accrocchio.
    scopo del coso è prendere un file in formato csv composto da tre colonne:
    1) nome cartella
    2) utente
    3) permesso (lettura o modifica)

    e per ogni riga deve, su un server remoto predefinito e costante:
    controllare se la cartella esiste e se non, crearla;
    controllare se la cartella è condivisa con permessi everyone in scrittura, e se non lo è, condividerla;
    rimuovere tutti i permessi ntfs ad eccezione di administrator, system e creator owner;
    aggiungere ai permessi ntfs il permesso per l'utente della riga descritto nella colonna adiacente.

    pensavo di riuscire a farlo solo con un batch usando xcacls.vbs ma poi mi sono accorto che net share non funge su sistema remoto, quindi devo usare win32_share.
    molto probabilmente per far prima farò un accrocchio mezzo vbs mezzo batch, comunque vorrei avere il tempo di fare una soluzione più elegante, alla faccia dell'eleganza, tutta in vbs (quindi se questa è l'eleganza che immagino figuratevi che schifio ho in mente di fare).
    mi dò come tempo di realizzazione 4 orette... a partire da quando arrivo in sito e finisco i lavoretti ordinari.

    mi piacerebbe tanto essere come giambo o peto che queste cose saprebbero farle in 20 minuti e con 10 linguaggi diversi Triste
    • Avatar
      ☺
      Scritto da
      il 2010-12-03 08:34:00.0 alle 2010-12-03 08:34:00.0
      Trollate totali: 42885
      Re: devo fare uno script

      - Scritto da: Caccola

      > mi piacerebbe tanto essere come giambo o peto che
      > queste cose saprebbero farle in 20 minuti e con
      > 10 linguaggi diversi
      > Triste

      Giambo, a differenza di Peto, ce l'ha anche molto lungo Occhiolino !
      `"la realta' non e' cosi' terrificante come vogliono farti credere" - Giambo ` - Wakko che cita Giambo
      • Avatar
        ☺
        Scritto da
        il 2010-12-03 08:41:00.0 alle 2010-12-03 08:41:00.0
        Trollate totali: 4459
        Re: devo fare uno script

        - Scritto da: Giambo
        >
        > - Scritto da: Caccola
        >
        > > mi piacerebbe tanto essere come giambo o peto
        > che
        > > queste cose saprebbero farle in 20 minuti e con
        > > 10 linguaggi diversi
        > > Triste
        >
        > Giambo, a differenza di Peto, ce l'ha anche molto
        > lungo Occhiolino
        > !

        seriamente tu su win quanto ci metteresti a fare una cacata simile?
        • Avatar
          Scritto da
          Non Autenticato
          il 2010-12-03 08:48:00.0 alle 2010-12-03 08:48:00.0
          Re: devo fare uno script

          - Scritto da: Caccola
          >
          > - Scritto da: Giambo
          > >
          > > - Scritto da: Caccola
          > >
          > > > mi piacerebbe tanto essere come giambo o peto
          > > che
          > > > queste cose saprebbero farle in 20 minuti e
          > con
          > > > 10 linguaggi diversi
          > > > Triste
          > >
          > > Giambo, a differenza di Peto, ce l'ha anche
          > molto
          > > lungo Occhiolino
          > > !
          >
          > seriamente tu su win quanto ci metteresti a fare
          > una cacata
          > simile?

          quanto paghi?
          • Avatar
            ☺
            Scritto da
            il 2010-12-03 10:52:00.0 alle 2010-12-03 10:52:00.0
            Trollate totali: 4459
            Re: devo fare uno script

            - Scritto da:
            >
            > - Scritto da: Caccola
            > >
            > > - Scritto da: Giambo
            > > >
            > > > - Scritto da: Caccola
            > > >
            > > > > mi piacerebbe tanto essere come giambo o
            > peto
            > > > che
            > > > > queste cose saprebbero farle in 20 minuti e
            > > con
            > > > > 10 linguaggi diversi
            > > > > Triste
            > > >
            > > > Giambo, a differenza di Peto, ce l'ha anche
            > > molto
            > > > lungo Occhiolino
            > > > !
            > >
            > > seriamente tu su win quanto ci metteresti a fare
            > > una cacata
            > > simile?
            >
            > quanto paghi?

            niente, ma non voglio che me lo fai.
            voglio che mi stimi il tempo che ci impiegherebbi tu se sarebbi obbligato a farlo.
        • Avatar
          ☺
          Scritto da
          il 2010-12-03 09:03:00.0 alle 2010-12-03 09:03:00.0
          Trollate totali: 42885
          Re: devo fare uno script

          - Scritto da: Caccola

          > > Giambo, a differenza di Peto, ce l'ha anche
          > molto
          > > lungo Occhiolino
          > > !
          >
          > seriamente tu su win quanto ci metteresti a fare
          > una cacata
          > simile?

          10 giorni: Non conosco vbs Sorride
          Se invece lo vuoi su UNIX, penso che in mezz'oretta e' fatto (Ma al cliente fatturiamo solo blocchi di un'ora, quindi, calcola 60 minuti, fanno 100Euro, grazie Sorride !)
          `"la realta' non e' cosi' terrificante come vogliono farti credere" - Giambo ` - Wakko che cita Giambo
          • Avatar
            ☺
            Scritto da
            il 2010-12-03 10:50:00.0 alle 2010-12-03 10:50:00.0
            Trollate totali: 4459
            Re: devo fare uno script

            - Scritto da: Giambo
            >
            > - Scritto da: Caccola
            >
            > > > Giambo, a differenza di Peto, ce l'ha anche
            > > molto
            > > > lungo Occhiolino
            > > > !
            > >
            > > seriamente tu su win quanto ci metteresti a fare
            > > una cacata
            > > simile?
            >
            > 10 giorni: Non conosco vbs Sorride

            lo imparerebbi in 30 minuti ne sono sicuro.
            poi però la tua mente sarebbe "crippled in an irreversible way" come dice dijkstra o come cazzo si scrive Sorride

            > Se invece lo vuoi su UNIX, penso che in
            > mezz'oretta e' fatto (Ma al cliente fatturiamo
            > solo blocchi di un'ora, quindi, calcola 60
            > minuti, fanno 100Euro, grazie Sorride
            > !)

            ma su win nonc'è solo vbs.

            o sì?

            cioé nel senso per le specifiche che ho potresti anche realizzare un eseguibile, non ha importanza che linguaggio usi.
            • Avatar
              ☺
              Scritto da
              il 2010-12-03 10:53:00.0 alle 2010-12-03 10:53:00.0
              Trollate totali: 42885
              Re: devo fare uno script

              - Scritto da: Caccola

              > > > seriamente tu su win quanto ci metteresti a
              > fare
              > > > una cacata
              > > > simile?
              > >
              > > 10 giorni: Non conosco vbs Sorride
              >
              > lo imparerebbi in 30 minuti ne sono sicuro.

              Aspetta di avere la mia eta', poi vedrai A bocca storta ...

              > poi però la tua mente sarebbe "crippled in an
              > irreversible way" come dice dijkstra o come cazzo
              > si scrive
              > Sorride

              Hei, io non ho imparato a programmare in BASIC Arrabbiato !

              > > Se invece lo vuoi su UNIX, penso che in
              > > mezz'oretta e' fatto (Ma al cliente fatturiamo
              > > solo blocchi di un'ora, quindi, calcola 60
              > > minuti, fanno 100Euro, grazie Sorride
              > > !)
              >
              > ma su win nonc'è solo vbs.
              >
              > o sì?

              Mboh Newbie, inesperto ?

              > cioé nel senso per le specifiche che ho potresti
              > anche realizzare un eseguibile, non ha importanza
              > che linguaggio
              > usi.

              Allora lo faccio in Java Geek !

              Seriamente: Forse Perl e' il metodo piu' facile.
              `"la realta' non e' cosi' terrificante come vogliono farti credere" - Giambo ` - Wakko che cita Giambo
    • Avatar
      ☺
      Scritto da
      il 2010-12-03 08:50:00.0 alle 2010-12-03 08:50:00.0
      Trollate totali: 1386
      Re: devo fare uno script

      - Scritto da: Caccola
      > o un batch o un accrocchio.
      > scopo del coso è prendere un file in formato csv
      > composto da tre
      > colonne:
      > 1) nome cartella
      > 2) utente
      > 3) permesso (lettura o modifica)
      >
      > e per ogni riga deve, su un server remoto
      > predefinito e
      > costante:
      > controllare se la cartella esiste e se non,
      > crearla;
      > controllare se la cartella è condivisa con
      > permessi everyone in scrittura, e se non lo è,
      > condividerla;
      > rimuovere tutti i permessi ntfs ad eccezione di
      > administrator, system e creator
      > owner;
      > aggiungere ai permessi ntfs il permesso per
      > l'utente della riga descritto nella colonna
      > adiacente.
      >
      > pensavo di riuscire a farlo solo con un batch
      > usando xcacls.vbs ma poi mi sono accorto che net
      > share non funge su sistema remoto, quindi devo
      > usare
      > win32_share.
      > molto probabilmente per far prima farò un
      > accrocchio mezzo vbs mezzo batch, comunque vorrei
      > avere il tempo di fare una soluzione più
      > elegante, alla faccia dell'eleganza, tutta in vbs
      > (quindi se questa è l'eleganza che immagino
      > figuratevi che schifio ho in mente di
      > fare).
      > mi dò come tempo di realizzazione 4 orette... a
      > partire da quando arrivo in sito e finisco i
      > lavoretti
      > ordinari.
      >
      > mi piacerebbe tanto essere come giambo o peto che
      > queste cose saprebbero farle in 20 minuti e con
      > 10 linguaggi diversi
      > Triste

      Il template del vbs dovrebbe essere questo, devi aggiungere solo la gestione dei permessi:
      set objShell = CreateObject("Wscript.Shell")
      set fso=CreateObject("Scripting.FileSystemObject")
      set ots=fso.opentextfile("file.csv")
      do while not ots.endofstream
          s=ots.readline
          vals=Split(s,";",-1,1)
          cartella=vals(0)
          utente=vals(1)
          permesso=vals(2)
          Wscript.Echo "cartella=" & cartella & " utente=" & utente & " permesso=" & permesso
          remotePath="\\macchina_remota\nome_condivisione\" & cartella
          If fso.FolderExists(remotePath)
              Wscript.Echo "La cartella " & cartella & " esiste."
          Else
              Wscript.Echo "La cartella " & cartella & " esiste solo nella tua mente."
              fso.CreateFolder(remotePath)
          End If
          intRunError=objShell.Run("%COMSPEC% /k cacls """ & remotePath & """ /E /G everyone:F")
          'TODO: aggiungere gestione permessi
      loop
      ots.close
      
      • Avatar
        ☺
        Scritto da
        il 2010-12-03 08:56:00.0 alle 2010-12-03 08:56:00.0
        Trollate totali: 1386
        Re: devo fare uno script
        Sul tempo impiegato: 20-25 minuti per arrivare fino a qua a colpi di google, penso che per capire come si gestiscono i permessi ntfs invece ci passerei la mattinata (tant'è che non ci stavo capendo un razzo e te lo lascio come "triviale esercizio" Con la lingua fuori)
        • Avatar
          ☺
          Scritto da
          il 2010-12-03 11:00:00.0 alle 2010-12-03 11:00:00.0
          Trollate totali: 4459
          Re: devo fare uno script

          - Scritto da: Svyatopolk
          > Sul tempo impiegato: 20-25 minuti per arrivare
          > fino a qua a colpi di google, penso che per
          > capire come si gestiscono i permessi ntfs invece
          > ci passerei la mattinata (tant'è che non ci stavo
          > capendo un razzo e te lo lascio come "triviale
          > esercizio"
          > Con la lingua fuori)

          grazie al cazzo, ti sei fatto la parte più semplice!

          i permessi ntfs a capirli è un puttanaio, se ti interessa ho in giro un simpatico doc di 72 pagine che spiega che nelle trustee ci sono le dacl e le sacl, e in ogni dacl e sacl ci sono le ace, e via andare.

          comunque molto più semplice usare xcacls.vbs che è già fatto ed è molto bellino.
          http://support.microsoft.com/kb/825751

          comunque non volevo chiederti di fare il mio lavoro, non è giusto... volevo solo che mi dicessi ipoteticamente quanto ci avresti impiegato tu... però grazie peto Fan Windows
          • Avatar
            ☺
            Scritto da
            il 2010-12-03 11:07:00.0 alle 2010-12-03 11:07:00.0
            Trollate totali: 1386
            Re: devo fare uno script

            - Scritto da: Caccola
            >
            > - Scritto da: Svyatopolk
            > > Sul tempo impiegato: 20-25 minuti per arrivare
            > > fino a qua a colpi di google, penso che per
            > > capire come si gestiscono i permessi ntfs invece
            > > ci passerei la mattinata (tant'è che non ci
            > stavo
            > > capendo un razzo e te lo lascio come "triviale
            > > esercizio"
            > > Con la lingua fuori)
            >
            > grazie al cazzo, ti sei fatto la parte più
            > semplice!
            >
            > i permessi ntfs a capirli è un puttanaio, se ti
            > interessa ho in giro un simpatico doc di 72
            > pagine che spiega che nelle trustee ci sono le
            > dacl e le sacl, e in ogni dacl e sacl ci sono le
            > ace, e via
            > andare.
            >
            > comunque molto più semplice usare xcacls.vbs che
            > è già fatto ed è molto
            > bellino.
            > http://support.microsoft.com/kb/825751
            >
            > comunque non volevo chiederti di fare il mio
            > lavoro, non è giusto... volevo solo che mi
            > dicessi ipoteticamente quanto ci avresti
            > impiegato tu... però grazie peto
            > Fan Windows

            Infatti quello che ho letto era proprio su questo script, poi ho trovato un belink che spiegava a grandi linee la complessità delle menti che hanno partorito il puttanaio dei permessi di windows e mi sono fermato.
            • Avatar
              ☺
              Scritto da
              il 2010-12-03 11:13:00.0 alle 2010-12-03 11:13:00.0
              Trollate totali: 4459
              Re: devo fare uno script

              - Scritto da: Svyatopolk
              >
              > - Scritto da: Caccola
              > >
              > > - Scritto da: Svyatopolk
              > > > Sul tempo impiegato: 20-25 minuti per arrivare
              > > > fino a qua a colpi di google, penso che per
              > > > capire come si gestiscono i permessi ntfs
              > invece
              > > > ci passerei la mattinata (tant'è che non ci
              > > stavo
              > > > capendo un razzo e te lo lascio come "triviale
              > > > esercizio"
              > > > Con la lingua fuori)
              > >
              > > grazie al cazzo, ti sei fatto la parte più
              > > semplice!
              > >
              > > i permessi ntfs a capirli è un puttanaio, se ti
              > > interessa ho in giro un simpatico doc di 72
              > > pagine che spiega che nelle trustee ci sono le
              > > dacl e le sacl, e in ogni dacl e sacl ci sono le
              > > ace, e via
              > > andare.
              > >
              > > comunque molto più semplice usare xcacls.vbs che
              > > è già fatto ed è molto
              > > bellino.
              > > http://support.microsoft.com/kb/825751
              > >
              > > comunque non volevo chiederti di fare il mio
              > > lavoro, non è giusto... volevo solo che mi
              > > dicessi ipoteticamente quanto ci avresti
              > > impiegato tu... però grazie peto
              > > Fan Windows
              >
              > Infatti quello che ho letto era proprio su questo
              > script, poi ho trovato un belink che spiegava a
              > grandi linee la complessità delle menti che hanno
              > partorito il puttanaio dei permessi di windows e
              > mi sono
              > fermato.

              sono un casino è vero, però permettono di fare cose interessanti.

              su linuxunix sono più semplici, più potenti, o entrambe?
              • Avatar
                ☺
                Scritto da
                il 2010-12-03 12:02:00.0 alle 2010-12-03 12:02:00.0
                Trollate totali: 1386
                Re: devo fare uno script

                - Scritto da: Caccola
                >
                > - Scritto da: Svyatopolk
                > >
                > > - Scritto da: Caccola
                > > >
                > > > - Scritto da: Svyatopolk
                > > > > Sul tempo impiegato: 20-25 minuti per
                > arrivare
                > > > > fino a qua a colpi di google, penso che per
                > > > > capire come si gestiscono i permessi ntfs
                > > invece
                > > > > ci passerei la mattinata (tant'è che non ci
                > > > stavo
                > > > > capendo un razzo e te lo lascio come
                > "triviale
                > > > > esercizio"
                > > > > Con la lingua fuori)
                > > >
                > > > grazie al cazzo, ti sei fatto la parte più
                > > > semplice!
                > > >
                > > > i permessi ntfs a capirli è un puttanaio, se
                > ti
                > > > interessa ho in giro un simpatico doc di 72
                > > > pagine che spiega che nelle trustee ci sono le
                > > > dacl e le sacl, e in ogni dacl e sacl ci sono
                > le
                > > > ace, e via
                > > > andare.
                > > >
                > > > comunque molto più semplice usare xcacls.vbs
                > che
                > > > è già fatto ed è molto
                > > > bellino.
                > > > http://support.microsoft.com/kb/825751
                > > >
                > > > comunque non volevo chiederti di fare il mio
                > > > lavoro, non è giusto... volevo solo che mi
                > > > dicessi ipoteticamente quanto ci avresti
                > > > impiegato tu... però grazie peto
                > > > Fan Windows
                > >
                > > Infatti quello che ho letto era proprio su
                > questo
                > > script, poi ho trovato un belink che spiegava a
                > > grandi linee la complessità delle menti che
                > hanno
                > > partorito il puttanaio dei permessi di windows e
                > > mi sono
                > > fermato.
                >
                > sono un casino è vero, però permettono di fare
                > cose
                > interessanti.
                >
                > su linuxunix sono più semplici, più potenti, o
                > entrambe?


                Sono più comprensibli, almeno per me, a livello di fs locale.
                Quando dai ls -l e per ogni file vedi
                drwxr-xr-- utente gruppo
                è chiaro che:
                d -> è una directory
                rwx -> l'utente ha permesso di lettura, scrittura ed esecuzione
                r-x -> il gruppo ha permesso di lettura ed esecuzione
                r-- -> tutti gli altri hanno permesso di lettura

                Per cambiarli hai chmod che ha una sintassi per me comprensibile:
                chmod [ugoa][+-][rwx] file/directory
                dove
                [ugoa] user, group, other, all
                [+-] aggiungi o rimuovi il permesso

                quindi cambiare il permesso dei files si riduce ad esempio a
                chmod o-rwx file per togliere tutti i permesis agli altri
                chmod g+r-x file per aggiungere lettura e togliere esecuzione e così via

                Se devi farlo nell'ambito della gestione del dominio magari ci sono tool più adeguati, io che sono kiss userei ssh e sshfs Con la lingua fuori
                Semplicemente in fase di installazione dei pc, dentro la root di ogni pc metti la chiave pubblica ssh che userai per accedere da remoto
                poi il tuo script si tradurrebbe in:

                #!/bin/sh
                remote_host="the_remote_hostname"
                absolute_remote_path="/absolute/filesystem/path/to/the/dir/"
                for line in $(cat il_file.csv); do
                    arr=($(echo $line | tr ";" "\n"))
                    cartella=${arr[0]}
                    utente=${arr[1]}
                    permesso=${arr[2]}
                    echo "cartella=$cartella utente=$utente permesso=$permesso"
                    rem_path=$absolute_remote_path$cartella
                    #crea cartella se non esiste, reset dei permessi
                    ssh $remote_host "mkdir -p $rem_path; chmod a-rwx $rem_path"
                    #cambia owner, setta permessi
                    ssh $remote_host "chown $utente $rem_path; chmod u+$permesso $rem_path"
                done
                


                Usando sshfs sai che l'utente remoto entra come un certo utente della macchina locale quindi i permessi di fs == permessi di condivisione.

                Tempo impiegato 40 minuti perché non mi ricordavo come funzionano gli array bash e come fare lo split. A bocca storta
<softv>

Pagina generata in 308 millisecondi

Utenti attivi: 11 nell'ultimo minuto, 24 negli ultimi cinque minuti, 46 negli ultimi 15 minuti