Talveuni GNU Linuxis: täielik ja praktiline juhend

Viimane uuendus: 14 jaanuar 2026
  • GNU/Linuxis salvestab talveunerežiim kogu RAM-i oleku vahetamiseks ja arvuti väljalülitamiseks, peatamine aga hoiab mälu RAM-is väikese energiatarbega.
  • Talveunerežiimi usaldusväärseks toimimiseks on vaja kerneli tuge ja piisavalt swap-ruumi, kas swap-partitsiooni või hästi konfigureeritud swap-faili.
  • Erinevad tööriistad (systemd, pm-utils, uswsusp ja PolicyKit) võimaldavad teil olenevalt levitamisest ja kasutusest talveunerežiimi ja peatamise lubada, juhtida või keelata.
  • Seansi taastamisega peatamise, talveunerežiimi või taaskäivitamise vahel valimine sõltub tasakaalust, mida otsite energiasäästu, tööle naasmise kiiruse ja süsteemi stabiilsuse vahel.

Talveuni GNU/Linuxis

GNU/Linuxis on talveunerežiim üks neist funktsioonidest, millest kõik on kuulnud, kuid mida ei mõisteta alati hästi või mis pole õigesti konfigureeritud. Paljud kasutajad pöörduvad siia, kui neil on probleeme Windowsi või sülearvutitega, mis ootamatult välja lülituvad, ning nad tahavad täpselt teada, mida iga energiarežiimi teeb ja kuidas seda oma Linuxi distributsioonis juhtida.

Uusimates kerneli versioonides ja suuremates distributsioonides on asjad märkimisväärselt paranenud, kuid olulised nüansid säilivad talveunerežiimi, peatamise ja dokumendi taasavamisega sulgemise vahel , samuti tehnilised üksikasjad, näiteks swap-kasutus (partitsioon või fail), mida tasub mõista. Vaatleme seda kõike rahulikult, kuid selgelt ja praktiliselt.

Talveuni, peatamine ja taaskäivitamine seansi taastamisega: kuidas need erinevad

Enne seadetes millegi puudutamist on oluline mõista, mida iga energiasäästurežiim tegelikult teeb , sest mõisted aetakse sageli segi ja siis tulevad šokid kadunud andmete või tühjade akudega.

Kui me räägime operatsioonisüsteemide talveunest, peame silmas protsessi, mis külmutab kogu süsteemi oleku : avatud programmid, dokumendid, teenused, töölaua seaded, puhvrid jne. Kogu see RAM-i sisu salvestatakse püsivale andmekandjale (tavaliselt kettavahetuskettale) ja masin lülitatakse täielikult välja.

See tähendab, et talveuni ei ole sama mis lihtsalt failide avatuks jätmine ja arvuti väljalülitamine ega ka mitte sama mis peatamine. See on aeglasem kui RAM-i abil peatamine, kuid säästab oluliselt rohkem energiat, kuna arvuti on täielikult välja lülitatud ja elektrit ei tarbita.

Teisest küljest pakuvad mõned süsteemid midagi sarnast "taaskäivitusega dokumentide taasavamisega", kus süsteem sulgub tavapäraselt, kuid taaskäivitamisel käivitatakse avatud rakendused automaatselt uuesti . GNU/Linuxis jäljendavad paljud distributsioonid seda töölauakeskkonna käitumist, kuid see ei ole talveuni: see on ikkagi külmkäivitus, kus kõik teenused käivitatakse nullist.

Talveunerežiimi eelis taaskäivitamise ees rakenduse taastamisega on see, et kernel ja kasutajaruum ei taaskäivitu nullist ; selle asemel taastatakse eelmise oleku täielik pilt. Seega, kui kõik töötab õigesti, saate oma tööd jätkata täpselt sealt, kus pooleli jäite, ilma dokumente uuesti avamata või aknaid ümber konfigureerimata.

Toiterežiimid GNU Linuxis

Mis on Linuxis peatamine ja miks seda tasub kasutada?

