οδηγος ρυθμισεων του debian για βελτιστη αποδοση!

4 posts / 0 new
Τελευταίο μήνυμα
mikes kikou
Εικόνα: mikes kikou
Offline
Εγγράφηκε: 06/12/2004
οδηγος ρυθμισεων του debian για βελτιστη αποδοση!

ψαχνοντας πολλες ωρες στο ιντερνετ, για το πως θα βελτιστοποιησω το debian sarge, αποφάσισα να γραψω αυτον τον οδηγο
με σκοπο να συγκεντρωσω μερικα απο τα πολυ χρησιμα tips που βρηκα.

ΠΡΟΣΟΧΗ!!!!
πολλα απο τα παρακατω μπορει να οδηγησουν το συστημα σας σε ασταθη λειτουργια!
πριν κανετε καθενα απο τα παρακατω βηματα σιγουρευτειτε για την κινηση σας.

1.ελαχιστοποιηση των services κατα την εκκινηση

εγκαταστειστε το εργαλειο sysv-rc-conf
#sudo apt-get install sysv-rc-conf
τρεξτε το απο την κονσολα

το runlevel που μας ενδιαφερει ειναι το S, δηλαδη αυτο της εκκινησης.

δεν κρινω σκοπιμο να αναφερω ποια services θα απενεργοποιησετε.με μια μικρη ερευνα στο ne ομως,
και εχοντας γνωση των services που χρειαζεστε, σιγουρα θα εντοπισετε καποιο service.

στο δικο μου συστημα απενεργοποιησα το hotplug και hotplug-net και στη συνεχεια προσθεσα στο
αρχειο /etc/modules οσα απο τα modules βγηκαν ως output απο την παρακατω εντολη:

#lsmod
διαβασα οτι τα modules πρεπει να προστεθουν στο /etc/modules με τετοια σειρα, ουτωσωστε το τελευταιο απο το
lsmod να ειναι πρωτο στο αρχειο κλπ.δεν ξερω ομως κατα ποσο αυτο εχει σημασια.

με την κινηση μου αυτη ως αποτελεσμα ειχα να εκκινει το συστημα μου σε 50 δευτερολεπτα αντι για εναμισι λεπτο.

βεβαια απενεργοποιωντας το hotplug με την προσθηκη μιας νεας συσκευης στο συστημα, δεν θα υπαρξει αυτοματη αναγνωριση
γι αυτο να ειστε αρκετα προσεκτικοι με αυτο το βημα.

2.αντικατασταση του getty με το προγραμμα fgetty

ενδεχομενο λαθος στο βημα αυτο μπορει να προκαλεσει στο συστημα σας ακομα και αδυναμια εκκινησης γι αυτο προσοχη,

αρχικα εγκαθιστουμε το fgetty
#sudo apt-get install fgetty

στη συνεχεια κανουμε edit το αρχειο /etc/inittab με τον editor της προτιμησης μας
#sudo nano /etc/inittab

στο σημειο που μοιαζει με αυτο:

1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
...

κανουμε τις απαραιτητες αλλαγες ωστε να ειναι ετσι για ολα τα ttys.το δικο μου ειναι καπως ετσι:

# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty's go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/fgetty tty1
2:23:respawn:/sbin/fgetty tty2
3:23:respawn:/sbin/fgetty tty3
#4:23:respawn:/sbin/fgetty tty4
#5:23:respawn:/sbin/fgetty tty5
#6:23:respawn:/sbin/fgetty tty6

οπως βλεπετε, εκτος απο την αντικατασταση του getty με το fgetty απενεργοποιησα και 3 virtual consoles,παλι για λογους
βελτιστοποιησης.

στη συνεχεια αφου σωσουμε το αρχειο δινουμε το εξης:
#killall -HUP init

3.ενεργοποιηση του prelinking

αρχικα παραθετω καποιες πληροφοριες απο το gentoo prelinking guide:

(from the Gentoo Linux Prelinking Guide)

