ΕΛ/ΛΑΚ | creativecommons.gr | mycontent.ellak.gr |
freedom

3 τρόποι αύξησης διάρκειας μπαταρίας σε Laptop με Linux

Όσοι έχουν laptop με Linux, συνήθως παραπονιούνται ότι η αύξησης διάρκειας μπαταρίας είναι ένας Γολγοθάς ενώ στην πραγματικότητα υπάρχουν εφαρμογές που αναλαμβάνουν αυτόματα την καλύτερη διαχείριση της ενέργειας ώστε να βελτιώσουν τη διάρκεια της μπαταρίας και ταυτόχρονα να μειώσουν τη θερμοκρασία. Σήμερα θα δούμε τους 3 πιο αποδοτικούς τρόπους.

Τα τελευταία χρόνια έχουν γίνει τεράστια βήματα στην βελτίωση του πυρήνα Linux ώστε να έχουμε καλύτερη διάρκεια μπαταρίας. Ίσως να θυμούνται οι παλιοί το πρόβλημα που ανέκυψε με την έκδοση 2.6.38 του Linux πυρήνα και τον αγώνα που έγινε για να εντοπιστεί το πρόβλημα.

Ευτυχώς πλέον η κατανάλωση μπαταρίας σε Linux έχει μειωθεί δραματικά στην σειρά 4.10+ του πυρήνα Linux ενώ παράλληλα μπορεί να βελτιωθεί ακόμα περισσότερο με διάφορες ρυθμίσεις του υπολογιστή μας. Φυσικά παίζουν πολλά ρόλο στην κατανάλωση όπως το hardware μας, η έκδοση του Linux πυρήνα, οι εφαρμογές που έχουμε στο σύστημά μας, η διαμόρφωση του συστήματος και γενικά το γραφικό περιβάλλον που τρέχουμε.

Καταγραφή κατανάλωσης μπαταρίας στο Linux

Πριν δούμε όμως τους 3 τρόπους αύξησης διάρκειας μπαταρίας σε Laptop με Linux, θα πρέπει να κατανοήσουμε τι είναι αυτό που καταναλώνει την μπαταρία του Laptop μας. Αν δηλαδή κάτι δεν είναι μετρήσιμο για λόγους σύγκρισης τότε δεν είναι χρήσιμο.

Υπάρχουν διάφορα εργαλεία για αυτή την δουλειά και συνήθως είναι διαθέσιμα προς εγκατάσταση από το αποθετήριο της διανομής σας. Ανάλογα φυσικά και με το γραφικό περιβάλλον που χρησιμοποιείτε μπορεί να διαφέρει το όνομα της εφαρμογής. Παράδειγμα στο GNOME υπάρχει το εργαλείο Power Statistics το οποίο μας δίνει μια εικόνα για τον τύπο της μπαταρίας, την κατανάλωση σε Watt, τα στοιχεία του συστήματος που «ξυπνάνε» τον επεξεργαστή κλπ.

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

Δείτε και εσείς τα στατιστικά σας με την εφαρμογή που έρχεται με την διανομή σας και διαλέξτε ΈΝΑΝ από τους 3 τρόπους αύξησης διάρκειας μπαταρίας σε Laptop με Linux

Αύξησης διάρκειας μπαταρίας με το Powertop

To powertop είναι εφαρμογή τερματικού και απευθύνεται κυρίως σε προχωρημένους χρήστες. Πέρα από τις πληροφορίες για την κατανάλωση μπαταρίας από το hardware του υπολογιστή μας, διαθέτει και μια καρτέλα «TUNABLES» το οποίο μας δίνει την δυνατότητα να εκμεταλλευτούμε τις βελτιώσεις στην κατανάλωση της μπαταρίας από τις διάφορες συσκευές.

Φορτίστε πλήρως την μπαταρία του laptop και έπειτα, πριν προχωρήσετε, αφαιρέστε την παροχή ρεύματος

Αφού το εγκαταστήσετε στην διανομή σας (το πακέτο είναι το powertop) ανοίγετε τερματικό και τρέχετε sudo powertop.

Για να πάτε στην καρτέλα Tunables χρησιμοποιείτε το πλήκτρο Tab ενώ για την αλλαγή της ρύθμισης πατάτε Enter.

Όπως βλέπετε στην παραπάνω εικόνα, το σύστημα έχει ήδη ρυθμίσει την καλή (Good) συμπεριφορά των περισσοτέρων υποσυστημάτων hardware που διαθέτει το lapatop. Υπάρχουν όμως και κάποιες κακές (Bad) συμπεριφορές οι οποίες μπορούν με το πάτημα του Enter να βελτιωθούν.

Προσωρινή ρύθμιση με το Powertop

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

