Macbook i Linux, a przegrzewanie się Macbooka

MacBooki słyną z elegancji, solidnej konstrukcji i wydajności… przynajmniej pod macOS. Jednak gdy wchodzimy na ścieżkę Linuksa, czar nieco pryska – zwłaszcza gdy laptop zaczyna pełnić funkcję podręcznego grzejnika. Przegrzewanie się MacBooka po instalacji Linuksa to temat znany w społeczności – i niestety nadal aktualny.

W dzisiejszej notce przygotowałem paczkę .deb dla Ubuntu, Linux Mint i Debiana, która zabezpiecza pakiet mbpfan przed przypadkowym usunięciem. mbpfan odpowiada za kontrolę wentylatorów w sprzęcie Apple, co – nie ma co ukrywać – potrafi zadecydować o tym, czy laptop będzie działał stabilnie, czy zamieni się w kuchenkę polową.

Instalacja mbpfan

Najpierw instalujemy sam pakiet mbpfan, który umożliwia systemowi Linux kontrolowanie wentylatorów w MacBooku:

sudo apt install mbpfan

Zabezpieczenie pakietu

Następnie pobieramy przygotowaną przeze mnie paczkę mbpfan-protect, która uniemożliwia systemowi jego usunięcie. Gdy paczka zostanie pobrana, instalujemy ją:

sudo dpkg -i mbpfan-protect-1.1.deb

Od tej pory system nie będzie mógł usunąć mbpfan – a to ważne, bo sam miałem sytuację, w której jedna z aktualizacji odinstalowała ten pakiet, co skutkowało przegrzaniem MacBooka w ciągu 5 minut od uruchomienia.

Test działania

Jeśli chcesz upewnić się, że pakiet faktycznie jest chroniony przed usunięciem, wykonaj polecenie:

sudo apt purge mbpfan

Powinieneś zobaczyć komunikat, że operacja nie może zostać wykonana – co dokładnie o to nam chodziło.

ferexio@ferexio-MacBookAir:~$ sudo apt purge mbpfan
[sudo] hasło użytkownika ferexio:
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności... Gotowe
Odczyt informacji o stanie... Gotowe
Nie udało się zainstalować niektórych pakietów. Może to oznaczać,
że zażądano niemożliwej sytuacji lub użyto dystrybucji niestabilnej,
w której niektóre pakiety nie zostały jeszcze utworzone lub przeniesione
z katalogu Incoming ("Przychodzące").
Następujące informacje mogą pomóc rozwiązać sytuację:

Następujące pakiety mają niespełnione zależności:
mbpfan-protect : Wymaga: mbpfan ale nie zostanie zainstalowany
E: Błąd, pkgProblemResolver::Resolve zwrócił błąd, może to być spowodowane zatrzymanymi pakietami.
ferexio@ferexio-MacBookAir:~$ sudo apt purge mbpfan*
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności... Gotowe
Odczyt informacji o stanie... Gotowe
Uwaga, wybieranie "mbpfan" dla wyrażenia typu glob "mbpfan*"
Uwaga, wybieranie "mbpfan-protect" dla wyrażenia typu glob "mbpfan*"
Następujące pakiety zostaną USUNIĘTE:
mbpfan* mbpfan-protect*
UWAGA: Zostaną usunięte następujące istotne pakiety.
NIE należy kontynuować, jeśli nie jest się pewnym tego co się robi!
mbpfan-protect mbpfan (z powodu mbpfan-protect)
0 aktualizowanych, 0 nowo instalowanych, 2 usuwanych i 12 nieaktualizowanych.
Po tej operacji zostanie zwolnione 80,9 kB miejsca na dysku.
E: Usuwanie pakietów niezbędnych do działania systemu jest niedozwolone. Może to uszkodzić system.

I to wszystko 😉

Raczej nie trzeba opisywać jak usunąć pakiet mbpfan, bo jednak nikt by nie chciał by Macbook zamienił się w kuchenkę polową 🙂

// Aktualizacja 20.10.2025 //

ChatGPT wygenerował mi dwa pliki .sh, które sprawiły, że Macbook nie wchodzi na wysokie obroty, nie grzeje się, a działa bardzo dobrze. Poniżej oba skrypty:


#!/bin/bash

# Ustawienia wstępne
set -e