Most common applications make use of shared libraries. These shared libraries need to be loaded into memory at runtime and the various symbol references need to be resolved. For most small programs this dynamic linking is very quick. But for programs written in C++ and that have many library dependencies, the dynamic linking can take a fair amount of time.

On most systems, libraries are not changed very often and when a program is run, the operations taken to link the program are the same every time. Prelink takes advantage of this by carrying out the linking and storing it in the executable, in effect prelinking it.

Prelinking can cut the startup times of applications. For example, a typical KDE program's loading time can be cut by as much as 50%. The only maintenance required is re-running prelink every time a library is upgraded for a pre-linked executable.

Yet there is a chance that prelinking might mess up something, so use at your own risk.

εγκαθιστουμε το πακετο prelink
#sudo apt-get install prelink

στη συνεχεια κανουμε edit το αρχειο /etc/default/prelink
#sudo nano /etc/default/prelink
στο σημειο που λεει "PRELINKING=unknown from unknown" αντικαθιστουμε το unknown με yes
τα υπολοιπα λογικα ειναι σωστα απο προεπιλογη,αλλα για περισσοτερες λεπτομερειες και μεγαλυτερη παραμετροποιηση....
#man prelink
και διαβαζουμε τις οδηγιες.

τωρα για να γινεται το prelinking καθε φορα που εγκαθιστουμε η απεγκαθιστουμε ενα πακετο χρειαζεται μια
προσθηκη στο αρχειο /etc/apt/apt.conf

το ανοιγουμε λοιπον
#nano /etc/apt/apt.conf

και προσθετουμε την παρακατω γραμμη
DPkg::Post-Invoke {"echo Running prelink, please wait...;/etc/cron.daily/prelink";}

τωρα ηρθε η ωρα για το πρωτο και μεγαλο prelink...(μου πηρε πανω απο 10 λεπτα αλλα μπορει να παρει και πολυ περισσοτερο)
#sudo /etc/cron.daily/prelink

το καθε ποτε θα γινεται αυτο καθοριζεται απο το αρχειο /etc/default/prelink

για να ειμαι ειλικρινης, η αποδοση του συστηματος μου αυξηθηκε, αλλα οχι σε μεγαλο βαθμο.

4.εγκατασταση του πακετου libc6-i686

#sudo apt-get install libc6-i686

παραθετω σχολια απο το description του πακετου:

