Robocopy ERROR 1314 (0x00000522) Copying NTFS Security to Destination Directory

Lanciando per la prima volta questo semplice script con Robocopy:

> robocopy %SOURCE% %DESTINATION% /COPYALL /MIR /ZB /R:3 /W:5 /LOG:%LOGFILE%

dove:

  • %SOURCE% era un percorso locale (Server Windows), ad esempio C:\Test
  • %DESTINATION% era un percorso di rete, nello specifico, una cartella di un NAS, ad esempio \\MyNAS1\share1\Test
  • %LOGFILE% era il percorso in cui aveva il mio file di log

mi sono accorto che erano state copiate soltanto cartelle e sottocartelle vuote.

Analizzando il log mi sono accorto dei seguenti errori:

[...]

    New File 6148 .DS_Store
2015/12/24 10:41:56 ERROR 1314 (0x00000522) Copying NTFS Security to Destination Directory C:\Test\
A required privilege is not held by the client.
    New File 41.3 m test.doc
2015/12/24 10:41:56 ERROR 1314 (0x00000522) Copying NTFS Security to Destination Directory C:\Test\
A required privilege is not held by the client.
    New File 659 README.txt
2015/12/24 10:41:56 ERROR 1314 (0x00000522) Copying NTFS Security to Destination Directory C:\Test\
A required privilege is not held by the client.
    New File 17920 TESTxlsx.xlsx
2015/12/24 10:41:56 ERROR 1314 (0x00000522) Copying NTFS Security to Destination Directory C:\Test\

[...]

lo stesso errore per ogni file.

Per risolvere il problema ho modificato lo script togliendo l’opzione /COPYALL e mettendo al suo posto /COPY:DAT, così:

> robocopy %SOURCE% %DESTINATION% /COPY:DAT /MIR /ZB /R:3 /W:5 /LOG:%LOGFILE%

Molto probabilmente il NAS che ha un sistema UNIX al suo interno, non riesce a mantenere le informazioni di sicurezza, proprietari e auditing che vengono passate rispettivamente con le opzioni S, O e U.

Attenzione: nel mio caso, la rimozione delle opzioni faceva al caso mio perché non avevo la necessità di mantenere quelle informazioni nel mio backup. In caso contrario, consiglio di cercare altrove la causa del problema.

Note utili tratte dal sito ufficiale

  • /COPYALL : Copy ALL file info (equivalent to /COPY:DATSOU).
  • /COPY:copyflag[s] : What to COPY (default is /COPY:DAT)
    (copyflags : D=Data, A=Attributes, T=Timestamps, S=Security=NTFS ACLs, O=Owner info, U=aUditing info).

Link utili su Robocopy per capire e approfondire la sintassi

Articoli Correlati - Related Posts:

QNAP Formatting failed(Cannot unmount disk)

In un NAS QNAP ho dovuto aggiungere due hard disk da 4 TB.

Dopo aver inserito il primo, ho notato che la formattazione manuale falliva. Accedendo ai System Logs ho trovato le seguenti righe:

... 19:37:17 [Single Disk Volume: Drive 1] Formatting failed(Cannot unmount disk).
... 19:37:15 [Single Disk Volume: Drive 1] Formatting failed.
... 19:37:13 [Single Disk Volume: Drive 1] Start formatting.

Per risolvere il problema ho:

  • spento il NAS
  • staccato il primo disco nuovo che avevo inserito
  • collegato tale disco ad un altro PC utilizzando un adattatore USB
  • avviato quel PC con una distribuzione di Linux (ho usato una versione live di Ubuntu)
  • avviato il programma GParted Partition Editor
  • cancellato tutte le partizioni dal disco finché non ho visto tutto lo spazio “unallocated”
  • avviato il Terminal e lanciato il comando (ATTENZIONE: USATE QUESTO COMANDO SOLO SE SAPETE COSA STATE FACENDO, altrimenti rischiate di effettuare cancellazioni non volute. Dovete modificare /dev/sdb in base a come viene visto il vostro disco esterno. Lo vedete comodamente su GParted):
sudo dd if=/dev/zero of=/dev/sdb bs=446 count=1
  • smontato il disco dal PC e montato sul NAS
  • effettuato le stesse operazioni sull’altro disco nuovo che dovevo inserire e l’ho montato sul NAS
  • acceso il NAS

