Ubuntu File Server

...το μέρος για να ξεκινήσετε!

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Παρακαλώ να επιλέξετε, με προσοχή, την άδεια που θέλετε να έχουν οι οδηγοί που συγγράφετε.
Πληροφορίες για τις άδειες μπορείτε να βρείτε εδώ.
Άμα επιθυμείτε κάποια άλλη άδεια επικοινωνήστε με κάποιο Διαχειριστή είτε Συντονιστή.

Σημαντικό είναι να χρησιμοποιήσετε την υπηρεσία http://imagebin.ubuntu-gr.org για τις εικόνες.

Ubuntu File Server

Δημοσίευσηαπό kkalop » 20 Σεπ 2009, 16:25

1. Εισαγωγή

Όλα τα παρακάτω αποτελούν απλές συνταγές για το στήσιμο και την αντιμετώπιση διάφορων προβλημάτων ενός φτηνού Linux File Server (LFS). Σε καμία περίπτωση δεν αποτελούν πανάκεια. Η γνώση και η εμπειρία κάποιου που ασχολείται με το Linux, servers και software raid είναι απαραίτητη. Όπως είχε πει κάποτε ένας γιατρός «Μπορώ να σου δείξω σε μια ώρα πως να κάνεις μια εγχείρηση σκωληκοειδίτιδας, αλλά θα μου πάρει 7 χρόνια να σου πω τι θα κάνεις σε περίπτωση που κάτι πάει στραβά».

2. Επιλογή υλικού (Hardware)

Η σωστή επιλογή και αγορά του υλικού ενός server είναι ίσως το πιο σημαντικό κομμάτι της διαδικασίας καθώς διάφορες ασυμβατότητες υλικού και οδηγών μπορεί να κάνουν το στήσιμο του server αδύνατο.

1.Επεξεργαστής
Ο επεξεργαστή δεν μας απασχολεί ιδιαίτερα καθώς οι επεξεργαστικές ανάγκες ενός file server είναι πολύ περιορισμένες. Γενικά είναι καλύτερα να πάμε σε όσο το δυνατό περισσότερους πυρήνες και χαμηλή συχνότητα.

2.Μνήμη
Γενικά ένας LFS δεν χρειάζεται περισσότερο από 512ΜΒ RAM για να λειτουργήσει. Παρόλα αυτά λόγω της χαμηλής τιμής της μνήμης σήμερα καλό είναι να έχει αρκετή μνήμη (2GB). Το Linux χρησιμοποιεί την επιπλέον μνήμη σαν File System Cache, δηλαδή σαν προσωρινή μνήμη αποθήκευσης έτσι αν 2 άτομα τραβάνε το ίδιο αρχείο από το server ο δεύτερος θα το πάρει από τη μνήμη και όχι από το δίσκο. Αυτό βοηθάει και στην ταχύτητα αλλά και στη μακροζωία του δίσκου.

3.Μητρική
Η Μητρική είναι το σημαντικότερο κομμάτι του υλικού γιατί πάνω βρίσκονται τα περισσότερα υποσυστήματα του server (SATA controller, NIC, GPU). Το πρώτο πράγμα που κοιτάμε είναι να έχει συμβατότητα με το Linux. Πρέπει να έχει αρκετά SATA για τον File Server που χρειαζόμαστε on board κάρτα δικτύου και γραφικών.

4.Τροφοδοτικό
Η ανάγκες ενός LFS σε ενέργεια δεν είναι μεγάλες, ένα 420W τροφοδοτικό για ένα server με 7 σκληρούς, core duo στα 2500GHz, 2GB RAM είναι αρκετό. Σημασία πρέπει να δώσουμε στην ποιότητα του τροφοδοτικού μας. Χονδρικά τα κριτήρια για το πόσο καλό είναι ένα τροφοδοτικό με σειρά σημαντικότητας είναι:
a. Η τιμή του (να είναι τουλάχιστον 40€)
b. Τα χρόνια εγγύησης που δίνει ό κατασκευαστής
c. Η μάρκα του.
d. Το βάρος του. (Όσο πιο βαρύ τόσο πιο καλό.)
Επιπλέον για server κάλο είναι να έχει δύο ανεμιστήρες για αξιοπιστία. Τα τροφοδοτικά με ένα 12άρη ανεμιστήρα είναι επίσης αξιόπιστα. Τα τροφοδοτικά με έναν 8άρη απαγορεύονται δια ροπάλου!

