Σε αυτόν τον οδηγό θα προσπαθήσω να σας δώσω βασικές πληροφορίες και οδηγίες για να εγκαταστήσετε ένα raspberry pi στην τηλεόραση σας, και παράλληλα να το χρησιμοποιήσετε για home server.
Στόχος μας με αυτόν τον σέρβερ είναι να μπορείτε να έχετε:
- Μόνιμα ανοιχτό torrent client πλήρως αυτοματοποιημένο, και διαχειρίσιμο απο το κινητό σας
- Kodi media player ώστε να βλέπετε άμεσα τις ταινίες σας
- Ενα κοινόχρηστο φάκελο δικτύου (SAMBA Windows share) ώστε να μπορείτε να κρατάτε αντίγραφα ασφαλείας των αρχείων του H/Y σας
- Ασφαλή πρόσβαση απο τον έξω κόσμο ωστε να μπορείτε να βλέπετε και να τα διαχειρίζεστε όλα από μακρυά μέσω SSH.
Η εγκατάσταση και ρύθμιση του εκάστοτε λογισμικού θα καλυφθεί αναλυτικά , άλλα προϋπόθεση είναι η βασικές γνώσεις linux. Η εγκατάσταση μας βασίζεται στο debian server roll για Raspberry Pi, το Raspbian stretch Lite Η υλοποίηση γίνεται πάνω σε ένα Raspberry PI 3b με εγκατάσταση λογισμικού σε SD Card και εξωτερικό σκληρό δίσκο χωρητικότητας 1tb για χώρο αποθήκευσης.Για τον εξωτερικό σκληρό δίσκο ,προτιμάμε φορμάτ NTFS αφού το Λίνουξ προσφέρει πλήρη υποστήριξη για το συγκεκριμένο σύστημα αρχείων και είναι πολύ εύκολο σε περίπτωση προβλήματος να χρησιμοποιήσουμε τον εξωτερικό σκληρό σε οποιοδήποτε υπολογιστή για να πάρουμε αρχεία.
Ο παρόν οδηγός θα χωριστεί στα εξής κομμάτια :
- Εγκατάσταση και ρύθμιση Rasbian Stretch Lite / SSH Server
- Εγκατάσταση και ρύθμιση Kodi (Βασικά addons / προτεινόμενες ρυθμίσεις)
- Εγκατάσταση Samba server δημιουργία κοινόχρηστου φακέλου
- Εγκατάσταση torrent client / automation scripts ( Transmission – couch potato)
ΣΗΜΕΙΩΣΗ: Κατα τις οδηγίες του παρακάτω οδηγού θα χρειαστεί να επεξεργαστούμε διάφορα αρχεία συστήματος. Για αυτή την δουλειά χρησιμοποιώ το πρόγραμμα nano. Για να ανοίξουμε ενα αρχείο προς επεξεργασία στο nano το κάνουμε με την εντολή” nano onoma_arxeioy.kataliksi ” , για να σώσουμε ενα αρχείο που επεξεργαστήκαμε πατάμε Alt+O και για να βγούμε απο το nano , πατάμε τον συνδυασμό Alt+X.
Μερος 1ο : Εγκατάσταση και ρύθμιση raspbian
Η εγκατάσταση του Raspbian στο RaspberryPI καλύπτεται εκτενώς σε απειρους οδηγούς online, γιαυτό θα αναφέρω περιληπτικά τα βήματα εγκατάστασης και θα προχωρήσουμε στην ρύθμιση του συστήματος.
Βήματα εγκατάστασης debian stretch στο raspberry pi:
- Κατεβάζουμε την τελευταία έκδοση Raspbian stretch Lite
- Κατεβάζουμε και εγκαθιστούμε το Etcher
- Τοποθετούμε την Micro-SD κάρτα μας στον υπολογιστή
- Χρησιμοποιούμε το Etcher για να γράψουμε το τελευταίο Image αρχείο που κατεβάσαμε στην MicroSD κάρτα μας
Μετά το τέλος της διαδικασίας Βγάζουμε την κάρτα SD από τον υπολογιστή και την τοποθετούμε στο Raspberry pi. Για την αρχική εγκατάσταση θα χρειαστούμε ενα πληκτρολόγιο πάνω στην usb του RaspberryPi .
Όταν βάλουμε το RaspberryPI στο ρευμα θα bootarei και θα δούμε την κονσόλα του λίνουξ στην τηλεόραση μας, στο Login prompt.
Αλλαγή ονόματος χρήστη και προεπιλεγμένου κωδικού.
Αρχικά το raspbian έρχεται με προεγκατεστημένο τον χρήστη “pi” και κωδικό “raspberry”. Καλό είναι για λόγους ασφαλείας να αλλάξουμε αυτόν τον χρήστη. Για να γίνει αυτό θα πρέπει να ενεργοποιήσουμε τον χρήστη root, επειδή δεν μπορούμε να μετονομάσουμε ένα χρήστη όταν είμαστε συνδεδεμένοι με αυτόν.
Αφού συνδεθούμε με τον χρήστη PI λοιπόν ενεργοποιούμε τον root δίνοντας του έναν κωδικό
sudo passwd root
εισάγουμε έναν κωδικό για τον χρήστη root και μετά αποσυνδεόμαστε από τον χρήστη pi
logout
Αφού συνδεθούμε με τον χρήστη root πλέον και τον νέο κωδικό που επιλέξαμε προηγουμένως, κλείνουμε κάθε ανοιχτή διεργασία που τρέχει με χρήστη τον pi
killall -u pi
Μετονομάζουμε τον χρήστη pi (στο δικό μας παράδειγμα θα δώσουμε όνομα “doomster” )
usermod -l doomster pi
Και μετονομάζουμε και το home directory του χρήστη για να αντικατοπτρίζει το καινούριο όνομα χρήστη
usermod -m -d /home/doomster doomster
Επειτα κάνουμε reboot το raspberryPi
reboot
Συνδεόμαστε με τον καινούριο πλέον χρήστη και με την εντολή passwd αλλάζουμε τον κωδικό του από “raspberry” σε κάτι δικό μας.
Τέλος απενεργοποιούμε τον χρήστη root για περισσότερη ασφάλεια
sudo passwd -l root
Ρύθμιση δικτύου και ενεργοποίηση SSH Server.
Για να συνδεθούμε ασύρματα στο δίκτυο του σπιτιού μας και να ενεργοποιήσουμε τον ssh server στο boot, χρησιμοποιούμε το περιβάλλον που δίνει το raspberrypi για εύκολη ρύθμιση.
sudo raspi-config
Για να έχουμε ευκολότερη πρόσβαση από το εσωτερικό μας δίκτυο στο σέρβερ μας, προτιμάμε να του δώσουμε μια στατική IP, στο δίκτυο μας. Για να το κάνουμε αυτό, πρέπει να επεξεργαστούμε το αρχείο /etc/dhcpcd.conf .
αρχικά βρίσκουμε και την ip που έδωσε αυτόματα κατά την σύνδεση το ρούτερ στο RaspberryPI μας
sudo ifconfig
ανοίγουμε το /etc/dhcpcd.conf και του δίνουμε την παρακάτω μορφή χρησιμοποιόντας τα στοιχεία ip / dns / gateway Που πήραμε απο το ifconfig.
#static IP configuration
interface wlan0
static ip_address=192.168.1.15/24 #edw vazoume tin statiki IP gia to raspberrypi mas
static routers=192.168.1.1 #edw vazoume tin ip tou router mas
static domain_name_servers=192.168.1.1 #edw vazoume ton DNS server mas, sinithos tin ip tou router mas.
σώζουμε το αρχείο και κάνουμε restart
sudo reboot
και δοκιμάζουμε την συνδεσιμότητα στο internet κάνοντας update
sudo apt-get update
sudo apt-get upgrade
τα οποία θα πραγματοποιηθούν χωρίς πρόβλημα.
Σε αυτό το σημείο αφαιρούμε το πληκτρολόγιο από το raspberryPi και συνδεόμαστε μέσω ssh . Για το υπόλοιπο του οδηγού οτιδήποτε ρυθμίσεις γίνουν στην κονσόλα του λειτουργικού θεωρούμε πως γίνονται μέσω SSH σύνδεσης (Putty από Windows , ConnectBot από android κλπ )
Ρυθμιση εξωτερικού σκληρού δίσκου ως αποθηκευτικού χώρου.
Οι περισσότεροι εξωτερικοί δίσκοι του εμπορίου είναι προφορμαρισμένοι σαν NTFS σύστημα αρχείων, όπως ακριβώς τους θέλουμε για την εγκατάσταση μας. Αφού συνδέσουμε λοιπόν τον καινούριο μας σκληρό σε μία από τις 4 usb του raspberry pi μας, συνδεόμαστε στο server μας μεσω SSH για να τον εγκαταστήσουμε.
Πρώτα εγκαθιστούμε ή και ενημερώνουμε τα προαπαιτούμενα προγράμματα στο raspbian.
sudo apt-get install ntfs-3g
έπειτα δημιουργούμε ένα φάκελο μέσα στον φάκελο media στον οποίο θα γίνει mount ο εξωτερικός μας σκληρός (στο παράδειγμα μας χρησιμοποιούμε για όνομα φακέλου το Data)
sudo mkdir /media/Data
Για να μπορέσουμε να δούμε πώς εχει ονομάσει την συσκευή του εξωτερικού σκληρού το σύστημα μας, τρέχουμε την εντολή ” sudo fdisk -l ” στο δικό μου σύστημα το αποτέλεσμα είναι το παρακάτω στο οποίο βλέπω οτι ο εξωτερικός μου σκληρός δίσκος είναι ο /dev/sda , με μοναδικό partition το /dev/sda1 χωρητικότητας 931.5GB
Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram1: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram2: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mmcblk0: 29 GiB, 31167873024 bytes, 60874752 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x714aa001
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 96453 88262 43.1M c W95 FAT32 (LBA)
/dev/mmcblk0p2 98304 60874751 60776448 29G 83 Linux
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x387fa937
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 1953523711 1953521664 931.5G 7 HPFS/NTFS/exFAT
κρατάμε ένα αντίγραφο ασφαλείας του αρχείου /etc/fstab πριν το επεξεργαστούμε :
cp /etc/fstab /etc/fstab.backup
Τέλος προσθέτουμε μια γραμμή στο τέλος του αρχείου /etc/fstab με την χρησιμοποιόντας τα στοιχεία που έχουμε μαζέψει παραπάνω
/dev/sda1 /media/Data ntfs-3g defaults 0 0
Οπου /dev/sda1 το ονομα του partition του εξωτερικού σκληρού, όπου /media/Data η διαδρομή φακέλου που έχουμε δώσει στον φάκελο που φτιάξαμε παραπάνω.
Επειδή το αρχείο fstab είναι βασικό αρχείο συστήματος, οποιοδήποτε λάθος μπορεί να προκαλέσει σοβαρή ζημιά στην εγκατάσταση μας.
Για αυτόν τον λόγο πριν κάνουμε restart τρέχουμε την εντολή ” sudo mount -a ” Αν δέν μας βγάλει κάποιο error, τότε έχουμε επιτυχώς εγκαταστήσει τον εξωτερικό σκληρό στο σύστημα μας. Σε περίπτωση λάθους μπορούμε να επαναφέρουμε το αρχικό fstab αρχείο απο το backup μας.
Είμαστε πλέον έτοιμοι να προχωρήσουμε σε εγκατάσταση και ρύθμιση του torrent και του kodi media player.