Entrambe le formattazioni sono avvenute con successo. Questo il risultato dei log:

23:17:26 [Single Disk Volume: Drive 2] Formatting completed.
23:08:32 [Single Disk Volume: Drive 2] Start formatting.
23:05:15 [Single Disk Volume: Drive 2] Start initialization.
22:54:03 [Single Disk Volume: Drive 1] Formatting completed.
22:43:47 [Single Disk Volume: Drive 1] Start formatting.
22:40:25 [Single Disk Volume: Drive 1] Start initialization.
22:34:32 Drive 2 plugged in.
22:00:24 Drive 1 plugged in.

Articoli Correlati - Related Posts:

Copiare due cartelle in Linux con rsync

Se si vogliono copiare due cartelle in Linux si può usare rsync da linea di comando.

Preparo l’ambiente di test creando le seguenti cartelle e file:

cartella “/share/source”
cartella “/share/destination”
cartella “/share/source/folder 1”
cartella “/share/source/folder 2”
file “/share/source/folder 1/file 1”
file “/share/source/folder 2/file 2”

Voglio copiare il contenuto della cartella “source” nella cartella “destination”. Quindi lancio:

[/share] # rsync -avc "source/" "destination"

Come mi aspettavo, ecco il risultato:

sending incremental file list
./
folder 1/
folder 1/file 1.txt
folder 2/
folder 2/file 2.txt

sent 253 bytes received 61 bytes 628.00 bytes/sec
total size is 12 speedup is 0.04

Verifico il risultato:

[/share] # ls -lR destination/
destination/:
drwxrwx--- 2 admin administ 4096 Dec 2 17:24 folder 1/
drwxrwx--- 2 admin administ 4096 Dec 2 17:24 folder 2/

destination/folder 1:
-rwxrwx--- 1 admin administ 6 Dec 2 17:24 file 1.txt*

destination/folder 2:
-rwxrwx--- 1 admin administ 6 Dec 2 17:24 file 2.txt*

Con un bel man rsync si possono vedere le opzioni che ho usato: http://linux.die.net/man/1/rsync

-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
-v, --verbose               increase verbosity
-c, --checksum              skip based on checksum, not mod-time & size

Qualche nota:

  • Nel comando del confronto, la slash “/” di “source/” vuol dire “il contenuto di source”.
  • L’opzione “-a” equivale a “-rlptgoD”. Incollo qui sotto le spiegazioni:
-r, --recursive             recurse into directories
-l, --links                 copy symlinks as symlinks
-p, --perms                 preserve permissions
-t, --times                 preserve modification times
-g, --group                 preserve group
-o, --owner                 preserve owner (super-user only)
-D                          same as --devices --specials
--devices                   preserve device files (super-user only)
--specials                  preserve special files

Articoli Correlati - Related Posts:

Confrontare due cartelle in Linux con rsync

Se si vogliono confrontare due cartelle in Linux si può usare rsync da linea di comando.

Preparo l’ambiente di test creando le seguenti cartelle e file:

cartella “/share/source”
cartella “/share/destination”
cartella “/share/source/folder 1”
cartella “/share/source/folder 2”
file “/share/source/folder 1/file 1”
file “/share/source/folder 2/file 2”
cartella “/share/destination/folder 1”
file “/share/destination/folder 1/file 1”

Voglio confrontare la cartella “source” con la cartella “destination”. Quindi lancio:

[/share] # rsync -avnc "source/" "destination"

Come mi aspettavo, ecco il risultato:

sending incremental file list
./
folder 2/
folder 2/file 2.txt

sent 155 bytes received 23 bytes 356.00 bytes/sec
total size is 12 speedup is 0.07 (DRY RUN)

la cartella “folder 2” e il file “folder 2/file 2.txt”  sono quelli che mancano nella cartella “destination”.

Con un bel man rsync si possono vedere le opzioni che ho usato: http://linux.die.net/man/1/rsync

-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
-v, --verbose               increase verbosity
-n, --dry-run               perform a trial run with no changes made
-c, --checksum              skip based on checksum, not mod-time & size