5.Κουτί
Το κουτί του Server δεν χρειάζεται να είναι ακριβό. Το μόνο που πρέπει να μεριμνήσουμε είναι να έχει αρκετές θέσης σκληρών δίσκων, 12άρια ανεμιστήρα μπροστά πίσω και αρκετό χώρο.

6.Κάρτα Δικτύου
Η κάρτα Δικτύου ΠΡΕΠΕΙ να είναι on board GBit. Οι PCI GBit κάρτες μπορούν να δώσουν μέχρι 700 MBit/s λόγω του περιορισμού του PCI BUS. Γενικά λόγω αξιοπιστίας και συμβατότητας προτιμούμε
a. Intel
b. Marvel
c. Realtec

7.Κάρτα Γραφικών
Ο Server δεν έχει ανάγκη από καλή κάρτα γραφικών. Προτιμούμε πάντα τις on board κάρτες γραφικών και σε περίπτωση επιλογής μητρικής που δεν έχει επιλέγουμε την πιο μικρή και οπωσδήποτε παθητική (χωρίς ανεμιστήρα) κάρτα.

8.SATA Controller
Γενικά προτιμούμε τους onboard controller της μητρικής, σημαντικό είναι να είναι ενιαίος ο controller δηλαδή πολλές μητρικές έχουν 8 SATA τα οποία είναι 2 controllers 6 + 2. Δεν μπερδεύουμε τους Controllers χρησιμοποιούμε δηλαδή τα 6 για μία συστοιχία RAID και τα άλλα για άλλη.
Προτεινόμενοι Controllers – Chipset είναι τα ICH9R και ICH10R της INTEL (Chipset P35,Q35,Q45,P43,P45,G45)
PCI SATA Controllers πρέπει να αποφεύγονται καθώς το PCI BUS είναι περιοριστικός παράγοντας (bottleneck). Συγκριτικά 4 δίσκοι σε συστοιχία σε on board ICH9R controller έχουν Throughput 200 Mbytes/s ενώ σε PCI controller έχουν 80.

9.Σκληροί Δίσκοι
Η επιλογή των δίσκων γίνεται με βάση της ανάγκες μας. Γενικά για ένα φθηνό LFS όπου κυρίως μας ενδιαφέρει ο συνολικός χώρος πρώτος γνώμονας είναι η τιμή προς απόδοση, δηλαδή η τιμή προς Gigabyte. Καλό είναι να επιλέγουμε μεγάλης χωρητικότητας δίσκους έστω και αν είναι λιγότερο αποδοτικοί ως προς την τιμή λόγω του περιορισμένου αριθμού των θέσεων SATA. Δίσκοι server (raid edition) με 5 χρόνια εγγύηση είναι γενικά μια καλή επιλογή αλλά είναι πολύ ακριβότεροι και δεν προτείνονται για φτηνή λύση.

3. Στήσιμο Server

Το πρώτο πράγμα που κάνουμε, φυσικά, είναι το στήσιμο του υλικού. Το στήσιμο γίνεται όπως σε ένα απλό PC. Ιδιαίτερη σημασία πρέπει να δώσουμε στον καλό εξαερισμό του κουτιού και των δίσκων, κανένας δίσκος και ειδικά της συστοιχίας δεν πρέπει να μείνει χωρίς ανεμιστήρα.
Προτεινόμενη Τοπολογία
o Ένας σχετικά μικρός (320 GB) δίσκος ATA ή SATA για λειτουργικό
o Έξι μεγάλοι (π.χ. 1TB) δίσκοι για τη RAID Συστοιχία

Λειτουργικό Σύστημα
Για λειτουργικό σύστημα του LFS έχουμε επιλέξει το Ubuntu Server για τους παρακάτω λόγους
• Ευχρηστία

Κώδικας: Επιλογή όλων
apt-get install «τα πάντα»


• Hardware Compatibility
Λόγω του συχνού κύκλου εκδόσεων του Ubuntu (ανά 6 μήνες) παρέχεται υποστήριξη για τα περισσότερα καινούργια Hardware.