Σημείωση: Μερικές από τις ρυθμίσεις για παράδειγμα μπορεί να βάλουν την θύρα USB σε κατάσταση sleep mode σε περίπτωση που δεν χρησιμοποιηθεί μετά από μερικά δευτερόλεπτα με αποτέλεσμα να απενεργοποιηθεί για παράδειγμα το ποντίκι που έχετε συνδέσει. Οπότε μετά από παρατήρηση θα δείτε ποια ρύθμιση δεν πρέπει να αλλαχτεί.

Οι όποιες αλλαγές, είναι προσωρινές και δεν διατηρούνται μετά από επανεκκίνηση οπότε για αυτό είπαμε να αφήσετε ανοιχτό το τερματικό με το powertop (για να συλλέξει δεδομένα συμπεριφοράς) και να συνεχίσετε την δουλειά σας στο laptop. Έτσι δείτε ποιες ρυθμίσεις είναι χρήσιμες για να τις κάνουμε μόνιμες ώστε να διατηρούνται μετά την επανεκκίνηση.

Μόνιμη ρύθμιση με το Powertop

Στις κάποιες διανομές (π.χ. Fedora) το powertop έρχεται και με μια υπηρεσία που φορτώνει αυτόματα όλες τις ρυθμίσεις σε κατάσταση Good και μπορεί κάποιος να το ενεργοποιήσει με :

1
sudo systemctl enable powertop.service

Αυτή στην πραγματικότητα τρέχει την εντολή powertop --auto-tune μόλις ξεκινήσει οπότε και μετατρέπει όλα τα Bad σε Good.

Σε περίπτωση που δεν υπάρχει αυτή η υπηρεσία, θα την φτιάξουμε εμείς με το ίδιο τρόπο που το έχουμε κάνει και παλιότερα. Στο τερματικό λοιπόν ανοίξτε κειμενογράφο (π.χ. το VIM) για να συμπληρώσουμε σε αρχείο με όνομα π.χ. powertop.service.

1
vim powertop.service

και συμπληρώστε τον παρακάτω κώδικα:

1
2
3
4
5
6
7
8
9
10
[Unit]
Description=Powertop tunings
[Service]
Type=idle
Environment="TERM=dumb"
ExecStart=/usr/sbin/powertop --auto-tune
RemainAfterExit=true
[Install]
WantedBy=multi-user.target

έπειτα κλείνετε και αποθηκεύετε το αρχείο Esq, :wq

Το μεταφέρουμε στον κατάλογο υπηρεσιών του systemd και το ξεκινάμε π.χ.

1
2
sudo cp powertop.service /lib/systemd/system/
sudo systemctl start powertop.service

Αν όλα έχουν πάει καλά η υπηρεσία θα έχει ξεκινήσει και μπορούμε να δούμε αν έχουν ενεργοποιηθεί όλα τα Tunables τρέχοντας :

1
sudo powertop --html=powerreport.html

Μετά από μερικά δευτερόλεπτα θα δημιουργηθεί μια αναφορά με όλες τις ρυθμίσεις σε αρχείο html το οποίο μπορείτε να ανοίξετε με τον browser σας. Στην καρτέλα tunings θα δείτε ότι οι αλλαγές που έκανε οι υπηρεσία powertop που φτιάξαμε είναι στο Optimal Tuned Software Settings

Τέλος, αν όλα φαίνονται καλά μένει να το ρυθμίσουμε να ξεκινάει αυτόματα:

1
sudo systemctl enable powertop.service

Επιλεκτική εξαίρεση ρυθμίσεων από το Powertop

Όπως ανέφερα πιο πάνω, η υπηρεσία τρέχει την εντολή powertop --auto-tune οπότε και μετατρέπει όλα τα Bad σε Good. Αυτό όμως στην περίπτωση που δεν θέλουμε να απενεργοποιείται π.χ. το USB μας, δεν μας είναι χρήσιμο. Για αυτό ξαναλέω να αφήσετε ανοιχτό το τερματικό με το powertop (για να συλλέξει δεδομένα συμπεριφοράς), να κάνετε προσωρινές αλλαγές επιλεκτικά ώστε να δείτε ποίο δεν θέλετε να μετατρέπεται σε Good.

Για να εξαιρέσουμε μια ρύθμιση θα χρειαστεί να :

  • εντοπίσουμε ποια ρύθμιση δεν θέλουμε
  • να την προσθέσουμε σε ξεχωριστό αρχείο το οποίο θα εκτελείται μαζί με την υπηρεσία που φτιάξαμε

