Server Linux per Mac e Windows

Ciao a tutti, eccomi di nuovo qui con un nuovo tutorial, questa volta, orientato sul mondo linux.

In questo tutorial vi spiegherò come costruire un Server domestico Linux compatibile sia con Mac che con Windows. In particolare, per Mac, farò vedere anche come utilizzare il server linux come disco per i backup della Time Machine.

Innanzitutto bisogna procurarsi un PC (anche vecchio va bene) con almeno 1 GB di RAM oppure un raspberry pi 2 o 3, un hard disk, un OS linux (Ubuntu, Debian, ecc…) e un po di pazienza 🙂 …

PC

Qui in basso elenco i requisiti minimi hardware che deve avere il PC secondo il mio consiglio:

  • CPU dual core da almeno 1GHz
  • 2GB di RAM

Nel mio caso ho utilizzato un pc dual-core con 4GB di RAM.

HARD DISK

L’Hard disk può essere di ogni tipo, forma e dimensione (anche una Pen drive può andare bene). Per un server sconsiglio l’utilizzo di SSD anche perché la velocità di trasferimento dei file dipende dalla rete locale (in casa mia non supero i 100Mbps) e dalla CPU. Se utilizzate CPU quad-core da 2GHz, 4GB di RAM e rete LAN da 1Gbps allora si che un SSD andrà come un fulmine.

Nel mio server ho utilizzato un Hard disk da 1TB 3.5 WD Caviar Blue.

Nel caso in cui state utilizzando un raspberry e volete sfruttare hard disk portatili da 2.5 o hard disk da 3.5 vi servirà una docking station alimentata.

OS LINUX

Come sistema operativo potete utilizzare qualsiasi distribuzione linux. Consiglio UBUNTU o KUBUNTU per PC e RASPBIAN per Raspberry.

Io ho installato KUBUNTU, molto leggero come sistema e perfetto per un server domestico.

Per evitare di installare linux sullo stesso hard disk che andrà condiviso oppure su una sua partizione ho preferito installarlo su una Pen Drive da 16GB, in modo d’avere l’OS linux su Pen drive e l’hard disk da 1TB SOLO come disco condiviso.

“Giuseppe come mai hai fatto questo?”… Il motivo principale è quello di avere la possibilità di mandare in standby l’hard disk da 1TB quando non verrà utilizzato. Ma voi potete benissimo installare linux su hard disk oppure su una sua partizione.

Dopo aver assemblato il PC, montato l’hard disk, installato correttamente l’OS e collegato il tutto alla vostra rete tramite cavo Ethernet, passiamo alla configurazione del server.

Il primo passo da fare è quello di aggiornare i pacchetti installati, quindi aprite il terminale e digitate:

sudo apt-get update 
sudo apt-get upgrade

Dopo gli aggiornamenti eseguite:

lsblk -o KNAME,TYPE,SIZE,MODEL

Vi comparirà l’elenco degli hard disk (o altre memorie). Nel mio caso esce fuori questo:

KNAME TYPE   SIZE MODEL

sda   disk 931,5G

sdb   disk  14,9G Cruzer Edge

sdb1  part   512M

sdb2  part  14,4G

Sda è il nome mio disco da 1TB (Senza nessuna partizione). Quindi nel mio caso da terminale digiterò:

mkfs.ext4 /dev/sda

in modo da creare una partizione e formattarla con File System ext4.

Dopo la formattazione, avviate di nuovo il comando:

lsblk -o KNAME,TYPE,SIZE,MODEL

Dovreste vedere una nuova partizione. Nel mio caso sda1.

KNAME TYPE   SIZE MODEL

sda   disk 931,5G

sda1  part 931,5G

sdb   disk  14,9G Cruzer Edge

sdb1  part   512M

sdb2  part  14,4G

Una cosa che consiglio è quella di impostare un IP statico al vostro server linux. Per farlo bisognerà digitare da terminale:

sudo nano /etc/network/interfaces

e scrivere nel file:

auto lo
iface lo inet loopback

iface eth0 inet static
        address ip_del_server
        netmask 255.255.255.0
        gateway ip_del_router

Poi premere CTRL+O per salvare e CTRL+X per uscire dal file.