Unerežiimis genereerib operatsioonisüsteem reaalajas pildi praegusest olekust (teie programmid, dokumendid, töölaud), kuid kettale kirjutamise asemel jätab see selle muutmällu (RAM), mis on muutumatu.

Kui süsteem peatatakse, lülitab kernel välja praktiliselt kõik riistvaraseadmed: ketta, ekraani, suurema osa kiibistikust... Ainsad komponendid, mis jäävad toidetuks, on RAM ja minimaalne osa emaplaadist , mis suudab "ärkama" hakata, kui vajutate klahvi, liigutate hiirt või avate sülearvuti kaane.

See režiim on suurepärane, kui soovite peaaegu koheselt töölauale naasta ja te ei ole liiga mures energiatarbimise pärast, kui arvuti on jõudeolekus. Kaasaegne sülearvuti võib akutoitel olla unerežiimis üks kuni kolm päeva, kuid selle aja jooksul tarbib see RAM-i töös hoidmiseks energiat.

Tavaline unerežiim on eriti soovitatav, kui teil on rohkem kui 2 GB muutmälu ja piiratud kettaruum (näiteks väikestel SSD-del) või kui kasutate arvutit varsti uuesti. See on tüüpiline, kui sulgete kaane mõneks minutiks tundide vahel või peatute lõunaks.

Hübriidvedrustus: RAM-i ja ketta segu

On olemas ka kolmas, vähemtuntud režiim: hübriidne peatamine . Sellisel juhul teostab süsteem kogu talveunerežiimi (kirjutab mälu sisu kettale, tavaliselt vahetusruumi jaoks), kuid täieliku väljalülitamise asemel läheb see RAM-is peatatud olekusse.

  Tasuta operatsioonisüsteemid serveritele

See loob segase stsenaariumi: kui aku kestab, äratate süsteemi sama kiiresti kui tavalise unerežiimi korral ; aga kui aku saab otsa, võimaldab salvestatud kettakujutis teil seansi taastada nii, nagu see oleks talveunerežiimis olnud.

Selle režiimi miinuseks on see, et sellesse sisenemine ja sellest väljumine võtab kauem aega kui puhtast peatatud režiimist, kuna see kirjutab kettale ja hoiab ka RAM-i toite all. Sel põhjusel kasutatakse seda sageli serverites või tööjaamades, mis vajavad oleku kadumise vastu täiendavat turvalisust.

Kuidas talveunerežiim GNU/Linuxis sisemiselt töötab

GNU/Linuxi süsteemi talveunerežiimile viimisel käivitab kernel rea täpselt määratletud samme masina täieliku oleku jäädvustamiseks ja taastamiseks . See ei ole lihtsalt "RAM-i faili salvestamine" ja ongi kõik.

Tüüpiline kettale peatamise protsess järgib seda üldist järjestust:

  • Kasutajaprotsessid on peatatud selle oleku külmutamiseks ja mälu muutmise jätkamise takistamiseks jäädvustamise ajal.
  • Riistvaraseadmed külmutatakse või peatatakse, et vältida kontrollerite ja DMA-ga seotud mälumuudatusi.
  • Talveune pilt luuakse: Kogu RAM-i sisu kopeeritakse katkestuste keelamisega.
  • Riistvaraseadmed taasaktiveeritakse kontrollitud viisil.
  • Pilt on kirjutatud vahetusruum, mida seejärel peetakse peatamispiirkonnaks (swsusp või linux-suspend).
  • Lõpuks peatatakse kõigi seadmete töö ja arvuti lülitatakse täielikult välja.

Taaskäivitamisel kontrollib käivitussüsteem, kas on olemas kehtiv talveunerežiimi kujutis :

  • Kui üks on olemas, See ei käivitu normaalselt.aga loeb pilti vahetusalalt.
  • Seadmed külmutatakse uuesti, et vältida häireid.
  • Pilt kopeeritakse vahetusmälust muutmälusse ja protsesside ja seadmete taasaktiveerimine nagu nad enne talveunne jäämist olid.

