Tag Archives: SSH

Passare da Aruba a Bluehost (in 1 semplice mossa)

da server a serverCi sono dei nomi che ci fanno rizzare i capelli solo leggendoli e sentendoli pronunciare. Nel mio caso, si tratta di un’azienda, che mi ha fatto perdere letteralmente il lume della ragione. Aruba! Quando sento il nome Aruba mi vengono subito i brividi! Sto parlando di quel servizio di “hosting” (se così vogliamo chiamarlo!) che inizialmente proponeva domini e hosting linux o windows a prezzi stracciati, e magari, 6-7 anni fa, i servizi che offriva erano pure buoni. Oggi su Aruba si trovano solo “servizi” alla deriva, a prezzi anche esorbitanti per ciò che offrono, per niente giustificati, che faranno imprecare non poco il malcapitato che purtroppo avrà sottoscritto un piano di hosting con loro.

Circa 7 anni fa, feci il malsano errore di sottoscrivere un hosting linux+dominio con loro. I primi anni mi trovai bene, il blog che ospitavo era sempre online e non avevo particolari problemi, tranne per il fatto che Aruba era l’unico hosting sul quale wordpress ogni tanto dava problemi. Gli aggiornamenti automatici? Impossibili da eseguire se non si modificava prima qualche permesso a qualche file o cartella sull’FTP. Vabbè, problemi di poco conto rispetto a quelli di cui sto per parlarvi.

In sostanza, dopo circa 5 anni, decido di cambiare hosting perché inizia a starmi stretto. I motivi sono tanti, e tutti di notevole importanza. Li elenco per punti:

– Il ridicolo spazio per il database che ti forniscono (100MB, a 7€ l’anno solo per avere il database MySQL). Avevo superato tale soglia e pagavo un’enormità!

– I disservizi continuavano ad aumentare. Un giorno la sala server andò a fuoco, e rimasi un intero giorno offline. Un’altra volta l’orario del server che ospitava il mio sito web cambiò, impedendo così a me e agli altri autori di programmare la pubblicazione degli articoli per oltre 3 settimane.

– Se volevo ospitare un altro dominio sul mio server, dovevo pagare anche un nuovo piano di hosting!

– L’assistenza è indecente! Ai centralini occorrono ore di attesa prima che risponda qualcuno, e il sistema per avere assistenza online funziona solo tramite ticket, il che significa che rispondono quando meglio gli aggrada. Se io faccio la richiesta oggi, è possibile che passino anche 1-2 giorni prima di una risposta. Qualche ora dopo se vi va bene!

– Non esiste un pannello (c-panel o simil) che permetta di amministrare come dio comanda il proprio spazio. L’unico accesso consentito è l’FTP. Niente SSH, nulla di nulla. Niente shell. Non si ha il controllo che sarebbe auspicabile avere.

Ebbene, i problemi più grossi arrivano durante il trasferimento del sito web! In 5 anni ho accumulato circa 20GB di dati sul server, ma Aruba (mortacci loro!) non offrono alcun sistema per il trasferimento/backup di tutto il contenuto del server. Contatto l’assistenza e dopo giorni e giorni di discussione con loro (sempre via ticket), si arriva alla conclusione che l’unico modo è farlo via FTP. Cioè spostare tutto il contenuto prima sul mio PC e successivamente caricare il tutto (20GB!) sul nuovo server, questo ovviamente senza effettuare durante le operazioni di spostamento nessun aggiornamento al sito.

All’epoca (due anni fa) quando tentai l’operazione non ce la feci, era assolutamente impossibile cercare di spostare tutto il contenuto con una semplice ADSL 7MB di Telecom Italia. Rinunciai e rimandai di anno in anno, fino a qualche giorno fa.

Il rinnovo dell’hosting si avvicinava nuovamente alla scadenza, e non volevo rinnovare il tutto per il secondo anno consecutivo, mentre loro continuavano a non garantirmi nulla e a non fornirmi alcun servizio di mia utilità. Persino le email che ormai tutti gli hosting forniscono gratuitamente (o quasi), loro se le facevano pagare care e amare.

