What you’ll need:
DSM5.0-4482 (or newer is installed) for your particular DS.
DSM4.3-3827 for your particular DS.
Assistant Synology DS
A network and some cables.
A disk to be used for installation.
Your data, back up a safe place.
A DiskStation be downgraded.
Get the DSM versions here
OS
Set up scaling option for DSM Synology
* Check scaling setup:
sysctl net.ipv4.tcp_window_scaling
* Turned off scaling to 0 as root:
sysctl -w "net.ipv4.tcp_window_scaling=0"
* To maintain the changes after a restart, include the file S99sysctl.sh:
vi /usr/syno/etc/rc.d/S99sysctl.sh
#!/bin/sh sysctl -w "net.ipv4.tcp_window_scaling=0"
chmod +x /usr/syno/etc/rc.d/S99sysctl.sh
RELATED:
Slow connection and email attachments download to 0 kb
Configuration of operating systems
TCP Window Scaling is implemented in Windows since Windows 2000. It is enabled by default in Windows Vista / Server 2008 and newer, but can be turned off manually if required.
Linux
Linux kernels (from 2.6.8, August 2004) have enabled TCP Window Scaling by default. It chooses the good value of the option by default. The configuration parameters are found in the /proc filesystem, see pseudo-file /proc/sys/net/ipv4/tcp_window_scaling and its companions /proc/sys/net/ipv4/tcp_rmem and /proc/sys/net/ipv4/tcp_wmem
Scaling can be turned off by issuing the command sysctl -w “net.ipv4.tcp_window_scaling=0” as root. To maintain the changes after a restart, include the line “net.ipv4.tcp_window_scaling=0” in /etc/sysctl.conf.
FreeBSD, NetBSD and Mac OS X
The default setting for FreeBSD, NetBSD and Mac OS X is to have window scaling (and other features related to RFC 1323) enabled.
To verify their status, a user can check the value of the “net.inet.tcp.rfc1323” variable via the sysctl command:
sysctl net.inet.tcp.rfc1323
A value of 1 (output “net.inet.tcp.rfc1323=1”) means scaling is enabled, 0 means “disabled”. If enabled it can be turned off by issuing the command:
sudo sysctl -w net.inet.tcp.rfc1323=0
This setting is lost across a system restart, to make it permanent it must be written in the /etc/sysctl.conf configuration file, that can be accomplished via the command:
echo 'net.inet.tcp.rfc1323=0' | sudo tee -a /etc/sysctl.conf
Introduzione e comandi principali di VI
Ci sono molti editor di testo sui sistemi *nix, ma VI e’ senza dubbio il piu’ diffuso. VI sta per VIsual editor e VIM e’ una versione migliorata di VI. Puoi trovare VI in qualsiasi distribuzione Linux, su Unix e sui sistemi Mac Os X. Per questa ragione occorre impararlo. VIM e’ un editor testuale, percio’ non ci sono tutti i fronzoli tipici degli editor di testo grafici. Ad ogni modo VIM e’ un potente editor di testo. Ci sono tre modalita’ in VI:
1) modalita’ comando
2) modalita’ riga comando
3) modalita input
Per provare VI, apri una finestra di Terminale e digita ‘vi qualcosa’. Non appena si entra in VI ci si trova in modalita’ comando. Per entrare in modalita’ riga comando premi il tasto ‘:’. Per entrare in modalita’ input premi ‘i’ oppure ‘a’. Vediamo una semplice sessione di editing:
1) vi miofile (stai crendo il file miofile)
2) premi ‘a’ per entrare in modalita’ input e digita ‘questo e’ un semplice file di testo’
3) ora premi ‘:’ per entrare in modalita’ riga comando e digita ‘w!’ (con questo comando si scrive il file e si esce da VI)
Puoi spostarti dalla modalita’ input a quella comando o dalla modalita’ riga comando a quella comando premendo il tasto Esc.
Principali comandi in modalita’ comando
- w -> vai all’inizio della prossima parola
- b -> vai all’inizio della precedente parola
- e -> vai alla fine della prossima parola
- n| -> vai alla colonna ‘n’ della riga corrente
- $ -> vai alla fine della riga corrente
- ^ -> vai al primo carattere della riga corrente
- G -> vai alla fine del file
- gg -> vai all’inizio del file
- Gn -> vai alla riga ‘n’ del file
- i -> modalita’ inserimento (prima del cursore)
- a -> modalita’ inserimento (dopo il cursore)
- o -> modalita’ inserimento (sotto la riga corrente)
- x -> cancella un carattere
- nx -> cancella ‘n’ caratteri
- dd -> cancella l’intera riga
- ndd -> cancella ‘n’ righe
- yy -> copia la riga corrente
- p -> incolla la riga copiata
- Rmiastringa -> sostituisce i prossimi caratteri con la stringa ‘miastringa’
- /stringa -> trova la prossima stringa ‘stringa’
- ?stringa -> trova la stringa ‘stringa’ all’indietro
- n -> ripete la ricerca nuovamente
- u -> annulla l’ultimo comando
Principali comandi in modalita’ riga comando
- :w -> scrive il file
- :w nome_file -> scrive il file come ‘nome_file’
- :q -> esce da vi
- :wq -> scrive ed esce dal file
- :q! -> esce dal file senza salvare
- :help -> apre il file di aiuto (:q per tornare ad editare il file)
- :help argomento -> apre il file di aiuto all’argomento specificato da ‘argomento’ (:q per tornare ad editare il file)
- :rs/stringa1/stringa2/opzioni -> sostituisce stringa1 con stringa2 all’interno del range ‘r’; le opzioni possono essere: g (sostituisce tutto), c (chiede conferma prima di ongi sostituzione)
- :set number -> imposta la numerazione delle righe
Puoi imparare altri comandi (ce ne sono tantissimi) usando il comando :help. Certo, e’ anche possibile usare il comando ‘man vi’. Il miglior modo per imparare VI e’ iniziare ad usarlo.
Avvio utente modalità sicura
Selezionare Logout e poi eseguire il Login tenendo premuto il tasto shift
fino alla visualizzazione completa della scrivania.
Verranno disabilitate tutte le applicazioni inserite nell’elenco di avvio di Preferenze di Sistema/Account/Elementi login
Se una delle applicazioni in elenco creava il conflitto con il software che si stava usando per il proprio lavoro, in questo modo si dovrebbe essere in grado di portarlo a termine.
Reset PRAM and NVRAM
Reset the PRAM
Command + Option + P + R
keys while booting
Reset the NVRAM
Command + Option + O + F
while booting, and then reset-nvram and reset-all at the prompt
Riparare il Disco con l’avvio modalità Utente Singolo
Riparare il Disco con l’avvio modalità Utente Singolo
Se non si dispone del CD 1 installer per eseguire i controlli di Utility disco/Ripara disco con un boot esterno, riavviare il Mac tenendo premuti command-S
All’apparire della schermata nera, scrivere il seguente comando fsck -fy
e premere Invio
Verranno eseguiti esattamente gli stessi controlli e l’eventuale riparazione del problema di Utility disco/Ripara disco.
Per riavvaire il Mac digitare reboot
e premere Invio
OSX procedura di emergenza HD
Il software di riparazione dischi fornito di serie col sistema operativo si è dimostrato da sempre capace, nella quasi totalità dei casi, di risolvere i malfunzionamenti e i danni che colpiscono le directories dei dischi; questo fatto si rivela provvidenziale se constatiamo che i software di riparazione commerciali non sono poi numerosi per la nostra piattaforma, e alcune software houses hanno deciso di interromperne lo sviluppo.
Tuttavia anche la Utility Disco ha i suoi limiti, che possono coglierci alla sprovvista se, in occasione del danno, non abbiamo un software del genere a disposizione.
È quanto si verifica, in particolare, quando ci accorgiamo che taluni dati cominciano a scomparire dal disco, si verificano frequenti crash, e alla fine il Mac non si avvia più.
Quando ricorriamo alla Utility Disco lanciandola dal CD d’installazione, il programma ci avverte di un problema: una «overlapped extent allocation», facendo seguire l’errore da un’indicazione fra parentesi: File… seguito da un numero che termina con la lettera “d”. Ma la Utility, dopo questa sibillina indicazione, è impotente a risolvere il problema, il quale, nella fattispecie, si ripresenterebbe qualora noi decidessimo di reinstallare il sistema operativo. Infatti, la overlapped extent allocation consiste in sostanza in una errata interpretazione del sistema, che ritiene che due files stiano occupando la stessa zona del disco, i quali sono quindi supposti trovarsi sullo stesso «inode» (il numero di cui sopra che termina con la “d”), ossia la struttura che ospita la location dei blocchi dati occupati, compresi i permessi e i «flags».
A fronte di questa situazione, ci si prepara al peggio, ossia alla riformattazione del disco. Esiste però un modo per riparare manualmente questa emergenza. Per farlo, riavvieremo il Mac in modalità singola, ossia premendo la combinazione tasti “Comando-S”, che farà comparire la finestra stile-Terminale con la linea di comando. Ricorreremo allora alla solita procedura del comando
fsck -f
che sostituisce egregiamente la Utility Disco nella funzione di riparazione.
Anche in questo caso, la finestra riporta l’indicazione dell’errore: “Overlapped Extent Allocation” (File ********d)”, ma la procedura si rivela sempre incapace di riparare il disco. Noi però possiamo individuare il file in questione, ricorrendo al comando:
find / -inum ****** -print
laddove al posto degli asterischi, lo si sarà capito, dovremo ricopiare il numero riportato nell’indicazione dell’errore, ma senza farlo seguire dalla d finale (che può eventualmente essere seguita da altre lettere, sempre da escludere).
L’esecuzione del comando ci restituirà il nome del file responsabile, compreso di percorso. Il normale funzionamento del disco potrà quindi essere ripristinato semplicemente eliminando il file in questione, proseguendo nella procedura di avvio. Teniamo presente che, poichè ci siamo avviati in modalità singola, occorre dapprima montare il disco, tramite il comando:
mount -uw /
seguito magari da quello
sync
per liberarsi della cache di scrittura di avvio. Se non ci sentiamo ad agio con questi comandi, possiamo sempre digitare
reboot
e riavviare normalmente per poi eliminare il file, del cui nome e percorso avremo preso nota.
Non rimane che un’ultima avvertenza, specie per i meno esperti: potrebbe darsi che il file in questione, anzichè essere uno qualunque, si appalesi essere invece un file «critico», ossia indispensabile al sistema, cosa di cui magari non si è consapevoli, perchè è situato in una delle directories peraltro normalmente non visibili, come “/etc”, “/var”, “/usr/”.
In questo caso è chiaro che dovremo reinstallare allora il sistema operativo, ma sussiste sempre la necessità di eliminare il file critico, poichè la famigerata overlapped extent allocation rimarrebbe sempre presente sul disco.
Ma se non altro ci saremo risparmiata la riformattazione del disco rigido…
SMTP errors
SMTP
(Simple Mail Transfer Protocol)
Il protocollo SMTP, descritto nella RFC 821, è un protocollo ad alto livello, e quindi molto semplice, per la gestione della posta elettronica. Si intrappone tra l’utente e il server di posta e il suo funzionamento è alla base di tutte le e-mail che viaggiano nella rete, essendo un metodo standard, tutti i client di posta più diffusi lo utilizzano.
Questo protocollo è formato da semplici comandi che rappresentano un vero e proprio colloquio tra l’utente (o il client di posta per lui) e il server di posta (normalmente in ascolto sulla porta 25), vediamoli
in dettaglio :
HELO dominio.it – (Hello) E’ la presentazione al server al quale ci stiamo
collegando, dominio.it è il nome del nostro server;
feedback | |
250 dominio.it | Il server di posta risponde con un ok e il nome del nostro server |
421 dominio.it Service not available, closing transmission channel | Errore – Il servizio non è disponibile |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Failure reply | Errore – Errore di connessione |
504 Command parameter not implemented | Errore – Parametro del comando non implementato |
MAIL FROM:<mittente@server.it> – (Mail) Questo
comando indica al server di posta che siamo intenzionati a spedire un messaggio,
il campo mittente@server.it è l’indirizzo di posta di chi stà
inviando il messaggio;
feedback | |
250 OK | Il mittente è stato accettato |
421 dominio.it Service not available, closing transmission channel | Errore – Servizio non disponibile, viene interrotta la connessione |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
RCPT TO:<destinatario@server.it> – (Recipient)
Indica al server che vogliamo spedire il messaggio all’indirizzo destinatario@server.it,
questo campo può essere ripetuto più volte qualora il messaggio
debba essere inviato a più destinatari;
feedback | |
250 OK | Il destinatario esiste ed è stato accettato |
251 User not local; will forward to <forward@server.it> | Il destinatario non è presente, ma siccome è conosciuto l’email verrà inoltrata al indirizzo forward@server.it, serve ad avvisare il mittente che la prossima volta può utilizzare il nuovo indirizzo |
421 dominio.it Service not available, closing transmission channel | Errore – Il servizio non è disponibile |
450 Requested mail action not taken: mailbox unavailable | Errore – La casella richiesta è al momento non disponibile |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
503 Bad sequence of commands | Errore – Errore nella sequenza dei comandi |
550 Failure reply | Il destinatario non è presente nel server e quindi il messaggio non può essere inviato |
551 User not local; please try <forward@server.it> | Il destinatario non è presente, l’indirizzo dove può essere trovato e forward@server.it, ma l’email non verrà inoltrata, dovrà essere cura del mittente inviarla al nuovo indirizzo |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
553 Requested action not taken: mailbox name not allowed | Errore – Il nome fornito non è permesso |
DATA – (Data) Con questo comando diciamo al server che tutto ciò
che verrà scritto in seguito sarà il corpo dell’e-mail, cioè
il messaggio vero e proprio, per terminare il blocco di testo da inviare,
è necessario inserire <CRLF>.<CRLF> (un invio, un punto
e un altro invio);
feedback | |
250 OK | Il messaggio è stato recepito correttamente (al termine del invio del messaggio dopo il <CRLF>.<CRLF> |
354 Intermediate reply | Dopo aver inserito il comando data, il server indica con questo messaggio che è in attesa del corpo del messaggio. |
421 dominio.it Service not available, closing transmission channel | Errore – Il servizio non è disponibile |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
503 Bad sequence of commands | Errore – Errore nella sequenza dei comandi |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
554 Transaction failed | Errore – Fallimento |
VRFY Nome – (Verify) Verifica se il nome inserito
è presente nel server a cui è stata formulata la richiesta,
in caso affermativo viene fornita l’e-mail;
feedback | |
250 Nome Cognome <email@server.it> | Al nome richiesto corrisponde l’indirizzo email@server.it |
251 User not local; will forward to <email@server.it> | Il nome esiste, ma è in un altro server con l’indirizzo email@server.it |
421 dominio.it Service not available, closing transmission channel | Errore – Il servizio non è disponibile |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
504 Command parameter not implemented | Errore – Parametro del comando non implementato |
550 String does not match anything | Il nome richiesto non è presente in questo server |
551 User not local; please try <email@server.it> | Il nome esiste, ma è in un altro server con l’indirizzo email@server.it |
553 User ambiguous | Esistono più utenti simili al nome fornito |
EXPN Gruppo – (Expand) Chiede che vengano elencati
tutti gli appartenenti al gruppo richiesto, se il gruppo esiste vengono forniti
i nomi e i relativi indirizzi e-mail;
feedback | |
250 Nome1 Cognome1 <email1@server.it> 250 Nome2 Cognome2 <email2@server.it> | Elenco dei componenti del gruppo richiesto con relative e-mail |
421 dominio.it Service not available, closing transmission channel | Errore – Il servizio non è disponibile |
550 Access Denied to You | Non si ha il permesso di visualizzare i componenti del gruppo richiesto |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
504 Command parameter not implemented | Errore – Parametro del comando non implementato |
SEND FROM:<mittente@server.it> – (Send) Indica che vogliamo mandare un messaggio che dovrà
essere inoltrato solo se l’utente con email specificata è attivo in quel
momento e accetta messaggi terminale, utilizzato quindi come una rudimentale
chat;
feedback | |
250 OK | Il comando è stato accettato |
421 dominio.it Service not available, closing transmission channel | Errore – Servizio non disponibile, viene interrotta la connessione |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
SOML
FROM:<mittente@server.it> – (Send or Mail) E’
simile al comando Send, solo che in questo caso qualora l’utente non fosse attivo,
il messaggio verrebbe postato come una normale mail;
feedback | |
250 OK | Il comando è stato accettato |
421 dominio.it Service not available, closing transmission channel | Errore – Servizio non disponibile, viene interrotta la connessione |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
SAML FROM:<mittente@server.it> – (Send and Mail) Invia il messaggio all’utente attivo, in ogni caso
viene anche postato il messaggio come una normale mail;
feedback | |
250 OK | Il comando è stato accettato |
421 dominio.it Service not available, closing transmission channel | Errore – Servizio non disponibile, viene interrotta la connessione |
451 Requested action aborted: error in processing | Errore – Errore nel processo |
452 Requested action not taken: insufficient system storage | Errore – La richiesta non può essere esaudita per spazio di archiviazione insufficiente |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
552 Requested mail action aborted: exceeded storage allocation | Errore – Superato il limite di spazio di archiviazione disponibile |
RSET – (Reset) Cancella i comandi precedentemente inviati ritornando allo stato di semplice collegamento;
feedback | |
250 Nome1 Cognome1 <email1@server.it> 250 Nome2 Cognome2 <email2@server.it> | Elenco dei componenti del gruppo richiesto con relative e-mail |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
504 Command parameter not implemented | Errore – Parametro del comando non implementato |
550 Access Denied to You | Non si ha il permesso di visualizzare i componenti del gruppo richiesto |
HELP [Command] – (Help) Senza nessun comando visualizza
la lista dei comandi, con il comando ne spiega la funzione e l’utilizzo;
feedback | |
211 System status, or system help reply | Informazioni sul comando richiesto |
214 Help message | Informazioni sui comandi |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
501 Syntax error in parameters or arguments | Errore – Errore di sintassi o nei parametri |
502 Command not implemented | Errore – Comando non implementato |
504 Command parameter not implemented | Errore – Parametro del comando non implementato |
NOOP – (No Operation) Mantiene la connessione attiva,
non eseguendo però alcuna operazione;
feedback | |
250 OK | Messaggio accettato |
421 dominio.it Service not available, closing transmission channel | Errore – Servizio non disponibile, viene interrotta la connessione |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
TURN – (Turn) Questo comando inverte le parti tra client
e server, se il client invierà tale comando diventerà server e
il server client, se il server invierà tale comando diventerà
client e il client server, può essere rifiutato;
feedback | |
250 OK | Comando accettato |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
502 NO | Comando non accettato |
503 Bad sequence of commands | Errore – Errore nella sequenza dei comandi |
QUIT – Termina la connessione attiva con il
server.
feedback | |
221 dominio.it Service closing transmission channel | Conferma la chiusura |
500 Syntax error, command unrecognized | Errore – Il comando è sconosciuto |
Elencati i comandi vediamo un semplice dialogo per l’invio di una mail:
Server: | 220 server.it Simple Mail Transfer Service Ready |
Client: | HELO client.it |
Server: | 250 server.it |
Client: | MAIL FROM:<mail@client.it> |
Server: | 250 OK |
Client: | RCPT TO:<mail@server.it> |
Server: | 250 OK |
Client: | RCPT TO:<nomail@server.it> |
Server: | 550 No such user here |
Client: | DATA |
Server: | 354 Start mail input; end with <CRLF>.<CRLF> |
Client: | Corpo del messaggio |
Client: | . |
Server: | 250 OK |
Client: | QUIT |
Server: | 221 server.it Service closing transmission channel |
In questo modo è stato mandato il messaggio “Corpo del messaggio”
dal mittente mail@client.it ai destinatari mail@server.it e nomail@server.it,
ma il secondo destinatario è sconosciuto dal sistema, quindi verrà
inoltrato solo al primo.
Nel corpo del messaggio è possibile mettere del testo
formattato in HTML o dei campi particolari quali Subject: o To: che spesso i
client capiscono ed interpretano visualizzandoli poi in appositi campi all’utente.
TCP/IP ports
Porte di connessione
Elenco completo delle porte utilizzate dal protocollo TCP [RFC793] e, dove possibile,
dal protocollo UDP [RFC768] ricordandovi in base alle disposizioni dello IANA che:
le porte ufficialmente riconosciute sono quelle che vanno da 0 a 1023
le porte registrate sono quelle che vanno da 1024 a 49151
le porte dinamiche e/o private sono quelle che vanno da 49152 a 65535