Üks kurioosne detail, mida reaalsetes testides täheldati, on see, et pärast talveunerežiimi ilmumist kuvatakse endine "linux-swap partitsioon" tööriistades nagu GParted või parted sildiga linux-suspend või swsusp . See partitsioonitüübi muutus on üks vihjeid, mida süsteem kasutab talveunest taastamiseks või puhta alglaadimise tegemiseks.

Talveune ajal vahetamise olulisus

Kogu see mehhanism hõlmab ühte põhinõuet: Linuxis talveunerežiimi minekuks on vaja piisavalt swap-ruumi nii suuruse kui ka konfiguratsiooni poolest. Ilma swap-ruumita pole süsteemil kuhugi RAM-i kujutist salvestada.

Vahetus võib olla:

  • A. spetsiaalne partitsioon süsteemitüübiga linux-swap.
  • Un vahetusfail asub tavalises failisüsteemis (näiteks kaustas /swapfile).

Praktilistel kaalutlustel käsitleb kernel mõlemat läbipaistvalt vahetusruumina. Siiski, a kasutamiseks swapfile talveunerežiimi sihtkohana Sa pead kernelile alglaadimishalduri kaudu ütlema parameetrid, näiteks resume= (seade) ja resume_offset= (failisisene nihe). Kui seda ei tehta, käivitub süsteem nullist ja ei taasta kujutist isegi siis, kui see kettale kirjutatakse.

Mis puutub suurusse, siis klassikaline soovitus usaldusväärse talveunerežiimi tagamiseks on, et vahetusmälu maht peaks olema vähemalt sama suur kui füüsiline RAM . On tõsi, et kui süsteem on suure koormuse all, saab mõnikord talveunerežiimi minna veidi väiksema vahetusmäluga, kuid see pole kindel asi ja seda ei tohiks üldistada. Süsteemides, millel on 32 GB või 64 GB RAM-i või rohkem, soovitavad paljud administraatorid aja- ja ruumipiirangute tõttu talveunerežiimist täielikult hoiduda.

Samuti tasub meeles pidada, et sellised mehhanismid nagu zram või zswap loovad RAM-i enda sees tihendatud vahetusala. Need on suurepärased piiratud mäluga süsteemide jõudluse parandamiseks, kuid ei sobi talveunerežiimiks: kuna need on volatiilsed, kaoks kujutis voolukatkestuse korral.

Talveuni vahetuspartitsioonil vs. swapfile

Aastaid peeti spetsiaalse swap-partitsiooni omamist peaaegu kohustuslikuks , kui sooviti tüsistusteta talveunne minna. Kerneli ja selliste tööriistade nagu initramfs käitumine põhines suuresti sellel klassikalisel mudelil.

Siiski on paljud tänapäevased distributsioonid, näiteks Ubuntu uuemad versioonid, vaikimisi üle läinud swapfile'i kasutamisele partitsiooni asemel . See ei tähenda, et kaotate talveunerežiimi võimaluse; see lihtsalt muudab süsteemi oleku salvestamise kohta.

  Kuidas optimeerida Windows 11 mängimiseks ja parandada jõudlust

Mõlemal juhul on aluseks olev protsess sama: RAM-ist pärit pilt läheb püsivasse vahetusruumiErinevus seisneb selles, et swapfile'i puhul peab süsteem teadma ketta täpset plokki, kust fail algab (sellest ka parameeter). resume_offset), et pilti saaks käivitamise ajal varakult lugeda.

Praktilised katsed Debiani ja Debiani-põhiste masinate peal on näidanud, et vahetuspartitsiooni, kuhu talveunepildi salvestati, vormindamine või kustutamine annab tulemuseks puhta alglaadimise, justkui poleks talveunerežiimi kunagi toimunudki. See kinnitab, et vahetuspartitsioon on tõepoolest salvestatud kettale, mitte mujale.