Decido così di tentare a trasferire (per la 2° o 3° volta) tutto il contenuto del server, da Aruba a Bluehost, hosting che utilizzo con soddisfazione fin dal loro esordio sul mercato.

indiana jones change server

Contatto nuovamente l’assistenza Aruba, e per mia fortuna sembra essere cambiato qualcosa! No, non sono diventati più veloci, semplicemente adesso possono fornirti nel tuo spazio FTP un file backup-spazio.tgz con tutto il contenuto del server. QUALCUNO (DIO?) SIA LODATO!

Rimane un problema. Il file compresso, pesa comunque la bellezza di 6,95GB. Come lo trasferisco? Via FTP o FXP è impensabile, impiegherei dei giorni. L’unica soluzione, è utilizzare la shell SSH dell’ottimo Bluehost, e iniziare a smanettarci!

Ho passato dei giorni a cercare di copiare il file, in quanto Aruba mi chiudeva sempre la connessione. Alla fine, siccome non c’era speranza di copiarlo in una sola volta senza che il server mi buttasse fuori, ho trovato il modo.

La procedura è abbastanza semplice.

Anzitutto connettetevi in SSH al vostro account Bluehost.

Fatto ciò, spostatevi nella path all’interno del vostro server Bluehost dove volete che venga posizionato il file. Utilizzate “cd” (change directory).

Quindi utilizzate questo semplice comando:

wget -c –ftp-user=mio_username –ftp-password=mia_password ftp://ftp.miodominio.com/cartella/backup_spazio.tgz

Spiego brevemente l’intero comando.

wget è un comando molto potente di SSH che vi permette di scaricare un file all’interno dello path che avete impostato precedentemente.

-c indica di continuare a scaricare il file da dove aveva terminato l’ultima volta. Esempio: se avete un file da 1000bit e la connessione è caduta al bit 500, invocando nuovamente il comando il file tornerà ad essere scaricato partendo dal bit 501. Nel mio caso, siccome pesa molti GB il file e il server mi buttava continuamente fuori ogni GB scaricato, ho invocato l’intero comando sopra riportato circa 6 volte, fino al completamento del file.

–ftp-user=mio_username lo utilizzo per impostare i dati di login al server ftp, in questo caso l’username.

–ftp-password=mia_password come sopra, ma per la password.

infine passo l’indirizzo ftp del mio server comprensivo della directory dove si trova il file da scaricare.

Alla fine dell’operazione vi troverete sul server bluehost il file .tgz.

Come scompattare il suo contenuto?

Posizionatevi nella direcotory del file da scompattare, quindi digitate

-tar -zxvf backup_spazio.tgz

ce l'ho fatta

 

Il mio “piccolo” sfogo-guida termina qui. Se ti è stato utile o ti ha fatto piacere leggerlo, fammelo sapere in un commento.

Comandi UNIX per l’Amministratore di Sistema

Questa è un listato dei principali comandi per sistemi Unix. E’ suddiviso in Comandi su File e Directory, Filesystem, Gestione dei Processi, Permessi dei File e Proprietari, SSH, Ricerca, Rete, Compressione, Informazioni di Sistema, Stampa, Scorciatoie, Agire da SuperUser, Spegnimento e Riavvio del Sistema.

Penso possa essere una buona panoramica per addentrarsi in modo abbastanza avanzato all’amministrazione di sistema.

Comandi su File e Directory:

ls – elenca il contenuto della directory corrente

ls -R – elenca ricorsivamente il contenuto di tutte le sotto-directory

ls -al – elenco formattato con file nascosti del contenuto della directory corrente

cd – cambia la directory di lavoro con la home directory

cd dir – cambia la directory di lavoro con la directory “dir”

pwd – mostra qual’è la directory corrente

mkdir dir – crea la directory dir nella directory corrente

rm file – cancella il file “file”