Ακούγεται βουνό αλλά αξίζει τον κόπο. Θυμηθείτε πάνω την εντολή powertop --html=powerreport.html το οποίο μας έδωσε μια αναφορά. Ωραία πάμε λοιπόν να εξαιρέσουμε κάποια ρύθμιση:

  1. τρέξτε πάλι το powertop
  2. πηγαίνετε στην καρτέλα tunables και αλλάζετε σε Bad την ρύθμιση που θέλετε να εξαιρέσετε. Μόλις το κάνετε θα εμφανιστεί από πάνω μια εντολή που ξεκινάει με echo. Δεν χρειάζεται ολόκληρη, το μόνο που θέλω να θυμάστε είναι πια παράμετρο είχε μετά το echo(συνήθως είναι ‘0’ η ‘on’).
  3. πατήστε Q για να βγείτε από το powertop
  4. τώρα πρέπει να ξαναδημιουργήσετε την αναφορά με την εντολή sudo powertop--html=powerreport.html
  5. Μόλις ολοκληρωθεί, ανοίξτε το αρχείο powerrreport.html με τον browser σας και πηγαίνετε στην καρτέλα tuning
  6. Κάτω από την λεζάντα Software Settings in Need of Tuning θα δείτε την ρύθμιση που είχατε κάνει Bad ώστε να το εξαιρέσουμε.
  7. Δίπλα στην στήλη Script έχει την εντολή που θα χρησιμοποιήσουμε οπότε κρατήστε την σελίδα ανοιχτή όπως φαίνεται στην παρακάτω εικόνα:

Τώρα μένει να φτιάξουμε το αρχείο που θα περιλαμβάνει την εντολή με την παράμετρο που ενεργοποιεί το Bad (την θυμάστε; αν όχι επαναλάβατε το βήμα 2 πάνω από την εικόνα)

Στο τερματικό λοιπόν ανοίξτε κειμενογράφο (π.χ. το VIM) για να συμπληρώσουμε σε αρχείο με όνομα π.χ. powertop-exclude.sh π.χ με vim powertop-exclude.sh και συμπληρώστε τον παρακάτω κώδικα στον οποίο όπως είπαμε θα προσθέσετε την εντολή απο την στήλη Script της αναφοράς με την παράμετρο που είδατε όταν μετατρέψατε σε Bad την ρύθμιση:

1
2
3
4
5
#!/bin/bash
#Δεν θέλω να μου αλλάζεις την παρακάτω ρύθμιση
echo 'on' > '/sys/bus/usb/devices/1-1/power/control'

έπειτα κλείνετε και αποθηκεύετε το αρχείο Esq, :wq

Όπως βλέπετε στην δική μου περίπτωση, αν θυμάστε, απενεργοποιούσε μετά από λίγα δευτερόλεπτα τα USB όταν συνέδεα στην συγκεκριμένη θύρα κάποιο περιφερικό όπως ποντίκι. Οπότε πήρα την εντολή από την στήλη Script, άλλαξα την παράμετρο από auto (Good) σε on (Bad) ώστε η υπηρεσία powertop να μην το απενεργοποιεί.

Τώρα απλά, θα μεταφέρουμε το αρχείο στον φάκελο με τα εκτελέσιμα του συστήματος και έπειτα θα φτιάξουμε μια υπηρεσία που θα το καλεί (πάλι… υπηρεσία;… εμπλοκή μας πας…):

1
2
sudo mv powertop-exclude.sh /usr/local/sbin/
sudo chmod +x /usr/local/sbin/powertop-exclude.sh

και τώρα πάμε να φτιάξουμε την υπηρεσία poswertop-exclude.service δημιουργώντας το αρχείο στον φάκελο υπηρεσιών του systemd π.χ. με το VIM sudo vim /lib/systemd/system/powertop-exclude.service:

1
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=Powertop excludes
Requires=powertop.service
After=powertop.service
[Service]
Type=oneshot
ExecStart=/usr/local/sbin/powertop-exclude.sh
[Install]
WantedBy=multi-user.target

Τέλος απλά μένει να το ξεκινήσουμε και να το ενεργοποιήσουμε:

1
2
sudo systemctl start powertop-exclude.service
sudo systemctl enable powertop-exclude.service

Διαβάστε περισσότερα για το Powertop στο manual του

Αύξησης διάρκειας μπαταρίας με το LMT

To Laptop Mode Tools είναι ένα πακέτο εξοικονόμησης ενέργειας για φορητούς υπολογιστές για συστήματα Linux. Σας επιτρέπει να επεκτείνετε τη διάρκεια ζωής της μπαταρίας του φορητού σας υπολογιστή, με διάφορους τρόπους.

Είναι ο πρωταρχικός τρόπος για να ενεργοποιήσετε τη λειτουργία Laptop Mode του πυρήνα του Linux, η οποία επιτρέπει στον σκληρό σας δίσκο να απενεργοποιεί την περιστροφή όταν δεν χρειάζεται. Επιπλέον, σας επιτρέπει να τροποποιήσετε μια σειρά από άλλες ρυθμίσεις που σχετίζονται με την κατανάλωση ενέργειας χρησιμοποιώντας ένα απλό αρχείο ρυθμίσεων.