Kerneli nõuded ja tugi distributsioonides

Lisaks saaleruumile peab Linuxi kernelil olema lubatud talveunerežiimi tugi . Kui kompileerid oma kerneli ja keelad selle valiku, siis olenemata sellest, kui palju konfiguratsioone sa distributsioonis muudad, ei saa sa talveunerežiimi lülituda.

Praktikas kasutab enamik distributsioone projekti enda pakendatud kerneli ja sellistel juhtudel on talveunerežiim koos ülejäänud tavapäraste energiatarbimise haldamise funktsioonide ja draiveritega tavaliselt vaikimisi lubatud .

Siiski ei kuvata kõigi distributsioonide graafilistes menüüdes alati nuppu "Talveuni". Mõned, näiteks Ubuntu teatud versioonides, peidavad selle valiku töölaual vaikimisi, isegi kui kernel ja talveunerežiimi infrastruktuur on täielikult töökorras.

Kuidas lubada Ubuntu talveunerežiimi PolicyKiti abil

Ubuntu süsteemides, kus talveunerežiimi valikut sulgemismenüüs ei kuvata, saab selle suhteliselt lihtsalt uuesti lubada, muutes mõningaid PolicyKiti reegleid. Idee on anda tavakasutajatele luba käivitada upoweri ja logind talveunerežiimi toiminguid.

Tüüpiline protseduur hõlmab näiteks konfiguratsioonifaili loomist com.ubuntu.enable-hibernate.pklasarnase sisuga (kohandatud teie tööriistade süntaksiga):


Identiteet=unix-kasutaja:*
Action=org.freedesktop.upower.hibernate
TulemusAktiivne=jah


Identiteet=unix-kasutaja:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
TulemusAktiivne=jah

Kui fail on loodud, tuleb see sinna paigutada /etc/polkit-1/localauthority/50-local.d/Selleks saate avada failihalduri administraatorina (näiteks gksudo nautilus keskkondades, mis seda endiselt toetavad) ja kleepige see sellesse kataloogi.

Pärast süsteemi taaskäivitamist kuvatakse Ubuntu töölaual talveunerežiimi valik koos sulgemise, taaskäivitamise ja peatamise valikutega. Loomulikult on endiselt vaja piisavalt suurt saaleruumi ja talveunerežiimi toetavat kerneli.

GNU Linuxi talveunerežiimi konfiguratsioon

Terminali talveunerežiimi ja peatamise käsud

Kui eelistate terminali või kasutate kergeid keskkondi (Fluxbox, IceWM, Openbox, JWM jne), kus pole eelkonfigureeritud toitenuppe, saate talveune- ja unerežiimi otse käskudega juhtida.

Kasutades pm-utilsi

Paljudes klassikalistes Debiani/Ubuntu distributsioonides pakub pakett pm-utils mitmeid lihtsaid käske:

  • pm-peatamineSee peatab masina töö muutmälu (RAM) piires. Enamik seadmeid lülitatakse välja ja olek säilitatakse mälus. Energiatarve väheneb märkimisväärselt, kuid energiat kasutatakse endiselt.
  • pm-talveuni: viib süsteemi talveunerežiimi, salvestades RAM-i kettale (vahetusmälu) ja lülitades arvuti täielikult välja.
  • pm-suspend-hybridSee viib ketta talveunerežiimi ja sulgemise asemel lülitab RAM-i unerežiimi, saavutades seeläbi "hübriidune".

Põhikasutus oleks järgmine:

sudo pm-suspend
sudo pm-talvituma
sudo pm-suspend-hybrid

Arch Linuxi-põhistel süsteemidel ja teistel, mis seda oma repositooriumides hoiavad, saab neid käske samuti kasutada, kuigi paljudes tänapäevastes distributsioonides on pm-utils hüljatud ja asendatud systemd-ga.

Systemd (systemctl) kasutamine