rm -r dir – cancella la directory “dir”

rm -f file – forza la cancellazione del file

rm -rf dir – forza la cancellazione della directory

cp file1 file2 – copia da file1 a file2

cp -r dir1 dir2 – copia dir1 a dir2; crea dir2 se la directory non esiste

mv file1 file2 – rinomina o sposta file1 in file2. Se file2 è una directory esistente, sposta file1 in file2

cmp file1 file2 – confronta due file e mostra dove avvengono le differenze (file di testo o file binari)

ln -s file link – crea un collegamento simbolico (link/alias) al file

touch file – permeate di imposture la data e ora di ultima modifica o accesso al file

cat file.txt – visualizza sullo standard output il contenuto del file.txt

cat file1.txt file2.txt – concatena file1 e file2 e mostra il risultato sullo standard output

cat file1.txt file2.txt > risultato.txt – concatena file1 e file2 e scrive il risultato nel file risultato.txt

cat > file.txt – ridireziona lo standard input in file.txt

file nome_file – determina il tipo di file esaminandone il contenuto

more file – mostra a video il contenuto del file

head file – mostra le prime 10 linee di file

tail file – mostra le ultime 10 linee di file

tail -f file – mostra il contenuto di file mentre viene aggiornato iniziando dalle ultime 10 linee

grep stringa file – cerca tutte le occorrenze di stringa all’interno di file

grep -r stringa directory – cerca tutte le occorrenze di stringa all’interno della directory

find file – visualizza tutta la path del file

find directory – discende tutto l’albero delle directory in esso contenute

– ridireziona l’output.  Es: cat file1 file2 > file3 – concatena file1 e file2 e ridirige l’output su file3

>>  – appende l’output

<  – ridireziona l’input.  Es: programma < file – prende l’input per il programma da file

– lo standard output di un comando viene convogliato dentro lo standard input di un altro comando

pr file.txt – visualizza a video uno o più file

open file – lancia un file o un programma

Filesystem:

fsck fylesystem – effettua il controllo della coerenza dei dati presenti in un filesystem (es. /dev/sda3) e in caso li recupera

fdisk – permette di operare sui dischi: formattazione, l’inializzazione dell’MBR, e molto altro (da usare con cautela)

df – mostra informazioni sui dischi

du – mostra informazioni sull’utilizzo dello spazio disco

Gestione dei Processi:

ps – mostra i processi attivi

top – mostra in modo interattivo (aggiornando) tutti i processi attivi

kill pid – uccide il processo con id pid (visualizzabile utilizzando il comando top)

killall proc – uccide tutti i processi con nome proc (utilizzare con cautela questo comando)

ps ax | grep processo – per conoscere l’id di un processo esistente (PID)

nice -n valore istruzione/processo_da_lanciare – aumenta o diminuisce lo scheduling di un processo o di una istruzione in base a valore

renice valore PID_processo – riassegna la priorità di un processo di cui si conosce il PID secondo il valore inserito

Permessi dei file e proprietari:

chmod octal file – cambia i permessi dei file a octal, numero di 3 cifre, rispettivamente per l’utente, il gruppo e tutti gli altri. Somme di. 4 – lettura r, 2 – scrittura w, 1- esecuzione o visita x.

chmod 777 – lettura, scrittura ed esecuzione per tutti

chmod 755 – rwx per il proprietario, rx per il gruppo  e tutti gli altri

chown -R user file – imposta l’utente “user” come nuovo proprietario di file

chown user:group file – imposta l’utente “user” come proprietario del file e gli assegna il gruppo “group”

chgrp group file – assegna il gruppo “group” al file

umask permesso_ottale – permette di suggerire ai programma avviati successivamente quali permessi negare al momento della creazione

SSH:

ssh user@host – connessione a host come user

ssh -p port user@host – connessione a host sulla porta port come user

ssh -copy -id user@host – aggiunge la propria chive ad host per l’utente user per permettere un accesso pre-autenticato o senza password

Ricerca:

grep pattern files – cerca pattern in files

grep -r pattern dir – cerca ricorsivamente pattern in dir

locate file – trova tutte le occorrenze di quel file

Rete:

ping host – effettua un ping di host e mostra il risultato

whois domain – recupera le informazioni whois riguardo domain

dig domain – recupera le informazioni DNS per il dominio domain

dig -x host – effettua un reverse lookup di host

wget file – scarica il file dalla rete

wget -c file – prosegue un download interrotto

ftp host – trasferisce file utilizzando il protocollo di trasferimento FFTP

ifconfig – configura un’interfaccia di rete

route – permette di vedere e modificare la tabella di routing

route add -net 192.168.101.0 netmask 255.255.255.0 gw 192.168.101.102 – aggiunge la route, la maschera di rete e il gateway

route add default gw 192.168.12.1 – aggiunge questo host come gateway di default

more /etc/hosts – permette di visionare il database riguardo gli Hosts

netstat – mostra lo stato del network

tcpdump – permette di intercettare pacchetti e trasmissioni, utilizzato comunemente per il debugging

Compressione:

tar cf file.tar files – crea un archivio tar con nome file.tar contenente files

tar xf file.tar – estrai il contenuto dell’archivio file.tar

tar czf file.tar.gz files – crea un archivio tar compresso con Gzip

tar xzf file.tar.gz – estrai un archivio tar decomprimendolo prima con Gzip

tar cjf file.tar.bz2 – crea un archivio tar compresso con Bzip2

tar xjf file.tar.bz2 – estrai un archivio tar decomprimendolo prima con Bzip2

gzip file – comprime file e lo rinomina in file.gz

gzip -d file.gz – decomprime file.gz in file

Informazioni di Sistema:

date – mostra la data e l’ora correnti

cal – mostra il calendario del mese corrente

uptime – mostra da quanto tempo la macchina è in funzione

w – mostra gli utenti collegati

hostname – mostra o setta (solamente per il super-user) il nome della macchina attuale

whoami – mostra l’utente con cui si è collegati

finger user – visualizza informazioni su user

uname -a – mostra le informazioni sul kernel

locate nome_programma – localizza il programma e tutte le path che lo contengono

dmesg – mostra sullo standard output i messaggi contenuti nel buffer del kernel del SO

lspci  – elenca le periferiche e i bus PCI

lsusb – mostra informazioni sui bus USB del sistema e i dispositivi ad essi collegati

lscpu – mostra i dettagli riguardo la CPU del proprio sistema

whatis comando – descrive la funzione di un comando unix

Stampa:

cancel – cancella richieste di stampa

lp – invia una richiesta alla stampante

lpq – mostra la coda dei lavori da stampare

lpr – invia un lavoro alla stampante

lprm – toglie un lavoro dalla coda di stampa

pr – prepara i file per la stampa

Scorciatoie:

Ctrl+C – interrompe il comando corrente

Ctrl+D – esci dalla sessione, simile ad exit

Ctrl+W – cancella una parola nella linea corrente

Ctrl+U – cancella l’intera linea

Tab – completamento automatico dei comandi quando si inizia a digitare

!! – ripete l’ultimo comando

alias new_comando=”comando” – associa una nuova parola (new_comando) per richiamare comando

unalias new_comando – dissocia new_comando dall’alias precedentemente creato

exit – esce dalla sessione corrente

clear – pulisce l’intera shell

Agire da SuperUser:

su – dopo essere stato richiamato, tutti i comandi che invierete saranno visti come utente di root

sudo comando – esegue il comando con l’identità dell’utente root

passwd – modica le informazioni sulla password di sistema

Spegnimento e Riavvio del sistema:

shutdown -l +minuti – disconnette l’utente corrente dopo tot minuti

shutdown -s +minuti – spegne il computer dopo tot minuti

shutdown -r +minuti – riavvia il computer dopo tot minuti

shutdown -h time – il computer si spegne all’orario prestabilito