• Κοινότητα
Λόγω της ευρείας χρήσης του Ubuntu είναι πιο εύκολη η αντιμετώπιση προβλημάτων
Κατά την εγκατάσταση του Ubuntu πέρα απ’ τα βασικά επιλέγουμε ανάλογα με τις ανάγκες μας και την εγκατάσταση (για Ubuntu 8.04 και νεότερο)

• LAMP Webserver (Apache) Database (Mysql)

• Samba Υπηρεσία Κοινοχρήστων Δικτύου

• Open SSH για την απομακρυσμένη διαχείριση μέσω κονσόλας.
Μετά την εγκατάσταση

Κώδικας: Επιλογή όλων
apt-get install mdadm htop iftop mc lftp vsftpd


Mdadm : Το πρόγραμμα για την διαχείριση του Software Raid
Htop: Πρόγραμμα για να βλέπεις τις διεργασίες του server (task manager)
Iftop: Για να βλέπουμε την κίνηση του δικτύου
Mc: File Manager σαν τον παλιό Norton Commander
Lftp: Πολύ καλός FTP Client
Vsftpd: Ο πιο εύχρηστος FTP Server

4. Software RAID

Για να μπορούμε να χειριστούμε σωστά το software RAID θα πρέπει αρχικά να έχουμε βασικές γνώσεις για το τι είναι RAID :
http://en.wikipedia.org/wiki/RAID
http://www.acnc.com/04_01_05.html
και τι είναι το software raid του Linux
http://tldp.org/HOWTO/Software-RAID-HOWTO.html
http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch26_:_Linux_Software_RAID
http://linux.yyz.us/why-software-raid.html
http://linux-raid.osdl.org/index.php/Main_Page

Δημιουργία συστοιχίας

5. Από τη θεωρία στην πράξη

A. Επιλέξαμε με βάση τις τωρινές τιμές του υλικού καθώς και τις αντίστοιχες ανάγκες-απαιτήσεις μας και καταλήξαμε στο εξής υλικό :
- Τροφοδοτικό : Heroichi 550Watt
- Μητρική : ASUS P5Q-EM DO
- Επεξεργαστής : Intel Pentium(R) Dual-Core CPU E5200 @ 2.50GHz
- Μνήμη : 2*2 GB @ 800ΜHz
- Κάρτα γραφικών : Onboard Intel 4 Series Chipset Integrated Graphics Controller
- Κάρτα δικτύου : Onboard Intel 82567LM-3 Gigabit Network Ethernet interface
- Sata Controller : Intel ICH10 Family
- Δίσκος λειτουργικού : Western Digital WDC WD5000AAKB @ 500GB
- Δίσκοι συστοιχίας : Seagate ST31500341AS @ 1.5TB

Συνολικό Κόστος : 1200€

B. Στήσαμε το υλικό σε ένα κουτάκι Thermaltake Soprano το οποίο φάνηκε τελικά αρκετά ευρύχωρο για το μέγεθός του.

C. Κατεβάσαμε όπως αναφέρεται πιο πάνω το τελευταίο stable ubuntu server http://www.ubuntu.com/getubuntu/download-server και το εγκαταστήσαμε χωρίς ιδιαίτερα προβλήματα.(Aκολουθούν screenshots)

D. Μετά το πρώτο reboot λοιπόν είμαστε έτοιμοι να διαχειριστούμε το νέο μας server, να φτιάξουμε τη συστοιχία με τους δίσκους και να παραμετροποιήσουμε το σύστημα στα μέτρα μας.

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα

Εικόνα


6. Αναλυτικές οδηγίες και έλεγχοι συστήματος

1.Ελέγχουμε γενικά το σύστημά μας στην εκκίνησή του καθώς και τις υπηρεσίες που ξεκινάνε.

Κώδικας: Επιλογή όλων
cat /var/log/messages | more
dmesg


2.Ξεκινάμε με το απαραίτητο update του sources.list και την εγκατάσταση μερικών βασικών προγραμμάτων :

Κώδικας: Επιλογή όλων
vi /etc/apt/sources.list
apt-get install vim htop iftop mdadm mc lftp vsftpd figlet hdparm hddtemp lm-sensors
htop
vi /etc/vim/vimrc


και βγάζουμε τα σχόλια στα σημεία που λέει για :

“syntax on”
“set ignorecase”
“set smartcase”


Κώδικας: Επιλογή όλων
sensors-detect
(για να βρει θερμοκρασίες πυρήνα – δίσκων κλπ)