Systemd-d kasutavates distributsioonides (OpenSUSE, paljud Archi ja selle derivaatide versioonid, kaasaegne Debian jne) on soovitatav kasutada käsku systemctl :

  • systemctl peatamine: peatab RAM-i töö.
  • systemctl talveuni: läheb kettale talveunne.
  • systemctl hübriid-uni: aktiveerib hübriidvedrustuse.

Näiteks OpenSUSE'is või mis tahes tüüpilises systemd-süsteemis saate otse helistada:

sudo systemctl talvituma

Paljudes distributsioonides, kui eelistate säilitada ühilduvust vanemate tööriistadega, on pm-hibernate endiselt saadaval ning olenevalt konfiguratsioonist lihtsalt delegeerib või eksisteerib koos systemd-ga.

Kasutades uswsusp: s2ram, s2disk ja s2both

Teine ja tänapäeval vähem levinud tööriistade perekond on uswsusp , mis pakub käske s2ram, s2disk ja s2both. See oli Debianis ja Ubuntus saadaval kuni teatud versioonideni (Debian 10; Ubuntu 20.04 ja uuemad versioonid on selle aegunud).

  • s2ram: peatab süsteemi töö muutmälu abil (S3-režiim). See on samaväärne käsuga pm-suspend või systemctl suspend.
  • s2ketas: salvestab kogu oleku kettale ja lülitab masina välja (klassikaline talveuni).
  • s2both: ühendab mõlemad asjad: kirjutab pildi kettale ja seejärel peatab töö RAM-is, saavutades hübriidkäitumise.
  Eemaldage Windowsis hoiatus „vähese kettaruumi”: keelake see õigesti ja vältige hirmutamist

Käsklused oleksid järgmised:

sudo s2ram
sudo s2disk
sudo s2both

Need utiliidid nõuavad initramfsi õiget konfigureerimist, et käivitamisel kutsutaks välja jätkamismehhanism ja taastataks kuvandi olemasolu korral.

Kuidas GNU/Linuxi süsteemides une- ja talveunerežiimi keelata

Mõnes keskkonnas, näiteks klassiruumides, jagatud arvutites või avalikes tööjaamades, võivad une- ja talveunerežiim põhjustada ootamatuid seiskamisi, võrguprobleeme või hangumisi, mida on kasutajatele raske seletada . Sellistel juhtudel on mõnikord kõige praktilisem lahendus need funktsioonid täielikult keelata.

Keela systemd abil (sihtmask)

Kui teie süsteem kasutab systemd-d, maskeerige lihtsalt une- ja talveunerežiimiga seotud sihtmärgid , et neid ei saaks aktiveerida ei graafiliste menüüde ega terminali kaudu:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

See suunab need sihtmärgid ümber kausta /dev/null , saates need sümboolselt "prügikasti". Pärast taaskäivitamist ebaõnnestuvad kõik katsed peatada või talveunerežiimile lülitada.

Kui soovite hiljem normaalse käitumise taastada, peate kasutama ainult järgmist:

sudo systemctl paljasta sleep.target suspend.target hibernate.target hybrid-sleep.target

Keela talveune- ja peatamisnupud PolicyKiti abil

Teine, parem variant on kasutada PolicyKit peatamis-/talveunerežiimi õiguste eemaldamiseks kõigile kasutajatele. Näiteks saate faile luua /etc/polkit-1/localauthority/90-mandatory.d/ kui:

/etc/polkit-1/localauthority/90-mandatory.d/disable-suspend.pkla


Identiteet=unix-kasutaja:*
Action=org.freedesktop.upower.suspend
ResultActive = ei
TulemusInactive=no
TulemusMistahes=ei


Identiteet=unix-kasutaja:*
Action=org.freedesktop.login1.suspend
ResultActive = ei


Identiteet=unix-kasutaja:*
Action=org.freedesktop.login1.suspend-multiple-sessions
ResultActive = ei

Ja talveune jaoks :