Contains the standard libraries that are used by nearly all programs on the system. This package includes shared versions of the standard C library and the standard math library, as well as many others. . This set of libraries is optimized for i686 machines, and will only be used if you are running a 2.6 kernel on an i686 class CPU (check the output of `uname -m'). This includes Pentium Pro, Pentium II/III/IV, Celeron CPU's and similar class CPU's (including clones such as AMD Athlon/Opteron, VIA C3 Nehemiah, but not VIA C3 Ezla). . This package includes support for NPTL. . WARNING: Some third-party binaries may not work well with these libraries. Most notably, IBM's JDK. If you experience problems with such applications, you will need to remove this package.

5.απομακρυνση αχρηστων βιβλιοθηκων και αλλων πακετων απο το συστημα μας

αυτο δεν θα αυξησει τις επιδοσεις του συστηματος αλλα τον χωρο του...

#sudo apt-get install deborphan
#sudo deborphan | xargs apt-get -y rmove --purge
#sudo apt-get clean

αυτα γι αρχη,
ελπιζω καποια απο τα παραπανω να σας φανηκαν χρησιμα!

πηγες:

1.http://www.linuxquestions.org/questions/showthread.php?s=&threadid=224547
2.http://users.skynet.be/six/gpure/tech/linux/debian.html
3.http://www.ubuntuforums.org/showthread.php?t=89491
4.http://www.ubuntuforums.org/showpost.php?p...817&postcount=1
5.http://debian.linbyte.com/

markos
Εικόνα: markos
Offline
Εγγράφηκε: 18/11/2004

Ακολούθησα τις οδηγίες σου -και απορώ πώς δε με είχε ενοχλήσει κι εμένα ο χρόνος εκκίνησης στο σύστημά μου και μάλιστα έκανα και κάποια benchmarks.

Πριν κάνω τις ρυθμίσεις ο χρόνος εκκίνησης του συστήματός μου, από τη στιγμή που φορτώνει το grub έως και τη στιγμή που φορτώνει όλες τις εφαρμογές/αρχεία/σελίδες στο profile μου στο KDE -αφαίρώντας 1 sec μέχρι να γράψω το password στο kdm- ήταν 5:29.2, πάνω από 5 λεπτά!! (οκ είναι ένα παλιό φορητό PIII@700 με 256 MB και φορτώνω σ' αυτό κυριολεκτικά τα πάντα, όλοι με βρίζουν που το τυραννάω έτσι... :-)

Μετά τις ρυθμίσεις που προτείνεις, ο χρόνος έφτασε στα 5:09.8 χωρίς τη libc6-i686 και στα 4:58.1 με τη libc-i686. Not bad at all!

Σημείωση: το prelinking σε μένα έκανε πάνω από 2 ώρες για να ολοκληρωθεί!!! Ναι δυστυχώς είναι αργό μηχάνημα αλλά δε μπορώ να το παρατήσω :-)

Μπράβο Μιχάλη!

markos@debian.gr

ΥΓ. Παρεμπιπτόντως είναι πολύ εύκολο να αντιστρέψεις τα modules από τη λίστα του lsmod, ώς εξής:

# lsmod |awk '{ print $1; }'|tac >>/etc/modules

mikes kikou
Εικόνα: mikes kikou
Offline
Εγγράφηκε: 06/12/2004

χαιρομαι που βρηκες τις οδηγιες μου χρησιμες(σιγα μην ηταν δικες μου...να ειναι καλα το internet..).
σχετικα με τα services εχω μερικες αποριες, και ειμαι σιγουρος οτι ακομα τρεχω αρκετα αχρηστα.
1.το xpint,το οποιο φορτωνεται στο runlevel 2, μου χρειαζεται, δεδομενου οτι οτι το cups φορτωνεται??
2.τι ειναι αυτa τa exim4 ssh και rmonologin?τα δυο πρωτα τα εχω απενεργοποιημενα αφου πιστευω οτι δεν τα χρησιμοποιω.

γενικα με εχει πιασει μια μανια να κερδισω οτι μπορω απο ταχυτητα και αποδοση και αυτο αναποφευκτα οδηγει στα αχρηστα services.
τελος θελω να ρωτησω κατο:
τα runlevels που με ενδιαφερουν ειναι τα 2 και 0??ουσιαστικα για πιο ελαφρυ συστημα το 2 παιζει ρολο??

για την ιστορια, oι μετρησεις μου σχετικα με το ποση ωρα κανει να εκκινησει το συστημα εγιναν απο την ωρα που παταω το κουμπι του pc,και πατωντας αμεσως enter στον grub.

stavros
Εικόνα: stavros
Offline
Εγγράφηκε: 24/01/2005

Βρε συ mikes kikou (καιρό έχω να σε διαβάσω κι ακόμη περισσότερο να σου γράψω), πολύ χρήσιμος ο οδηγός σου αλλά μπορείς σε παρακαλώ να μου πεις – σ’ εμένα και σε κάθε άλλο ενδιαφερόμενο – που μπορώ να βρω πληροφορίες για το τι κάνει κάθε service ώστε να ξέρω ποια χρειάζομαι και ποια όχι.
Αν θυμάσαι που βρήκες τις πληροφορίες για τα δικά σου γράψε μας μερικά links

Επιλογές εμφάνισης σχολίων

Επιλέξτε τον προτιμώμενο τρόπο εμφάνισης των σχολίων και πατήστε "Αποθήκευση ρυθμίσεων" για να ενεργοποιήσετε τις αλλαγές σας.