3.Ρυθμίζουμε το locales για ελληνικά

Κώδικας: Επιλογή όλων
/usr/share/locales/install-language-pack el_GR
dpkg-reconfigure locales
export LC_CTYPE="el_GR"
vi /etc/profile
και προσθέτουμε την από πάνω γραμμή για να ξεκινά κάθε φορά στην κονσόλα

Επίσης προσθέτουμε τις εξής γραμμές στο /etc/profile

echo
figlet ONOMA_SERVER
echo
/my_scripts/katastasi (κάποιο πιθανό scriptaki που μας λέει διάφορα πράγματα για το σύστημα κάθε φορά που κάνουμε login,όπως π.χ. θερμοκρασίες δίσκων, κατάσταση συστοιχίας κλπ)
alias 'll'='ls -lah'
alias 'df'='df -h'
alias 'tailms'='tail -f /var/log/messages'


4.Ελέγχουμε αν το σύστημα είδε όλους τους σκληρούς

Κώδικας: Επιλογή όλων
cat /proc/partitions


5.Δημιουργούμε τη συστοιχία

Κώδικας: Επιλογή όλων
mdadm --create /dev/md0 --level=5 --chunk=256 --raid-devices=6 /dev/sd[a-f]


6.Ελέγχουμε τη συστοιχία

Κώδικας: Επιλογή όλων
mdadm -D /dev/md0
cat /proc/mdstat


7.Βάζουμε τη συστοιχία (το UUID της) στο mdadm.conf ώστε να τη βλέπει το σύστημα μετά από reboot μέσω του προγράμματος mdadm

Κώδικας: Επιλογή όλων
mdadm --examine --scan --config=mdadm.conf >> /etc/mdadm/mdadm.conf


8.Benchmark για τη συστοιχία και ενδεικτική σύγκριση με έναν από τους δίσκους της (1.5TB Seagate)

Κώδικας: Επιλογή όλων
hdparm -Tt /dev/md0


/dev/md0:
Timing cached reads: 2722 MB in 2.00 seconds = 1360.85 MB/sec
Timing buffered disk reads: 1126 MB in 3.01 seconds = 374.50 MB/sec


Κώδικας: Επιλογή όλων
hdparm -Tt /dev/sda


/dev/sda:
Timing cached reads: 2698 MB in 2.00 seconds = 1349.30 MB/sec
Timing buffered disk reads: 366 MB in 3.01 seconds = 121.77 MB/sec


9.Κάνουμε format τη συστοιχία σε xfs filesystem

Κώδικας: Επιλογή όλων
apt-get install xfsprogs
mkfs.xfs /dev/md0


10.Τέλος χρειάζεται να κάνουμε και mount το /dev/md0 ώστε να είμαστε έτοιμοι να εκμεταλλευτούμε το χώρο

Κώδικας: Επιλογή όλων
mount /dev/md0 /disks
vi /etc/fstab


Προσθήκη της γραμμής αυτής για να αυτόματο mount :

Κώδικας: Επιλογή όλων
/dev/md0        /disks/         xfs     defaults        0       0


11.Φυσικά δεν ξεχνάμε να ρυθμίσουμε τα network interfaces καθώς και το smb.conf του samba έτσι ώστε να έχουμε κοινόχρηστη πρόσβαση από υπολογιστές με windows

Κώδικας: Επιλογή όλων
vi /etc/samba/smb.conf


Κώδικας: Επιλογή όλων
workgroup = MY_SERVERS
netbios name = MY_SERVER
server string = New File Server
security = share
unix charset = iso8859-7   (για ελληνικά)
unix password sync = yes   (για συγχρονισμό  unix - samba password)

#####  Παράδειγμα Κοινόχρηστων  #####
[disks]
        path = /disks/
        browsable = no
        read only = no

[Kati]
        comment = Ena tyxaio koinoxristo
        path = /disks/kati
        read only = yes
        guest ok = yes


7. Τελευταίες χρήσιμες παρατηρήσεις

1. Χρήσιμο θα είναι να ελέγξουμε τα δικαιώματα που έχουν οι χρήστες μας στο «μεγάλο» φάκελο /disks