/etc/polkit-1/localauthority/90-mandatory.d/disable-hibernate.pkla


Identiteet=unix-kasutaja:*
Action=org.freedesktop.upower.hibernate
ResultActive = ei
TulemusInactive=no
TulemusMistahes=ei


Identiteet=unix-kasutaja:*
Action=org.freedesktop.login1.hibernate
ResultActive = ei


Identiteet=unix-kasutaja:*
Action=org.freedesktop.login1.hibernate-multiple-sessions
ResultActive = ei

Pärast taaskäivitamist kaovad peatamis- ja talveunerežiimi nupud graafilistest menüüdest, takistades kasutajal neid kogemata aktiveerida.

Klaviatuuri otseteede ja otsekäskude blokeerimine

Isegi kui nupud peita, võivad mõnel lauaarvutil ja klaviatuuril olla spetsiaalsed une-/talveunerežiimi nupud , mis endiselt toimida. Vanemates keskkondades, kus on klassikaline GNOME, saab seda reguleerida selliste käskudega nagu:

gconftool -s /apps/gnome-power-manager/buttons/hibernate -t ​​​​string interaktiivne

Lisaks saate luua skripte /etc/pm/sleep.d/Kui /etc/pm/sleep.d/000cancel-hibernate-suspendmis lihtsalt Tühistage kõik katsed peatada või talveunerežiimile lülituda süsteemi juhtimise tagastamine. Tüüpiline struktuur oleks:

# / Bin / sh
# hoiab ära talveune ja peatamise
. «$PM_FUNKTSIOONID»
juhtum «${1}» sees
peatada|talveunne panna)
pärssida
;;
jätkama|sulatama)
väljumine 0
;;
et C

Ära unusta anda sellele täitmisõigusi:

chmod 0755 /etc/pm/sleep.d/000cancel-hibernate-suspend

Millal on sobiv talveunne jääda ja millal mitte?

Pärast kogu selle teooria esitamist jääb alles praktiline osa: millal on GNU/Linuxis talveunne jäämine tegelikult mõttekas? Ühest vastust pole, kuid on olemas mõned mõistlikud juhised.

Kui teie peamine prioriteet on energia säästmine (näiteks sülearvuti puhul, mida te mitmeks tunniks kasutamata jätate) ja teil on mälukujutise jaoks piisavalt kettaruumi, on talveunirežiim väga ahvatlev valik; saate lugeda, kuidas valida arvuti väljalülitamise, peatamise või talveunerežiimi vahel . Talveunerežiimis on energiatarve null ja jätkamisel käivitub see palju kiiremini kui külmkäivituse järel.

Kui soovid töölauale naastes puhast kiirust ja jätad arvuti jõudeolekusse vaid lühikeseks ajaks , võib muutmälule (RAM) peatamine olla mugavam. Masin tarbib ikkagi akutoidet, kuid jätkamine toimub peaaegu kohe.

Suure muutmäluga arvutites või süsteemides, kus stabiilsus pärast taaskäivitamist pole garanteeritud (teatud ebatavaline riistvara, eksootilised draiverid jne), on sageli mõttekas talveunest loobuda ning valida hea unerežiim ja puhas taaskäivitus koos dokumentide taastamisega vajadusel.

Lõppkokkuvõttes võimaldab arusaamine sellest, kuidas nad swap'ile toetuvad, mida kernel kapoti all teeb ja kuidas neid selliste tööriistadega nagu systemd, pm-utils, uswsusp või PolicyKit juhtida, käsitleda talveunerežiimi ja peatatud režiimi kui enda kasuks suunatud tööriistu , mitte kui salapäraseid funktsioone, mis mõnikord töötavad ja mõnikord jätavad sülearvuti ilma igasuguse nähtava selgituseta "kinni".

lülitage arvuti eluiga peatamise või talveunerežiimi välja
Seotud artikkel:
Arvuti väljalülitamine, peatamine või talveunerežiim: mis on parim viis selle eluea pikendamiseks?