NB. Se nel file vedete la riga “iface eth0 inet dhcp” commentatela con un # davanti oppure cancellatela proprio.

A questo punto dovrete prima di tutto creare la cartella da condividere, io l’ho chiamata TimeMachine:

sudo mkdir /mnt/TimeMachine

Dategli i permessi 777:

sudo chmod 777 /mnt/TimeMachine

MAC OS

Ora bisognerà installare netatalk per utilizzare il server con Mac OS. Se non avete un Mac saltate questi passaggi e andare al paragrafo WINDOWS.

Aprite il terminale e digitate:

sudo apt-get install netatalk

Ora avviate il comando (ricordate di sostituire sda1 con il nome del vostro hard disk):

sudo echo "/dev/sda1 /mnt/TimeMachine auto defaults 0 2" >> /etc/fstab/
sudo mount /dev/sda1

Dopodiché:

sudo echo "/mnt/TimeMachine \"Time Machine\" options:tm" >> /etc/netatalk/AppleVolumes.default

ed infine:

sudo service netatalk restart

per riavviare netatalk.

Come ultimo passaggio, per il momento, Riavviate il server.

sudo reboot

Passate al Mac ed andate su Preferenze di Sistema e poi su Time Machine dovreste vedere l’hard disk condiviso e disponibile per il backup della Time Machine.

Inoltre andando sul Finder, a sinistra nella categoria Condivisi, dovreste vedere il vostro server. Cliccandoci sopra potrete entrare nella cartella “Time Machine”, creata precedentemente, e utilizzarla a vostro piacimento. Per esempio, io all’interno della cartella “Time Machine” ho creato ulteriori cartelle (Musica, Immagini, Video ecc…) in modo da fare il backup dei miei dati.

Per il Mac è tutto. Ora passiamo a Windows.

WINDOWS

Per far visualizzare la cartella condivisa “TimeMachina”  a Windows, bisognerà installare samba.

Per installarlo andate sul terminale e digitate:

sudo apt-get install samba

Samba utilizza un solo file di configurazione chiamato smb.conf contenuto nella directory /etc/samba. Per sicurezza consiglio di salvare una copia di backup di questo file, con il comando:

sudo cp -p /etc/samba/smb.conf /etc/samba/smb.conf.orig

Per Windows potete decidere di creare una nuova cartella di condivisione a parte, ma io consiglio di utilizzare la stessa sia con Mac che con Windows. Nel mio server ho creare una nuova cartella in “TimeMachine” chiamandola “Media” e all’interno ho creato ulteriori cartelle (Musica, Immagini, Video ecc…).

Per creare la cartella “Media” all’interno della cartella “TimeMachine” dovrete inviare il comando:

sudo mkdir /mnt/TimeMachine/Media

e poi dargli i permessi 777 con:

sudo chmod 777 /mnt/TimeMachine/Media

Ora passiamo alla configurazione di samba.

Il prossimo comando da eseguire è:

sudo nano /etc/samba/smb.conf

Si aprirà il file di configurazione di samba.

Scendete in fondo fino a trovare [printers]. Prima di [printers] copiate questo:

[Server]
        path = /mnt/TimeMachine/Media
        available = yes
        browsable = yes
        public = yes
        writable = yes
        create mask = 0777
        directory mask = 0777

Poi premere CTRL+O per salvare e CTRL+X per uscire dal file.

In questo modo avrete detto a samba che la cartella “Media” dovrà essere visibile a tutti i PC nella rete locale e che chiunque potrà accedere, scrivere e leggere. Inoltre con [Server] si assegna alla cartella Media l’alias Server.

Ora riavviate il server:

sudo reboot

Su un PC Windows andando su Rete dovreste vedere il vostro server e la cartella “Server” (la cartella Server non è altro che la cartella Media ma con alias Server). Come vedete dall’immagine, ho creato anche delle cartelle all’interno.

Se volete creare cartelle all’interno così come ho fatto io, ricordate di dargli sempre i permessi 777 con il comando:

sudo chmod 777 /mnt/TimeMachine/Media/<nome_cartella>

THE END

Spero di esservi stato d’aiuto con questo tutorial. Per qualsiasi cosa non esitate a lasciare un commento.

Buon Server a tutti 😀