2. Χρήσιμα επίσης , όταν μιλάμε για fileserver, είναι scriptakia για αυτοματοποιημένες δουλειές όπως μπορεί να είναι μια συγκεκριμένη μετονομασία, ο υπολογισμός του χώρου που καταλαμβάνουν τα δεδομένα μας, η καθημερινή αλλαγή και εφαρμογή των επιθυμητών permissions

Κώδικας: Επιλογή όλων
vi /etc/crontab


Κώδικας: Επιλογή όλων
Π.χ. 00 7 * * *      root    /my_scripts/ola


:ugeek:
kkalop
babeTUX
babeTUX
 
Δημοσιεύσεις: 2
Εγγραφή: 09 Δεκ 2008, 04:06
Τοποθεσία: Xanthi
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό ftso » 20 Σεπ 2009, 19:38

:clap: :clap:
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό c7p » 20 Σεπ 2009, 22:52

Μπράβο και από μένα :clap: :clap: , και κάλως ήρθες στην κοινότητα :thumbup:
Άβαταρ μέλους
c7p
powerTUX
powerTUX
 
Δημοσιεύσεις: 1849
Εγγραφή: 30 Μάιος 2009, 16:09
Τοποθεσία: Κατερίνη
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό pros » 20 Σεπ 2009, 23:03

kkalop έγραψε:«Μπορώ να σου δείξω σε μια ώρα πως να κάνεις μια εγχείρηση σκωληκοειδίτιδας, αλλά θα μου πάρει 7 χρόνια να σου πω τι θα κάνεις σε περίπτωση που κάτι πάει στραβά».

Η πιο σοφή προειδοποίηση που έχω διαβάσει...
Παρ' όλα αυτά με τις οδηγίες που έγραψες το κάνεις να φαίνεται εύκολο!
Τα σέβη μου!

Καλώς ήλθες.
10.04 / 12.04 64bit
Άβαταρ μέλους
pros
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 3534
Εγγραφή: 28 Ιαν 2009, 22:28
IRC: sterios
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό kkalop » 03 Οκτ 2009, 16:24

Thnx guys, ελπίζω σε λίγο καιρό να βρω περισσότερο χρόνο ώστε να είμαι και πιο ενεργός στο φορουμ. 8-)
kkalop
babeTUX
babeTUX
 
Δημοσιεύσεις: 2
Εγγραφή: 09 Δεκ 2008, 04:06
Τοποθεσία: Xanthi
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό pros » 07 Οκτ 2009, 16:32

CodemaN έγραψε:re paidia den exw katalabi omws pws bazhs to domain pou thes ston srever pou eftiaxes exw kanh toi leeei alla pws bazo to domain mou?


Ελληνικά, παρακαλώ!

(http://forum.ubuntu-gr.org/viewtopic.php?f=2&t=279)

Καλώς ήλθες!
10.04 / 12.04 64bit
Άβαταρ μέλους
pros
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 3534
Εγγραφή: 28 Ιαν 2009, 22:28
IRC: sterios
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό CodemaN » 07 Οκτ 2009, 16:37

ρε παιδιά δεν έχω καταλάβει όμως πως βάζεις το domain που θες στον server που έφτιαξες έχω κάννη τη λέει αλλα πως βάζο το domain μου?
CodemaN
babeTUX
babeTUX
 
Δημοσιεύσεις: 1
Εγγραφή: 07 Οκτ 2009, 16:17
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό simosx » 07 Οκτ 2009, 17:10

@kkalop: You Sir, are a scholar.
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: Ubuntu File Server

Δημοσίευσηαπό sokoban4ever » 07 Οκτ 2009, 20:56

@kkalop
Όπως είχε πει κάποτε ένας γιατρός «Μπορώ να σου δείξω σε μια ώρα πως να κάνεις μια εγχείρηση σκωληκοειδίτιδας, αλλά θα μου πάρει 7 χρόνια να σου πω τι θα κάνεις σε περίπτωση που κάτι πάει στραβά».


Αν και στα μηχανήματα επειδή δεν είναι άνθρωποι μπορείς πιο εύκολα να πετάξεις ή να αντικαταστήσεις ένα εξάρτημα ,πρόγραμμα,λειτουργικό ,kernel ,bios κλπ κλπ
μπορώ να πω ότι το βρίσκω αρκετά σωστό το ρητό :D

Μπράβο για τον οδηγό και από μένα :thumbup:
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση


  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Οδηγοί - How to - Tutorials