Qualche nota:

  • Nel comando del confronto, la slash “/” di “source/” vuol dire “il contenuto di source”.
  • L’opzione “-a” equivale a “-rlptgoD”. Incollo qui sotto le spiegazioni:
-r, --recursive             recurse into directories
-l, --links                 copy symlinks as symlinks
-p, --perms                 preserve permissions
-t, --times                 preserve modification times
-g, --group                 preserve group
-o, --owner                 preserve owner (super-user only)
-D                          same as --devices --specials
--devices                   preserve device files (super-user only)
--specials                  preserve special files
  • L’opzione “-n” è indispensabile per il confronto!!

Articoli Correlati - Related Posts:

Eccezione da HRESULT: 0x800A03EC PowerShell

Dopo aver eseguito questo comando PowerShell che incolla una formula dentro una cella di un file Excel:

$excelObject = New-Object -ComObject Excel.Application

$targetWorkbook = $excelObject.Workbooks.Open($myFile)

$firstSheet = $targetWorkbook.Worksheets.Item(1)

$firstSheet.Cells.Item(6,2).Formula = "=SE(VAL.ERRORE(MEDIA(..."

appariva il seguente errore:

Eccezione da HRESULT: 0x800A03EC
In riga:1 car:1
+ $firstSheet_N.Cells.Item(6,2).Formula = "=SE(VAL.ERRORE(MEDIA(..."
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : OperationStopped: (:) [], COMException + FullyQualifiedErrorId : System.Runtime.InteropServices.COMExcep tion

Dopo qualche ricerca e qualche intuizione, ho ricondotto l’errore alle impostazioni internazionali di Excel.

Ho modificato l’ultima riga nel modo seguente:

$firstSheet.Cells.Item($r,2).FormulaLocal = "=SE(VAL.ERRORE(MEDIA(..."

Come si vede, al posto di .Formula ho usato .FormulaLocal che fa funzionare il passaggio di stringhe con le impostazioni internazionali locali (inclusi i separatori,…).

Ho rilanciato lo script e ha funzionato tutto correttamente.

Articoli Correlati - Related Posts:

Problema Lync: Contacting Server and Signing In

Se Lync rimane fermo su “Contacting Server and Signing In” e non si connette, prima di impazzire con certificati, reinstallazioni, aggiornamenti, repair,… controllate l’orario del vostro PC. Questo non deve differire di più di 5 minuti dal server Lync.

Dopo aver sincronizzato l’orologio con quello del server (tenendo conto ovviamente dei rispettivi fusorari), il login è stato possibile.

Articoli Correlati - Related Posts:

  • Nessun Articolo Correlato - No Related Posts

Rimuovere la doppia spunta blu di Whatsapp

Vi state chiedendo come rimuovere la doppia spunta blu di Whatsapp?

Siete “ossessionati” da questa novità? Mi scrivete nei commenti perché? :) :) :) Io sinceramente non ho capito questa paura che si è diffusa. iMessage dell’iPhone e Messenger di Facebook lo fanno già da tempo! In ogni caso, l’opzione che vi farà scegliere se abilitare o disabilitare la doppia spunta sarà disponibile solo a partire dalla versione 2.11.44 e solo su Android.

Per disabilitare la doppia spunta blu che fa sapere quando leggiamo un messaggio alla persona che ce l’ha mandato, basterà andare, appena sarà disponibile la suddetta versione [1], su Impostazioni -> Account -> Privacy e togliere la spunta da “Conferme di lettura”.

Volete sapere invece una soluzione o meglio un “workaround” che è valido sia per Android che per iOS di Apple?

Se proprio non volete far sapere a chi vi scrive quando leggete, vi basterà, alla ricezione del messaggio, abbassare la “tendina” del vostro telefono (quella in cui vengono mostrate le notifiche) e leggere soltanto l’anteprima. ;)

Ovviamente se il messaggio è molto lungo dovrete aprirlo ma almeno riuscirete a vedere chi vi ha scritto, di cosa si tratta e deciderete se rispondere subito o dopo. :)

In questo modo, la persona non visualizzerà i segni di spunta blu.

Nota

[1] La versione 2.11.44 non è ancora disponibile nello store di Google, ma se proprio volete aggiornarla, dovrete farlo scaricando Whatsapp per Android dalla sezione download del sito ufficiale.

Articoli Correlati - Related Posts: