{"id":213,"date":"2015-10-02T14:43:01","date_gmt":"2015-10-02T13:43:01","guid":{"rendered":"http:\/\/eppesuigoccas.homedns.org\/wordpress\/?p=213"},"modified":"2015-10-02T14:43:01","modified_gmt":"2015-10-02T13:43:01","slug":"smbclient-e-nt_status_io_timeout","status":"publish","type":"post","link":"https:\/\/blog.sguazz.it\/index.php\/archives\/213","title":{"rendered":"smbclient e NT_STATUS_IO_TIMEOUT"},"content":{"rendered":"<p>A volte capita di dover trasferire file da macchine Windows a macchina Linux. In questi casi uno degli strumenti che si possono utilizzare \u00e8 smbclient, che accede da Linux ad una cartella condivisa della macchina Windows e trasferisce file bidirezionalmente.<\/p>\n<p>Nel caso che il trasferimento sia lento si pu\u00f2 rilevare un timeout con il messaggio d&#8217;errore \u00abparallel_read returned NT_STATUS_IO_TIMEOUT\u00bb.<\/p>\n<pre>smb&gt; get nomefile\r\nparallel_read returned NT_STATUS_IO_TIMEOUT<\/pre>\n<p><!--more-->La parte interessante di questo messaggio \u00e8 \u00abparallel\u00bb, difatti da quanto ho capito, smbclient fa 10 richieste in parallelo per leggere 10 porzioni successive del file che si trasferisce, e attende un certo periodo per riceverle tutte e 10. Se una delle 10 non arriva, scatta il timeout e il trasferimento viene interrotto.<\/p>\n<p>Il timeout non ha una durata modificabile tramite parametri, ma lo ha la dimensione della porzione di file da leggere: questa dimensione ha un valore predefinito che \u00e8 dato dal server, ma pu\u00f2 essere regolato con il comando \u00abiosize\u00bb di smbclient. La pagina di manuale di smbclient dice che ci pu\u00f2 impostare un valore qualsiasi tra 0 e 16776960, ma il valore minimo \u00e8 in realt\u00e0 16384. Se si imposta un valore minore si ottiene questo errore:<\/p>\n<pre>smb&gt; iosize 8192\r\niosize out of range (min = 16384 (0x4000), max = 16776960 (0xFFFF00)<\/pre>\n<p>Impostando il valore minimo si ottiene il trasferimento di pacchetti dati pi\u00f9 piccoli, che presumibilmente verranno trasferiti senza fare scattare il timeout.<\/p>\n<p>Con il valore 16348 ho trasferito con successo parecchi file tramite linea ADSL con velocit\u00e0 inferiore ai 7mbit\/s.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A volte capita di dover trasferire file da macchine Windows a macchina Linux. In questi casi uno degli strumenti che si possono utilizzare \u00e8 smbclient, che accede da Linux ad una cartella condivisa della macchina Windows e trasferisce file bidirezionalmente. Nel caso che il trasferimento sia lento si pu\u00f2 rilevare un timeout con il messaggio [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,3,11,10],"tags":[],"class_list":["post-213","post","type-post","status-publish","format-standard","hentry","category-sysadmin","category-computer","category-debian","category-open-source"],"_links":{"self":[{"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/posts\/213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/comments?post=213"}],"version-history":[{"count":2,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/posts\/213\/revisions"}],"predecessor-version":[{"id":215,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/posts\/213\/revisions\/215"}],"wp:attachment":[{"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/media?parent=213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/categories?post=213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.sguazz.it\/index.php\/wp-json\/wp\/v2\/tags?post=213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}