# Aktualizacja systemu
echo "Aktualizowanie systemu..."
sudo apt update && sudo apt upgrade -y

# Instalacja niezbędnych narzędzi
echo "Instalowanie narzędzi monitorujących i sterujących..."
sudo apt install -y lm-sensors psensor thermald cpufrequtils macfanctld

# Wykrywanie czujników temperatury
echo "Wykrywanie czujników temperatury..."
sudo sensors-detect --auto

# Instalacja i konfiguracja macfanctld
echo "Instalowanie i konfiguracja macfanctld..."
sudo systemctl enable macfanctld
sudo systemctl start macfanctld
echo -e "fan_min:2000\nfan_max:6200\n" | sudo tee /etc/macfanctl.conf

# Instalacja i konfiguracja thermald
echo "Instalowanie i konfiguracja thermald..."
sudo systemctl enable thermald
sudo systemctl start thermald

# Ustawienie profilu energetycznego CPU na 'powersave'
echo "Ustawianie profilu energetycznego CPU na 'powersave'..."
sudo cpufreq-set -g powersave

# Instalacja psensor i uruchomienie GUI
echo "Instalowanie psensor..."
psensor &

# Informacja końcowa
echo "Konfiguracja zakończona. Monitoruj temperatury za pomocą psensor."

#!/bin/bash

set -e
echo "Rozpoczynam konfigurację szybkiego suspend..."

# 1. Aktualizacja systemu
echo "Aktualizacja systemu..."
sudo apt update && sudo apt upgrade -y

# 2. Instalacja TLP (zarządzanie energią)
echo "Instalacja TLP..."
sudo apt install -y tlp tlp-rdw

echo "Włączanie TLP..."
sudo systemctl enable tlp
sudo systemctl start tlp

# 3. Sprawdzenie obsługiwanych trybów sleep
MEM_SLEEP=$(cat /sys/power/mem_sleep)
echo "Obecny tryb sleep: $MEM_SLEEP"

# 4. Ustawienie trybu 'deep' jeśli dostępny
if [[ $MEM_SLEEP == *"deep"* ]]; then
    echo "Ustawianie trybu sleep na 'deep'..."
    echo deep | sudo tee /sys/power/mem_sleep
else
    echo "'deep' sleep niedostępny, pozostaje domyślny"
fi

# 5. Konfiguracja i915 dla szybszego resume (Intel GPU)
echo "Konfiguracja i915 dla szybszego wake..."
GRUB_FILE="/etc/default/grub"
sudo cp $GRUB_FILE $GRUB_FILE.bak

sudo sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="/GRUB_CMDLINE_LINUX_DEFAULT="i915.enable_rc6=1 i915.enable_fbc=1 i915.fastboot=1 /' $GRUB_FILE
sudo update-grub

# 6. Aktywacja hybrydowego suspend w TLP
echo "Konfiguracja hybrydowego suspend..."
sudo sed -i 's/#SUSPEND_MODULES=""/SUSPEND_MODULES="i915"/' /etc/tlp.conf
sudo tlp start

# 7. Weryfikacja działania systemd suspend
echo "Test systemctl suspend (możesz nacisnąć Ctrl+C, jeśli nie chcesz wchodzić w sleep teraz)..."
echo "Użyj 'systemctl suspend' aby sprawdzić działanie"

echo "Konfiguracja zakończona. Restart systemu zalecany: sudo reboot"
0 0 głosy
Ocena artykułu
Subskrybuj
Powiadom o
guest

2 Komentarze
Najstarsze
Najnowsze Najwięcej głosów
Opinie w linii
Zobacz wszystkie komentarze
Dominik
3 miesiące temu

Zastanawia mnie jaki jest use case pod instalację Linuxa na MacBooku? Osobiście w życiu nie kupiłbym MacBooka gdyby nie właśnie MacOS i jego mechanizm uzależniania użytkownika od sprzętów jednego producenta (tu miało być „ekosystem”).

Zresztą pod linucha jest masa tańszych sprzętów, często z lepszymi parametrami. Chyba jedyny case jaki widzę na chwilę obecną to są jakieś starsze modele bez wsparcia do najnowszego MacOS 🤔

Jestem autentycznie ciekaw odpowiedzi 😀

2
0
Chętnie poznam Twoje przemyślenia, skomentuj.x