Είναι διαθέσιμο για εγκατάσταση σε όλες τις διανομές οπότε μπορείτε να το εγκαταστήσετε μέσα από το τερματικό η το κέντρο λογισμικού σας. (το πακέτο ονομάζεται linux-laptop-tools). Έπειτα απλά το ξεχνάτε. Δεν θα χρειαστεί να κάνετε τίποτα άλλο

Οι ψαγμένοι μπορείτε να δείτε τις ρυθμίσεις και να το διαμορφώσετε όπως θέλετε /etc/laptop-mode/laptop-mode.conf . Τέλος υπάρχει και γραφικό περιβάλλον εάν θέλετε να το κάνετε μέσα από αυτό :

Περισσότερα για το Laptop mode tools στο wiki του

Αύξησης διάρκειας μπαταρίας με το TLP

Αφού σας βασάνισα με το Powertop και το LMT, ένας εναλλακτικός τρόπος είναι η εγκατάσταση του Linux Advanced Power Management Tool (TLP) το οποίο περιλαμβάνει τις ιδανικές ρυθμίσεις για την βέλτιστη διάρκεια μπαταρίας εφαρμόζοντας τες αυτόματα.

Συνήθως είναι διαθέσιμη από τα αποθετήρια της διανομής σας οπότε μπορείτε να το εγκαταστήσετε μέσα απο το τερματικό η το κέντρο λογισμικού σας. (το πακέτο ονομάζεται tlp)

Μετά την εγκατάσταση δεν χρειάζεται να κάνει τίποτα ο αρχάριος χρήστης, αφού το tlp τρέχει στο παρασκήνιο και ρυθμίζει αυτόματα την κατανάλωση ρεύματος μέσω παραμετροποιήσεων που κάνει :

  • Στη συχνότητα του επεξεργαστή, συμπεριλαμβανομένων των λειτουργιών «turbo boost» / «turbo core»
  • Στη διαχείριση πολλαπλών πυρήνων / threads για τις εφαρμογές
  • Στη διαχείριση ενέργειας για τους σκληρούς δίσκους
  • Στη ρύθμιση ενέργειας του WiFi
  • Στο DVD-ROM όταν το laptop είναι στη μπαταρία
  • Στην εξοικονόμηση ενέργειας όσον αφορά τον ήχο.

Οι πιο ψαγμένοι μπορούν να ανοίξουν το αρχείο ρυθμίσεων του tlp στο /etc/default/tlp και να παραμετροποιήσουν ακόμα περισσότερο την υπηρεσία του tlp. Σε γενικές γραμμές όμως, όπως είπα δεν χρειάζεται να κάνετε τίποτα άλλο στο tlp αφού οι ρυθμίσεις που κάνει είναι οι κατάλληλες για τη διαχείριση της ενέργειας, με αποτέλεσμα να μειώνεται και η θερμοκρασία λειτουργίας του laptop αλλά και ο θόρυβος του συμβάλλοντας έτσι στη μακροζωία της μπαταρίας.

Ποιο είναι καλύτερο, Powertop, LMT, ή το TLP;

Σε κάθε περίπτωση, σε κάποιον αρχάριο θα έκανα εγκατάσταση το TLP και θα τελείωνα με μια εγκατάσταση. Όπως όμως είπα και στην αρχή, το κάθε hardware διαφέρει, το γραφικό περιβάλλον, η διανομή οπότε χρειάζεται:

  • μέτρηση
  • δοκιμή
  • επανεκτίμηση
  • και εφαρμογή

Εάν βαριέστε όλη την διαδικασία κάντε απλά εγκατάσταση το tlp και ξεχάστε το.

Επίλογος

Σκοπός του σημερινού οδηγού είναι να περιλαμβάνει όλα όσα χρειάζεστε για να μειώσετε την κατανάλωση της μπαταρίας στο λάπτοπ σας αλλά και να σας βάλω σε διαδικασία να το ψάξετε. Θα ήθελα σε κάθε περίπτωση να μου πείτε αν είδατε διαφορά.

Εάν αυξήσατε έστω και μισή ώρα παραπάνω την διάρκεια της μπαταρίας, κεράστε ένα καφέ στο αντίστοιχο εργαλείο που σας γλύτωσε ρεύμα, κάνοντας μια δωρεά στον δημιουργό του συγκεκριμένου project. Έστω και 1 ευρώ για αυτούς είναι ένδειξη ότι έχουν κάνει καλή δουλειά και να συνεχίσουν.

Πηγή άρθρου: https://cerebrux.net/

Leave a Comment